|
这几天一直在学习批处理,看了好多很好的文章,今天也把自己认为新学到的东西写出来和大家分享,嘎嘎 :> ( 别笑我写的不好) 2 j9 o; M+ A$ G& @3 V- b5 L) q
% @4 ?5 l I8 v
7 [% z2 c# g& J6 n- l3 v, `$ H% Y0 U7 c
1 H3 ?+ c4 M3 m, J# I1 i1 g: B一.echo命令在深入
$ D+ C e3 Q5 D0 G: H/ e9 N恐怕echo命令是大家最熟悉的命令之一了,常用格式:
& W( B$ @. ?- L4 N9 n, yecho on echo off : j; j. U7 Z5 Z% Q# q% i
echo 欲输出信息 * v7 [7 n- I) [- x
下面写几个很多人不是特别熟悉的使用方法 ! y: T5 H4 C0 ?( y
<1>首先进cmd: ( R7 b7 @9 b d
**************************************************************** % I+ k; ] V# C) |1 S9 ^
Microsoft Windows 2000 [Version 5.00.2195]
) j9 ~4 \' [ J* \(C) 版权所有 1985-2000 Microsoft Corp. ( t9 t% E, c, C% r( p0 ]- a- G* A
C:\>echo off回车 //之后c:\> 就会消失,直到你重新输入echo on ' u! Z9 y* X7 @% L
echo on 1 n4 ~1 X0 C3 f0 q, R) a- U
C:\> 1 j3 L; U* K5 @
**************************************************************** ! O$ P3 c' V$ s# s5 Q$ K2 M8 m
<2>如何用echo向一个*.txt文件中写如一个回车呢? 7 Z# q% G! L5 J# |. @1 x$ E
用echo 回车>a.txt 吗,哈,当然不是 ,这里就要用的命令:
9 [; I F' ~ \$ `' k; qecho.>a.txt,echo.是关键,相当输出空行,即一个回车
8 P" S- U8 O% m6 r3 z6 D[e.g] * F- q! d4 F3 l5 O/ Y/ p0 Y$ }( ?
echo.|time //把回车传递给time命令处理,在批处理中常用此法来显示时间并把信息写入一个指定的文件
2 a9 I6 G2 R T8 f7 ~echo.|del *.* //呵呵,搞破坏是很有用啊 ) o# Q& U8 F2 |
etc.
) B, X# n% s6 A" a<3>利用echo命令让喇叭唧唧的叫,哈哈 //可以用来吓唬人呦
1 o) G. J X; J" Q0 {3 |在cmd下输入:
* w! |& s8 v/ P0 q) Aecho空格,然后在按住ctrl键,之后连续点GGGGGGGGGGGGG,这样就会写出如下命令: \2 W$ P6 B' X2 @0 H
echo ^G^G^G^G^G^G^G^G^G^G^G^G^G //注意:g越多,响的时间越长 ( Q- D( X9 U$ U2 t
二.批处理与应急响应 ( [# j, Q7 F5 T) r; T7 s
首先引用2003年10月《黑客x档案》上的一些东西(那会儿一直忙着学习,没时间看,现在才......555555555):
0 |9 V: A+ o/ N% t创建响应工具包:
/ r+ T% l3 r7 W/ Xcmd.exe----------------------------------nt/2000命令解释器
5 b% h, I5 ]6 r( d: e6 G; V& rloggeden---------------------------------显示远程和本地连接的用户 # `( {1 c! ~) N9 m
rasusers---------------------------------显示出哪些用户具有权限访问nt工具命令箱
7 }: s G+ g6 `netstat----------------------------------列出监听端口
3 I( ?3 p. k3 j$ B" ~' I. K" F7 c: i4 efport------------------------------------端口进程关联工具 8 Y9 E, A1 G% t0 {+ ^: C* U' A/ Y
pslist-----------------------------------列出进程
- G5 A. C8 m: a1 Mlistdll----------------------------------列出运行进程以来的动态连接库 $ d; V+ c" Q1 [! E& Q# g- c8 }
nbtstat----------------------------------列出最近十分钟NetBios的连接
- `1 O9 I, ~- N( k' o' M$ q7 H% warp--------------------------------------显示最后一分钟连接的系统的MAC地址 9 k \/ r! |+ T
md5sum-----------------------------------md5校检和工具
; R0 l. d8 ~4 n5 T6 @% V9 dcca.exe----------------------------------检验克隆管理员帐号的工具
) H% c6 D% J/ P, P, V1 j1 N& Rdoskey-----------------------------------显示cmd命令历史的工具 ( o1 H" h+ G$ C) {% z3 K7 x; T/ Y; d8 w
....... " }' `( p& x5 d% x
.......
* V2 ]6 U7 a( k3 T6 f& q& U....... 2 M U" b+ S9 b% H
把你认为的对取证有用的东西都放进去 ! k1 c3 O4 U6 L2 c d, D
原文的作者说的取证的方法是一次一次的输入命令并把information转移到安全的存储设备中去,这样一个麻烦的工作,我们何不利用批处理文件简化它呢,我的方法如下:
; Z1 \; h: a0 o! _' g7 d9 r比如受害的机器名是qq,安全的机器是127.0.0.1
5 K6 J T& i/ X2 B; Z! w0 R) r(这里,qq&127.0.0.1都是我,也就是说我是在一台机器上模拟我想说名的过程)
% A0 u' K3 c K" iqq_cmdline: * S& |- j# \6 W5 m
xiangying.bat|nc -vv 127.0.0.1 1234
, w0 w0 N" f0 D W s- Y8 t127.0.0.1_cmdline:
$ W9 d. G- Y) `: ~nc -l -p 1234>xiangying.txt
* [& g9 f# d5 m, J$ g--------------------xiangying.bat------------------------- 9 k$ S; V& s8 c
@echo off
$ J% o5 d+ p K1 Wecho ****************************** 4 ?. R, w7 ?, `; L- H
echo ******* start date ********* ; T8 ~% r0 I9 \2 Y! u; S! j
echo ******************************
3 ] k1 O W6 s: cecho.|date ! u+ q. `( o3 r
echo ****************************** ! e4 F( m6 Y! B# g3 d% j
echo ****** start time **********
! |$ V. c6 \" N2 `echo ****************************** 3 u* x t" E3 q4 Z5 y2 J* @
echo.|time
1 d# v9 Q9 x5 o% \+ techo ******************************
0 M6 [ w; |' ^' hecho ****** netstat -an **********
; b) A. {0 U) techo ****************************** . l% w* U7 U9 P( `
netstat -an
9 m4 N4 p C1 m! Vecho ***************************** 2 I5 X0 v5 k0 t: }" p% K1 {8 t
echo ****** arp -a *************** ) i; }' u2 Z" g- n$ M. K# X' ^
echo ***************************** l3 L6 Z8 A/ c# F; o: g+ T
arp -a & D& `8 n' M) s2 b9 t
echo ***************************** " @; @/ c5 `: V
echo ******fport *****************
. Q" a1 p3 e5 l( G( M: b& Decho ***************************** 2 V1 l/ N1 I& M( C( V
fport
0 l. L+ T. {2 C8 J& B1 Cecho *****************************
3 p. o. j9 N4 p1 V* K: J$ ~echo ****** pslist ************** ) R" O [) F- C: B
echo ***************************** 4 B+ a+ T a3 m
pslist
4 b& w7 ~' D$ j" b" [echo *****************************
6 T- e# q1 J1 k1 F4 g/ y+ J' yecho ****** nbtstat -c************
0 L+ r5 P6 K t4 G: t! d" S) _echo *****************************
; y/ ^; q) B4 C& p5 i& Jnbtstat -c
) q6 c8 x1 L6 ?4 M6 s' becho *****************************
; r7 U* S, G- qecho ****** ipconfig ************
% y5 P( ]$ P {: b* F4 fecho ***************************** ) J K: z) T, o
ipconfig /all 4 w2 ]3 b- ?) }7 M
echo ***************************** 3 K5 D) ?. D& ]5 o
echo ******* end time ***********
9 M8 d, M2 j' `, Q# G& ~% x: Xecho ***************************** 9 w6 |4 T, l6 K( [( a
echo.|time
# C+ S- F. V4 @0 cecho ****************************** % d* R5 u m8 o/ ~ }' j0 t
echo ******* end date *********
0 M/ v) m" E( Y1 S% Z7 Eecho ****************************** 6 n$ @4 s! L8 g9 i
echo.|date , Q7 R- E/ V) g6 V
----------------------------end,save as xiangying.bat--------------------------- * n6 B% W+ X- ^& q- b4 q
注意:在本例中,由于我的电脑上没有那么多工具,所以我xiangying.bat的内容是不全面的,但是大家就可以按照上面给出的格式自己写了
4 X+ d' j D Y下面我给出我实验是得到的xiangying.txt是什么样子
. k% w) Y6 c. G$ ^1 n****************************** ) m( E1 Z; A7 y( k; b3 \
******* start date ********* 7 e9 W5 p$ h; h) a
******************************
& o8 } U3 @, T# u( r2 V当前日期: 2002-07-08 星期一 7 S* O) ?5 G8 Y4 J
输入新日期: (年月日) % F3 t& s! ~2 |, Q! `8 ]# ?5 f
******************************
0 W; G, P3 X" d5 r9 w: J****** start time ********** , U. ^2 X. E+ B! z& L0 f3 [! u
****************************** " _* w8 q( K3 d3 y# V+ }: ^3 ]
当前时间: 9:27:07.80 * [' u# I: l! E. J& C
输入新时间: 0 c7 i2 ^9 q; Z& `$ G7 s2 p
******************************
0 v T7 k8 D- w- B$ D+ h****** netstat -an **********
Z$ `& n l9 P6 @" I9 a****************************** , V1 _: Z5 _5 n% \7 n
Active Connections " v' T, l3 ?- p6 y% q5 d
Proto Local Address Foreign Address State ' V6 y0 t5 w+ G: I
TCP 0.0.0.0:135 0.0.0.0:0 LISTENING
: ]' m' j6 I* w: Z" GTCP 0.0.0.0:445 0.0.0.0:0 LISTENING $ D( l- B& U1 T
TCP 0.0.0.0:1025 0.0.0.0:0 LISTENING / `# l& }6 u4 D b2 S
TCP 0.0.0.0:1027 0.0.0.0:0 LISTENING & [0 c" _: k( K+ N2 g
TCP 0.0.0.0:1028 0.0.0.0:0 LISTENING 3 B" n5 h+ X) F( {3 t$ @7 D" E! B
TCP 0.0.0.0:1234 0.0.0.0:0 LISTENING
% E+ q& f3 ~* ^$ h* XTCP 127.0.0.1:1028 127.0.0.1:1234 ESTABLISHED
: Z4 g! E- ~7 R6 r" B; e* JTCP 127.0.0.1:1234 127.0.0.1:1028 ESTABLISHED
3 P2 |8 X. V, S! ^( g2 _, y0 Q/ XUDP 0.0.0.0:135 *:* & L- }- P9 C5 Q: v: _6 J: y
UDP 0.0.0.0:445 *:* ! B# _; g2 b2 E/ @& b
UDP 0.0.0.0:1026 *:* 8 ?; {6 I, k( t: ?: ]
*****************************
; s! Q! j1 g+ f* Z' X8 q( J****** arp -a ***************
; e% S7 X2 F4 d9 H***************************** / u! }0 ?2 b: i
No ARP Entries Found
3 |& h; V" T) [% l0 O***************************** : Y) n# g) Q; K8 B7 s
******fport ***************** , q+ E' R; o. |+ I0 K# q8 K
*****************************
! G9 O0 O& U7 h( }FPort v2.0 - TCP/IP Process to Port Mapper # @) d% d$ @7 F2 h: F8 {
Copyright 2000 by Foundstone, Inc.
. X8 k& o) G7 U4 l; y; e% vhttp://www.foundstone.com ; G4 ? V, D; E, J+ Y j% J' s2 M9 z
Pid Process Port Proto Path ; D* U+ i# r* e6 ?# u& E
400 svchost -> 135 TCP C:\WINNT\system32\svchost.exe 9 k. K5 u& \# h/ ?6 [# N, ~
8 System -> 445 TCP 7 ^+ {0 {$ X4 B/ j
548 MSTask -> 1025 TCP C:\WINNT\system32\MSTask.exe
9 H+ K4 b% S* ^# ^8 System -> 1027 TCP
* l" s% p q: J) A& R1 Y772 nc -> 1028 TCP d:\nc.exe % U) s1 @8 v( |3 {
804 nc -> 1234 TCP D:\nc.exe
6 \0 `* T% ]' S9 k400 svchost -> 135 UDP C:\WINNT\system32\svchost.exe
+ P9 r' V) ^+ D- b- G8 System -> 445 UDP 4 a" t. A' h% y' x
216 services -> 1026 UDP C:\WINNT\system32\services.exe 0 w4 m$ b J* N, F$ J3 Q5 K
***************************** 2 x7 C0 S1 D: ^- ^* ]
****** pslist ************** & b9 ?/ g0 Q, g* O! T9 ]; K% A- V- G9 ]
***************************** 3 m2 S! H i ?
PsList 1.22 - Process Information Lister 2 B+ E" W. W+ S3 {- g7 _# W
Copyright (C) 1999-2002 Mark Russinovich
0 l+ l) c# F' e* i- f4 a' TSysinternals - www.sysinternals.com ; R$ D0 M& _, A/ E8 k
Process information for QQ: - `6 u& \9 g7 E4 m0 Y2 B
Name Pid Pri Thd Hnd Mem User Time Kernel Time Elapsed Time
8 {5 P5 S6 J" \1 H* {Idle 0 0 1 0 16 0:00:00.000 1:00:26.364 1:01:14.203 9 A* d% {: g4 Y9 O3 Y6 |! n' X4 `
System 8 8 34 60 276 0:00:00.000 0:00:02.603 1:01:14.203
# W8 S" g2 m' G% I) |% x1 E+ a6 v( vsmss 144 11 6 33 352 0:00:00.010 0:00:00.190 1:01:14.203
) m- w" s' }# I* t/ gcsrss 168 13 10 290 1216 0:00:00.100 0:00:06.218 1:01:11.649
# C! u6 { L( Y& x% v+ ?% ywinlogon 164 13 16 363 2692 0:00:00.220 0:00:00.610 1:01:10.307 1 n$ `9 F# ^' H4 B) v
services 216 9 30 443 5016 0:00:00.320 0:00:00.731 1:01:09.216
+ q* o: Y) z; b( `1 Clsass 228 9 15 251 1176 0:00:00.240 0:00:00.080 1:01:09.196
* h2 I Y! H; A/ G7 @* Esvchost 400 8 9 242 3236 0:00:00.050 0:00:00.070 1:01:06.952 " F% X) s2 z+ w/ }
spoolsv 432 8 11 151 3672 0:00:00.030 0:00:00.020 1:01:06.742
5 `8 ~; @* h& P( wsvchost 464 8 26 422 7416 0:00:00.120 0:00:00.180 1:01:06.722 % e6 b5 K) @' z) h8 ^' [& w
KAVSvc 480 8 9 57 6732 0:00:01.582 0:00:00.130 1:01:06.622 : q0 W/ g: z! Q5 Z. q# x: b
regsvc 532 8 2 30 964 0:00:00.010 0:00:00.010 1:01:06.201
, C/ t, }% E$ dMSTask 548 8 6 117 3124 0:00:00.010 0:00:00.030 1:01:06.051
7 h# C, p) V/ |. K+ aWinMgmt 600 8 3 105 160 0:00:05.998 0:00:00.260 1:01:05.020 + B# s7 E' W* I# [2 p! {3 \. n
svchost 672 8 5 144 4532 0:00:00.010 0:00:00.050 1:01:04.319
# E2 g5 x" ] u8 F& K* kExplorer 836 8 18 385 7152 0:00:02.633 0:00:06.889 1:00:45.662
; l, I0 @/ ?+ I7 G2 udelttoul 1000 8 1 21 1516 0:00:00.010 0:00:00.000 1:00:43.158
+ g$ H* T8 x+ s) }internat 1016 8 1 31 1412 0:00:00.040 0:00:00.200 1:00:43.038
. k) }% f0 _) ]+ C' swordpad 320 8 4 85 944 0:00:08.462 0:00:07.530 1:00:22.729
4 a: h/ y) Y7 c* D& n0 \conime 840 8 1 19 1016 0:00:00.020 0:00:00.030 0:53:19.230
9 U c8 |2 [0 wcmd 924 8 1 24 56 0:00:00.010 0:00:00.030 0:03:46.075
: J. z6 ^% f" a" unc 804 8 2 74 468 0:00:00.010 0:00:00.010 0:02:48.552 - U; l) M/ x) p: |
cmd 392 8 1 24 516 0:00:00.010 0:00:00.010 0:01:19.774
+ J2 K. e4 A3 \9 @ I$ |CMD 916 8 1 24 1076 0:00:00.010 0:00:00.020 0:00:00.410 + s2 \9 x. w; P# q; g/ s
nc 772 8 2 75 2648 0:00:00.020 0:00:00.020 0:00:00.400
5 K/ T* j- V8 qpslist 820 13 2 79 1452 0:00:00.020 0:00:00.020 0:00:00.120
# l' l& X+ u- Z7 B*****************************
+ z7 P' l* N* }****** nbtstat -c************ 5 I% k- V; H$ R4 o2 `- O& D
*****************************
( {; P( j! }7 s*****************************
0 O* } ^! B T****** ipconfig ************
/ R7 c1 M. J! i. N- h; D* I' I: f$ F*****************************
& U6 K6 N: L6 ?3 v# {6 ]Windows 2000 IP Configuration Host Name . . . . . . . . . . . . : qq
: l+ `& `; Q' A8 BPrimary DNS Suffix . . . . . . . :
E- v6 p C" @3 L/ }Node Type . . . . . . . . . . . . : Broadcast IP Routing Enabled. . . . . . . . : No WINS Proxy Enabled. . . . . . . . : No O; e7 H1 M5 ?9 N/ ^
*****************************
) m' N" l* y9 V; S; ^. p******* end time ***********
5 s; `2 L$ O9 _***************************** + e3 w' |) J6 b& T1 |
当前时间: 9:27:08.28
, H. o1 e$ `4 h% H' q7 ~9 S3 I" J输入新时间:
* J1 S. U! x) ~2 U% M******************************
0 L/ Y+ b) }( M+ I4 {% M******* end date ********* - j6 `; z/ x. S9 o2 U) i
******************************
& _( [+ h4 L W, c1 X当前日期: 2002-07-08 星期一 7 a# W& w' P1 i7 p9 n. P& _& e
输入新日期: (年月日)
" b* G, f$ W: E6 ^+ t ?3 x N$ p x! V2 n
怎么样,我们现在可以用得到的数据进行分析了吧,哈哈 & ~ i& ~! K/ y# W9 u1 v
9 U8 s" |8 k8 D: F& ~
三.几个要注意的小问题:
# W/ J7 K, @1 A- o, ]6 {8 ~1.在批处理文件中%win32% <=> c:\windows\system
. \3 i, A5 Z9 T+ }( W2.在批处理文件中使用环境变量的时候,必须用%将变量包起来 9 i" U' g$ M; a& @ S/ [+ _
3.for %f in (*.*) do command cmdline - v {+ K0 \' h+ E2 H
在批处理文件中%f要写成%%f
% j4 M& o. L" ^4 w9 b# g% L1 p9 N/ u( K* P1 }5 f4 I( i" _1 }; E
5 Z) V% Z g$ @( O1 ^ |