PentesterLab新手教程:文件包含

  Web for pentester 是国外安全研究者开发的的一款渗透测试平台。

  个人感觉还是不错的,但是国内基本上搜不到教程,官网上的教程确实有点价格不菲,所以在此打算写一个pentesterLab的全套教程,PentesterLab上面的web漏洞感觉比较典型而且比较基础非常适合新手,因为本教程面向新手,所以有些地方别嫌我啰嗦,嘿嘿。

  前提是allow_url_fopen是打开状态。如远程服务器上新建一个xxx.txt文件,内容如下:

  远程包含如此时在服务器根目录下就会生成shell.php文件,内容为一句话木马

  apache日志分为access.log与error.log,当我们请求一个url地址时,便会记录在access.log中,但如果访问一个不存在的页面,便会将这个页面写入access.log中。如访问URL:则会将一句话写入到access.log中,但是一般来说,写入到access.log文件中的一句话是被编码的,所以需要抓包绕过,而且利用此漏洞需要知道access.log的地址。

  注:php版本小于5.2.8可以成功,linux需要文件名长于4096,windows需要长于256,超出部分会被系统丢弃。

  另外:向url的配置参数里面加上一固态特殊符号(例如引号)。会引起报错如下

  $file = $_GET[page]..php;给包含的文件加上.php后缀名,是为了防止本地包含漏洞,限制只包含php后缀名的文件。

  preg_replace()函数,正则表达式匹配,并把它替换成相应的字符串。

相关阅读