Burte Force(暴力破解)
基于表单的暴力破解
随意填写一个账号密码,并打开BP进行抓包
start attack进行爆破
爆破结束后,我们可以根据返回数据长度来判断正确的账号密码,返回长度不同于其他数据包的,就是正确的账号密码,此处账号:admin 密码:123456
登录
Cross-Site Scripting(xss)
xss盲打
构造payload
<script>alert(6)</script>
根据提示,后台地址为http://ip/pikachu/vul/xss/xssblind/admin_login.php
CSRF
CSRF(get)
查看提示,提示:这里一共有这么些用户vince/allen/kobe/grady/kevin/lucy/lili,密码全部是123456
登录
点击之后打开了修改个人信息页面,我们将手机号修改为16666666666,开启burp抓包并点击submit按钮
使用burp直接生成CSRF Poc代码,右键请求包 → Engagement tools → Generate CSRF PoC
点击 Test in browser,复制弹出的URL链接,在浏览器中打开
关闭burp拦截,重新访问漏洞页面,由于我们刚才drop掉了请求包,所以现在的手机号与刚才是相同的没有被修改
点击burp生成的CSRF Poc页面中的submit按钮
点击之后页面跳转至个人信息页面,并且手机号已经发生了改变,正常情况下这个CSRF Poc的页面是攻击者生成的,然后发送给受害者进行点击,然后攻击者就可以使用受害者的合法的身份去访问网站(比如修改密码、修改个人信息等)。
Sql Inject(SQL注入)
数字型注入
bp抓包,发送到重发器
输入and 1=1时页面没有报错
输入and 1=2时页面报错
判断为数字型注入
使用order by来判断可以显示的列
为3时错误,所以有两列
其原理是,order by会对列继续排序,当我们输入的列数超过实际拥有的列数,就会提示该列不存在
接下来判断每列显示的位置
查询数据库和数据库版本
id=2 union select database(),version()
查询所有表
id=2 union select group_concat(table_name),2 from information_schema.tables where table_schema='pikachu'
查询敏感表users表中所有列
id=2 union select group_concat(column_name),2 from information_schema.columns where table_schema='pikachu' and table_name='users'
id=2 union select group_concat(username),group_concat(password) from users
字符型注入
闭合符为单引号
尝试构造万能密码查询所有数据
' or '1'='1
查所有表
1' union select group_concat(table_name),2 from information_schema.tables where table_schema=database() --+&submit=查询
RCE
exec “ping”
我们可以看到让我们输入127.0.0.1,执行ping命令
ping成功了
我们测试一下是不是有漏洞
通过管道拼接符 &&,这个拼接符是linux和Windows都可以用的
payload: 127.0.0.1 && whoami
whoami命令:在linux和Windows都支持,但是显示的内容不同,因此我们可以通过它来判断是否存在漏洞,以及操作系统是什么,Linux下会显示当前用户名,Windows会显示当前登录的域名以及用户名
发现执行成功
File Inclusion(文件包含漏洞)
File Inclusion(local)
文件包含漏洞,例如php,include(),开发过程中为了方便,把常用的函数写到了其它单独的文件中,然后引入这个文件,利用里面的函数,但是有的程序可能是会在你传参的时候选择某个文件,如果对这个参数不过滤,那么就会导致文件包含漏洞的产生
比如通过某种方式上传到服务器了一个一句话木马文件,那么我就可以通过该程序的文件包含漏洞去利用那个文件,只需要输入那个文件的路径,就可以调用了
我们看一下这一题
我们一开始发现题目让我们可以选择好几个球星,我们选择以后查看url发现了个规律
我们发现这里提交的时候有个参数是文件名,而且每个选择对应一个文件名,file1~file5
那么这里就有可能存在文件包含漏洞了,
发现file1~file5都是球星
搭建本靶场使用的是Windows系统,所以本关可以利用本地文件包含漏洞包含一些Windows系统中的敏感文件,比如hosts文件,直接将URL中的filename的值修改
..\..\..\..\..\..\windows\system32\drivers\etc\hosts&submi