Pikachu 通关笔记

Pikachu 靶机练习

  • 1、暴力破解
    • 1.1 基于表单的暴力破解
    • 1.2 验证码绕过(on server)
    • 1.3 验证码绕过(on client)
    • 1.4 验证码绕过(token 防爆破)
  • 2、Cross-Site Scripting-XSS
    • 2.1 反射型(get)
    • 2.2 反射型(post)
    • 2.3 存储型xss
    • 2.4 DOM型xss
    • 2.5 DOM型xss-x
    • 2.6 XSS之盲打
    • 2.7 XSS之过滤
    • 2.8 xss之htmlspecialchars
    • 2.9 xss之href输出
    • 2.10 xss之js输出
  • 3、CSRF
    • 3.1 CSRF(get)
    • 3.2 CSRF(post)
    • 3.3 CSRF(token)
  • 4、Sql Inject(SQL注入)
    • 4.1 数字型注入(post)
    • 4.2 字符型注入(get)
    • 4.3 搜索型注入
    • 4.4 xx型注入(这是????)
    • 4.5 insert/update注入
    • 4.6 delete注入
    • 4.7 http头注入
    • 4.8 基于boolian的盲注
    • 4.9 基于time的盲注
    • 4.10 宽字节注入
  • 5、RCE
    • 5.1 exec "ping"
    • 5.2 exec "eval"
  • 6、file include
    • 6.1 file include(local)
    • 6.2 file include(remote)
  • 7、unsafe filedownload(不安全的文件下载)
  • 8、unsafe upfileupload(文件上传)
    • 8.1 client check(客户端check)
    • 8.2 client check(Mime type)
    • 8.3 getimagesize
  • 9、Over Permission
    • 9.1 水平越权
    • 9.2 垂直越权
  • 10、目录遍历
  • 11、敏感信息泄漏
  • 12、PHP反序列化
  • 13、XXE
  • 14、URL重定向
  • 15、SSRF
    • 15.1 ssrf(curl)
    • 15.2 ssrf(file_get_content)

1、暴力破解

1.1 基于表单的暴力破解

Pikachu 通关笔记_第1张图片
抓包,加载字典。
Pikachu 通关笔记_第2张图片

1.2 验证码绕过(on server)

Pikachu 通关笔记_第3张图片Pikachu 通关笔记_第4张图片

1.3 验证码绕过(on client)

Pikachu 通关笔记_第5张图片Pikachu 通关笔记_第6张图片

1.4 验证码绕过(token 防爆破)

通过测试发现每个数据包的token在变化,尝试使用pitchfork进行爆破
具体设置如下:
选择pitchfork进行爆破,添加密码和token变量
Pikachu 通关笔记_第7张图片
因为token的变化需要修改线程数
Pikachu 通关笔记_第8张图片
在Grep - Extract 选项添加参数
Pikachu 通关笔记_第9张图片
Pikachu 通关笔记_第10张图片
在页面最低部找到always选项
Pikachu 通关笔记_第11张图片
回到payloads模块
正常添加第一个变量密码的字典
Pikachu 通关笔记_第12张图片
第二个变量选择递归搜索(Recursive grep)
Pikachu 通关笔记_第13张图片
Start Attack
Pikachu 通关笔记_第14张图片Pikachu 通关笔记_第15张图片

2、Cross-Site Scripting-XSS

2.1 反射型(get)

从文本框输入发现限制了字符长度。
Pikachu 通关笔记_第16张图片
直接从url地址栏插入成功
Pikachu 通关笔记_第17张图片

2.2 反射型(post)

登录以后有一个文本框。
Pikachu 通关笔记_第18张图片

2.3 存储型xss

直接在留言板x
Pikachu 通关笔记_第19张图片
Pikachu 通关笔记_第20张图片

2.4 DOM型xss

在文本框输入了以后发现,查看源代码发现该语句被加成了超链接
Pikachu 通关笔记_第21张图片
将这里闭合以后利用onclick
Pikachu 通关笔记_第22张图片Pikachu 通关笔记_第23张图片

2.5 DOM型xss-x

同4一样的套路闭合以后就行

2.6 XSS之盲打

见框就X
Pikachu 通关笔记_第24张图片
提交以后发现这里提示一段文字,应该是直接打到后台了,找一下后台登录进去看看
Pikachu 通关笔记_第25张图片
后台路径:http://192.168.20.100/pikachu/vul/xss/xssblind/admin.php
Pikachu 通关笔记_第26张图片

2.7 XSS之过滤

绕过有很多方法,可以尝试其他的,这里直接大写就可以 有些需要大小写混编
Pikachu 通关笔记_第27张图片

2.8 xss之htmlspecialchars

输入了常用的符号进行查看是否被过滤
Pikachu 通关笔记_第28张图片
这里还是用on事件就X进去了
Pikachu 通关笔记_第29张图片
Pikachu 通关笔记_第30张图片

2.9 xss之href输出

直接用js协议X
Pikachu 通关笔记_第31张图片
Pikachu 通关笔记_第32张图片Pikachu 通关笔记_第33张图片

2.10 xss之js输出

在文本框输入script探探路
Pikachu 通关笔记_第34张图片利用单引号和script标签进行闭合,构造XSS语句
Pikachu 通关笔记_第35张图片Pikachu 通关笔记_第36张图片

3、CSRF

3.1 CSRF(get)

利用提示的账号和密码进行登录。
Pikachu 通关笔记_第37张图片

直接抓包查看下数据,从抓包的数据了解到 登录时没有用token进行验证,直接修改。
Pikachu 通关笔记_第38张图片
Pikachu 通关笔记_第39张图片
将add地址修改为cn,email修改为[email protected]
Pikachu 通关笔记_第40张图片
修改好以后,新打开一个浏览器标签页,将完整url地址输入。
在这里插入图片描述Pikachu 通关笔记_第41张图片

3.2 CSRF(post)

登录任意账户
Pikachu 通关笔记_第42张图片
从burp的数据包可以知道,所有参数是在请求体里面提交,伪造url方法就不能使用了,只能构造一个虚假页面,诱导用户去点击,从而引发攻击
Pikachu 通关笔记_第43张图片
将该页面放置于www服务下,登录任意账户,再新建窗口访问该页面
Pikachu 通关笔记_第44张图片Pikachu 通关笔记_第45张图片

3.3 CSRF(token)

这里加入了token校验,那么就没办法再进行伪造了。

4、Sql Inject(SQL注入)

4.1 数字型注入(post)

直接抓包注
Pikachu 通关笔记_第46张图片
爆字段列数
Pikachu 通关笔记_第47张图片在这里插入图片描述
查看数据库名和数据库用户
在这里插入图片描述
爆该库下所有的表
在这里插入图片描述爆敏感表-users的字段
在这里插入图片描述获取username和password的数据
在这里插入图片描述对应账号和MD5加密的密码:
admin:e10adc3949ba59abbe56e057f20f883e(123456)
pikachu:670b14728ad9902aecba32e22fa4f6bd(000000)
test:e99a18c428cb38d5f260853678922e03(abc123)
Pikachu 通关笔记_第48张图片Pikachu 通关笔记_第49张图片Pikachu 通关笔记_第50张图片

4.2 字符型注入(get)

get直接注
Pikachu 通关笔记_第51张图片
跟字符型的一样,这里就直接爆数据了
Pikachu 通关笔记_第52张图片

4.3 搜索型注入

这个搜索型注入和字符型注入一样,唯一的区别就是有3列字段,直接爆数据了
Pikachu 通关笔记_第53张图片

4.4 xx型注入(这是????)

单双引号闭合都失败了,在后面尝试加了个括号就闭合成功了
Pikachu 通关笔记_第54张图片
直接就爆数据了!
Pikachu 通关笔记_第55张图片

4.5 insert/update注入

既然是插入和更新,那么应该是注册和更新的时候,在注册的时候抓包分析。
Pikachu 通关笔记_第56张图片
爆出所有的表名,发现不能全部显示
Pikachu 通关笔记_第57张图片
这里可以采用left,mid,right来进行分段显示,将得到的信息进行拼接

Pikachu 通关笔记_第58张图片
爆出字段名
Pikachu 通关笔记_第59张图片
爆出数据
Pikachu 通关笔记_第60张图片Pikachu 通关笔记_第61张图片
Pikachu 通关笔记_第62张图片Pikachu 通关笔记_第63张图片

4.6 delete注入

抓包查看下数据
Pikachu 通关笔记_第64张图片Pikachu 通关笔记_第65张图片
跟之前的一样使用updatexml进行注入
Pikachu 通关笔记_第66张图片Pikachu 通关笔记_第67张图片

4.7 http头注入

直接把user-agent给换成单引号就会出现报错,注入database查看数据库
Pikachu 通关笔记_第68张图片
跟之前的一样就不继续操作了
Pikachu 通关笔记_第69张图片

4.8 基于boolian的盲注

sqlmap跑的嗷嗷的
Pikachu 通关笔记_第70张图片

4.9 基于time的盲注

直接sqlmap梭哈
Pikachu 通关笔记_第71张图片

4.10 宽字节注入

抓包注
Pikachu 通关笔记_第72张图片

5、RCE

5.1 exec “ping”

Pikachu 通关笔记_第73张图片

5.2 exec “eval”

这个函数很危险,一般除了靶机能遇到,其他时候基本遇不到
Pikachu 通关笔记_第74张图片

6、file include

6.1 file include(local)

从这里看到读取了这个file1.php,在include里面创建一个phpinfo
Pikachu 通关笔记_第75张图片Pikachu 通关笔记_第76张图片

6.2 file include(remote)

在php.ini配置文件打开这个选项
Pikachu 通关笔记_第77张图片
在这里插入图片描述
随便点一个查看,看到url的include。
在这里插入图片描述Pikachu 通关笔记_第78张图片

7、unsafe filedownload(不安全的文件下载)

Pikachu 通关笔记_第79张图片
直接抓包查看下数据
Pikachu 通关笔记_第80张图片

修改这个filename的值,改为上级目录的phpinfo文件,然后通过repeater重发
Pikachu 通关笔记_第81张图片

将包释放,回到页面就发现弹出了下载页面,下载的就是这个phpinfo文件了。
Pikachu 通关笔记_第82张图片

8、unsafe upfileupload(文件上传)

8.1 client check(客户端check)

F12进入代码页面将onchange删除
在这里插入图片描述
Pikachu 通关笔记_第83张图片Pikachu 通关笔记_第84张图片

8.2 client check(Mime type)

抓包将Type 修改为图片类型
Pikachu 通关笔记_第85张图片
重发然后放包,回到页面发现上传成功
在这里插入图片描述

访问给出的地址进行查看是否上传成功
Pikachu 通关笔记_第86张图片

8.3 getimagesize

抓包上传图片,在图片内容里添加phpinfo。
Pikachu 通关笔记_第87张图片

9、Over Permission

9.1 水平越权

这里用Lucy这个账户登录,在url看到了username,直接修改后面的用户名,修改成lili

Pikachu 通关笔记_第88张图片
Pikachu 通关笔记_第89张图片

9.2 垂直越权

用admin账户登录,将admin账户登录的url复制下来打开另外一个浏览器用普通账户登录以后再进行访问。
Pikachu 通关笔记_第90张图片
普通账户登录
Pikachu 通关笔记_第91张图片
复制admin添加账户的地址以后,会自动变成admin的账户,然后直接添加账户。
Pikachu 通关笔记_第92张图片
现在登录admin查看
Pikachu 通关笔记_第93张图片

10、目录遍历

概述这个栏目是dir.php文件
Pikachu 通关笔记_第94张图片
这里直接从title进行修改值
Pikachu 通关笔记_第95张图片
Pikachu 通关笔记_第96张图片

11、敏感信息泄漏

F12进入代码页面,选中文本框就出现了账号和密码
Pikachu 通关笔记_第97张图片
利用找到的账号密码,成功登录
Pikachu 通关笔记_第98张图片

12、PHP反序列化

Pikachu 通关笔记_第99张图片payload:
O:1:"s":1:{s:4:"test";s:30:"";}
Pikachu 通关笔记_第100张图片Pikachu 通关笔记_第101张图片

13、XXE

直接x
Pikachu 通关笔记_第102张图片payload:

]> &Brother;

14、URL重定向

每个挨个点,在第四个会有一个url地址,修改这个值
Pikachu 通关笔记_第103张图片将这个值修改为百度
Pikachu 通关笔记_第104张图片

15、SSRF

15.1 ssrf(curl)

直接将原url里面的值修改为百度
Pikachu 通关笔记_第105张图片

15.2 ssrf(file_get_content)

直接将url修改为你要读取的文件
Pikachu 通关笔记_第106张图片
到这里整个Pikachu就结束了,因为比较长所以有时候是在家,有时候在公司,所以会有两个ip。

你可能感兴趣的:(靶场练习)