您现在的位置是:探索 >>正文
dvwa靶场sql注入
探索25368人已围观
简介DVWA的SQL Injection模块,Low难度下那个输入框,你填个 1 进去,页面返回的是用户ID为1的账号信息。看起来挺正常。但如果你填 1' OR '1'='1,所有用户数据全出来了。这不是 ...
DVWA的靶场SQL Injection模块,Low难度下那个输入框,靶场你填个 1 进去,靶场页面返回的靶场是用户ID为1的账号信息。看起来挺正常。靶场但如果你填 1' OR '1'='1,靶场所有用户数据全出来了。靶场这不是靶场漏洞演示,这是靶场直接把数据库的底裤扒了。
我头一回在DVWA上试这个的靶场时候,其实没太当回事。靶场毕竟Low难度,靶场源码里连个过滤都没有,靶场$id = $_GET['id']; 直接拼进SQL语句。靶场这种写法放到现在任何一本教材里都是靶场反面典型,但DVWA就是故意这么设计的——它要你亲眼看见拼接字符串是怎么把查询逻辑给扭曲掉的。
拿Low级别的源码来说,查询语句长这样:
$query = "SELECT first_name, last_name FROM users WHERE user_id = '$id';"; 你输入 1' UNION SELECT user, password FROM users #,整个语句就变成了先查user_id=1的用户,再联合查询users表里的账号密码。那个 # 把后面的引号和分号全注释掉了。页面上直接打印出admin的密码哈希。MD5的,32位。DVWA默认密码是password,哈希值5f4dcc3b5aa765d61d8327deb882cf99,你拿这个去cmd5或者hashcat跑一下,秒破。
Medium级别加了点东西。它用了 mysql_real_escape_string(),还把输入框改成了下拉菜单。下拉菜单这东西有意思,你以为只能选1到5,但Burp Suite抓包改一下POST请求里的id参数,照样能注入。不过因为转义函数的存在,单引号被干掉了,你得换个数型注入的思路。比如 1 OR 1=1 这种,不需要引号闭合,直接绕过。DVWA在这里其实暴露了一个常见误区:很多人以为用了转义函数就安全了,但数型注入根本不跟你玩引号。
High级别换了种玩法。它把输入和查询拆开了,用 LIMIT 1 限制只返回一条记录,而且页面变成了另开一个窗口提交。你注入的时候得用 UNION SELECT 配合注释符,但 LIMIT 1 卡在那儿,你得想办法让联合查询的结果排在前面。我试过 1' UNION SELECT user, password FROM users WHERE user_id=1 #,能出结果,但只能出一条。想拖库得用盲注或者时间注入,手工跑起来挺烦的,sqlmap一把梭倒是快。
Impossible级别就没什么好说的了。它用了PDO预处理,把参数和查询彻底分离,还加了CSRF token和随机化查询。你输入什么进去,数据库都当字符串处理,不解析成SQL语法。这玩意儿才是正经写法。
我在虚拟机里搭DVWA的时候,注意到一个细节:Low级别的SQL注入页面,如果你输入 1',它会直接报SQL语法错误,把数据库版本和路径都吐出来。这种错误回显在真实渗透里就是金矿。攻击者不用盲注,不用猜,直接看报错信息就能摸清表结构。DVWA把这个过程简化了,但现实中很多老系统就是这么挂的。
说到底,DVWA的SQL注入模块不是让你背payload的。它把四种防御级别摆在一起,Low是裸奔,Medium是穿了个纸盔甲,High是加了把锁但钥匙插在门上,Impossible才是真锁。你一个个试过去,能直观感受到过滤逻辑和参数化查询之间的差距。我见过有人把Low的payload直接往Medium上怼,结果报错,然后就说DVWA坏了。其实不是靶场坏了,是你没换思路。
另外提一嘴,DVWA默认的数据库用户是root,权限拉满。这意味着一旦注入成功,你不仅能读数据,还能写文件、执行系统命令。当然这得看MySQL的secure_file_priv配置。我在Ubuntu 20.04上搭的时候,默认是NULL,写文件被禁了。但读数据是绰绰有余的。
玩这个模块,别光顾着复制粘贴payload。打开源码看一眼,对比四个级别的过滤逻辑,比跑通十遍注入都有用。
Tags:
上一篇:网络诈骗案例事件视频
下一篇:北京锦绣大地批发市场官网
相关文章
云南反诈骗中心电话
探索2023年夏天,昆明市民李女士接到一个自称“京东金融客服”的电话,说她的白条利率超标,需要注销账户,否则影响征信。她按对方指引下载了某会议软件,开启屏幕共享,银行卡里的18万6千元在二十分钟内被分批转 ...
【探索】
阅读更多游戏诈骗案例
探索去年夏天,我表弟在游戏里被人骗走了一把价值三千多的“蝴蝶刀”。那款皮肤他攒了整整四个月零花钱,结果对方发来一个“交易确认链接”,点进去、登录、输入令牌——三秒钟,库存空了。等他反应过来,那个“买家”已 ...
【探索】
阅读更多网站应急预案方案
探索凌晨三点,运维群里弹出一条消息:主站返回502,负载均衡器健康检查全红。值班同事从床上爬起来,花了22分钟才把服务拉回来。事后复盘发现,问题本身不复杂——某个后端节点磁盘写满,导致健康检查失败,流量却 ...
【探索】
阅读更多