|
这几天一直在学习批处理,看了好多很好的文章,今天也把自己认为新学到的东西写出来和大家分享,嘎嘎 :> ( 别笑我写的不好)
- v [2 J0 J# ?8 `* \) {. c {, ~3 F! S6 o0 S3 ?2 \5 Y
4 L- h! a! P& o / M! l' i$ L# a$ \! ^4 z
一.echo命令在深入 + |, O3 p/ d, C8 n3 n: L
恐怕echo命令是大家最熟悉的命令之一了,常用格式: 9 b7 y0 w4 ?6 x# n& a: K
echo on echo off
: B2 `2 Q0 l {8 E% secho 欲输出信息 $ ^ u% {/ |4 ?4 P- q b5 _
下面写几个很多人不是特别熟悉的使用方法 q' `3 @+ h% K- o* j+ U" ~% e
<1>首先进cmd: 4 ~) B# ]) z: O; D8 R7 c
****************************************************************
% D. O2 h5 r$ W" Y+ y TMicrosoft Windows 2000 [Version 5.00.2195]
8 P5 [! V9 H4 m9 m4 r" p(C) 版权所有 1985-2000 Microsoft Corp.
/ v0 U# |* L: q% h( y4 T/ ?( uC:\>echo off回车 //之后c:\> 就会消失,直到你重新输入echo on
/ _/ o X2 u, X& U/ ~, C6 cecho on
, a {3 K( y- F; |5 tC:\>
* }/ Q$ V: ~" a. c1 d" _/ r****************************************************************
; O' y4 R w1 o, U<2>如何用echo向一个*.txt文件中写如一个回车呢?
2 [# W a6 G- J" o" y用echo 回车>a.txt 吗,哈,当然不是 ,这里就要用的命令: + b* O' Z3 A& R! |" W6 a
echo.>a.txt,echo.是关键,相当输出空行,即一个回车 2 f6 J: o. B1 N0 G- y$ k2 M
[e.g] ! Y% y& o4 l; x9 Y
echo.|time //把回车传递给time命令处理,在批处理中常用此法来显示时间并把信息写入一个指定的文件
2 [! z6 d" z2 Y, ?2 |6 `echo.|del *.* //呵呵,搞破坏是很有用啊 : S1 C1 B+ D& k/ T
etc. % ]) s3 s8 W. V# \! b! L+ F
<3>利用echo命令让喇叭唧唧的叫,哈哈 //可以用来吓唬人呦 : P. v; X# R }/ r
在cmd下输入:
8 E# K- `8 Y2 oecho空格,然后在按住ctrl键,之后连续点GGGGGGGGGGGGG,这样就会写出如下命令: 6 B; A6 `! \& u) Q7 R; V
echo ^G^G^G^G^G^G^G^G^G^G^G^G^G //注意:g越多,响的时间越长 _2 o) s* }6 Z1 C" N- V/ n$ b
二.批处理与应急响应
, t! y( `- I6 D5 e- b. C1 {首先引用2003年10月《黑客x档案》上的一些东西(那会儿一直忙着学习,没时间看,现在才......555555555):
( `1 ~6 g) e* A. ] z创建响应工具包:
0 f+ ^0 V9 c7 O3 Scmd.exe----------------------------------nt/2000命令解释器 5 Z& s( N# Z+ ?/ Q
loggeden---------------------------------显示远程和本地连接的用户
( [" `- \, t2 N8 `0 q* krasusers---------------------------------显示出哪些用户具有权限访问nt工具命令箱
5 G; o1 Y/ r- L1 _, r- tnetstat----------------------------------列出监听端口 5 x2 @3 I) x0 f& o- @' H
fport------------------------------------端口进程关联工具 . r- t1 ^9 M! s
pslist-----------------------------------列出进程 1 W" P% R+ C# x6 J u) H" K) M& b* h( G
listdll----------------------------------列出运行进程以来的动态连接库
$ `4 s# e( z( Y9 v7 hnbtstat----------------------------------列出最近十分钟NetBios的连接 1 T3 E4 g E, i) p7 M; H1 ^8 e8 G
arp--------------------------------------显示最后一分钟连接的系统的MAC地址 - ]/ L/ C" h, L
md5sum-----------------------------------md5校检和工具
2 g$ e/ X6 D, c1 M* J5 w- pcca.exe----------------------------------检验克隆管理员帐号的工具
! l) {4 x% T& a$ hdoskey-----------------------------------显示cmd命令历史的工具 : ^+ V6 g* V& O0 c- h
....... - f$ J. {1 O0 r& U
.......
! W5 `1 E4 j, D# x....... * Q/ ]/ Q# t' j& e3 i: D$ j. \
把你认为的对取证有用的东西都放进去
, S$ l1 G% x5 b* P6 Y原文的作者说的取证的方法是一次一次的输入命令并把information转移到安全的存储设备中去,这样一个麻烦的工作,我们何不利用批处理文件简化它呢,我的方法如下:
' c0 W+ N7 m. V! j2 e比如受害的机器名是qq,安全的机器是127.0.0.1
& a% P! e& l2 Z, U& f1 i% V& x(这里,qq&127.0.0.1都是我,也就是说我是在一台机器上模拟我想说名的过程) 0 v# }2 u/ [5 x/ O5 i
qq_cmdline:
0 s4 K; P0 k) \% C% Yxiangying.bat|nc -vv 127.0.0.1 1234 @' } g+ [% C& q; U
127.0.0.1_cmdline: . N4 j, f$ T2 P& M9 K
nc -l -p 1234>xiangying.txt ! x1 y2 e) K4 ]# U
--------------------xiangying.bat-------------------------
, C$ c: x/ E; `* [% F@echo off
: s2 }! t/ t$ ~3 c \8 ^5 Decho ******************************
) f8 N0 D% Z2 i1 b7 P9 t/ U Mecho ******* start date ********* * J% ~- Y! F& z* |) s
echo ****************************** ) W# ^0 Z& G* z
echo.|date
0 p0 U! \; h2 Q3 w' Y/ }; L6 Recho ******************************
1 }5 q% T! M/ ?2 F! vecho ****** start time **********
9 b* b8 o" o0 `! Q" E9 Yecho ******************************
% _6 x0 f5 J# Q c. ~echo.|time
$ v7 t$ M9 Y$ f2 U; q& u5 gecho ******************************
& w8 Z0 X% i* _echo ****** netstat -an **********
, D+ }8 @& r$ y' q; g2 u& o, Jecho ****************************** X+ B: m3 o) C* p/ e+ w4 G$ q
netstat -an + Z: L* ^' W4 |& h* s
echo ***************************** 9 V f: A& B0 v/ n2 `+ J
echo ****** arp -a ***************
$ N- c, @/ O% Aecho ***************************** / G* z6 q* O4 P- N
arp -a 6 ?( a5 y: w9 t3 B" f' J) `5 |
echo *****************************
/ l/ k% ?& y$ n2 lecho ******fport *****************
4 X" D$ i% z9 d/ U/ l8 eecho *****************************
+ s& a% |0 W# O3 R, }5 y2 ifport
0 w) P) Y/ i/ D/ ?echo *****************************
' K/ z6 R* r7 N7 Jecho ****** pslist **************
9 a+ E: Y) |, o0 `echo *****************************
5 h: e6 x; t: V. U4 L8 n4 wpslist N# d& v+ u1 N7 B
echo *****************************
8 t* [- W% t8 O. techo ****** nbtstat -c************
9 G# L% s! m; u8 |; \) Oecho *****************************
- I. L y. H# \# l3 T: Tnbtstat -c ) Z9 V; @) `3 b- l9 S
echo *****************************
+ Q" M* e8 U2 X Vecho ****** ipconfig ************
; y- ~4 k0 A1 y, F3 }* secho *****************************
/ l8 m% ?+ p6 xipconfig /all ; |6 Z6 i* ?* f; N' R: W4 Q6 H
echo *****************************
# f. f- ~9 i5 h8 K5 R; w* _& xecho ******* end time ***********
& s7 n w( s8 Qecho *****************************
, R6 d; Q% o) M; g; Mecho.|time
3 o2 K$ r' }# C6 H- @5 A: u" Eecho ******************************
$ k2 v- C) I7 N# c: W4 K8 n9 j9 zecho ******* end date *********
# B( I$ Y8 `2 Decho ****************************** + `# n7 l# U0 B* y. P/ o* H
echo.|date / k7 d6 [9 u0 w2 N- R+ f
----------------------------end,save as xiangying.bat--------------------------- , [* o3 I' P% V* J5 k
注意:在本例中,由于我的电脑上没有那么多工具,所以我xiangying.bat的内容是不全面的,但是大家就可以按照上面给出的格式自己写了 + t8 Q: Q5 T9 k& s8 c3 e
下面我给出我实验是得到的xiangying.txt是什么样子 % |7 _1 g* W3 i( _4 F1 ]
****************************** * L/ L$ [* O5 m9 X" h2 y- j P1 v
******* start date ********* : s. {& ^8 f% Y! [. Y, |7 ?+ g
******************************
5 i! p( O/ |9 H, S6 c当前日期: 2002-07-08 星期一
, z) T+ j9 S: g2 F @3 h, U# j输入新日期: (年月日) # E9 {9 M! Y" P+ y4 z* ?6 e
******************************
1 X- p6 {( u9 x y" d& \4 s****** start time **********
5 O* ?0 z) k2 `6 {% b% e4 ?: ?****************************** . t% }! c% x5 @4 F* R8 w: V6 F
当前时间: 9:27:07.80
9 i) V0 Y/ H$ L" n输入新时间:
4 Y' O$ e# j+ P8 Z# f******************************
8 d: V0 N0 O- p****** netstat -an ********** ; Z( B4 A1 L/ I" D8 _
******************************
9 _8 u Y9 v3 o# W; W* jActive Connections
' _. A% z }7 RProto Local Address Foreign Address State : k2 ^0 G" i5 F" j
TCP 0.0.0.0:135 0.0.0.0:0 LISTENING 0 F) ~: r) k/ M2 D/ a7 K; T6 M
TCP 0.0.0.0:445 0.0.0.0:0 LISTENING
1 V H' G3 A# d3 y; hTCP 0.0.0.0:1025 0.0.0.0:0 LISTENING - p; t; j2 ~% E& b% l4 A F" }
TCP 0.0.0.0:1027 0.0.0.0:0 LISTENING
" P, A8 G2 D: M! f5 HTCP 0.0.0.0:1028 0.0.0.0:0 LISTENING 1 C: ~. N4 [6 q; H
TCP 0.0.0.0:1234 0.0.0.0:0 LISTENING - d* ]# @' [$ E3 C) @0 f5 {
TCP 127.0.0.1:1028 127.0.0.1:1234 ESTABLISHED 5 |$ C7 {6 D9 T% k
TCP 127.0.0.1:1234 127.0.0.1:1028 ESTABLISHED
' P, u+ S) W1 ]" @$ ~' \UDP 0.0.0.0:135 *:* 4 @3 `8 t/ O t2 v' F) M
UDP 0.0.0.0:445 *:*
' c0 \9 L" x! K% ?) }3 f& ?. uUDP 0.0.0.0:1026 *:*
6 R7 Z# }, J# T$ J& [, L*****************************
! `( j' ?! s2 u****** arp -a *************** 4 R/ X+ s W* [; t# M/ j2 i
***************************** ! A* U; L# q7 H, ^# ]% @0 \
No ARP Entries Found
# C! ?! {% r) Y& ~1 F*****************************
8 M$ {4 i1 F6 f******fport ***************** 9 ]; \, ~- a+ y) Z; m: b, T9 ]
*****************************
5 F3 z- i0 j" y! o/ DFPort v2.0 - TCP/IP Process to Port Mapper
% @. I0 l$ Y# n) b m0 |" yCopyright 2000 by Foundstone, Inc. 0 ^+ E# L$ D5 ?* k& x
http://www.foundstone.com % r+ Z0 ]* A) p9 y
Pid Process Port Proto Path
$ Q- _! Y! X7 ^" x; n% t400 svchost -> 135 TCP C:\WINNT\system32\svchost.exe
) [; L7 t" C% d$ R& F) x8 System -> 445 TCP 9 c6 J' u3 n Z0 `4 h
548 MSTask -> 1025 TCP C:\WINNT\system32\MSTask.exe 5 g y3 G" \' u
8 System -> 1027 TCP : g/ \& o ^+ f* d, y: r; C3 x" L
772 nc -> 1028 TCP d:\nc.exe
+ w- e& R7 u. |" h P( H; S; e804 nc -> 1234 TCP D:\nc.exe
" }1 u( I0 ~1 |400 svchost -> 135 UDP C:\WINNT\system32\svchost.exe
/ C# y- r6 S7 t8 System -> 445 UDP 9 a! T5 z: Z. W' H
216 services -> 1026 UDP C:\WINNT\system32\services.exe
+ z2 D q1 g2 H7 m7 u*****************************
' l! v& [9 C7 K4 M, V D, x+ c****** pslist **************
! X1 V4 A5 W, O5 H6 A' N# l3 W! Z5 S***************************** b7 |2 B6 L, |- z: F
PsList 1.22 - Process Information Lister
1 W( e% \5 x9 B% eCopyright (C) 1999-2002 Mark Russinovich
+ _9 Z/ a3 h" FSysinternals - www.sysinternals.com 7 D, Z4 D0 W# S& c* o" v3 Z
Process information for QQ:
- F8 L C; a9 b$ J2 z6 [( qName Pid Pri Thd Hnd Mem User Time Kernel Time Elapsed Time
4 s" A; T# k0 X- `/ v; E$ {2 \$ WIdle 0 0 1 0 16 0:00:00.000 1:00:26.364 1:01:14.203 8 B+ n0 l* y5 k5 s; Z/ P" y! r1 ~/ F
System 8 8 34 60 276 0:00:00.000 0:00:02.603 1:01:14.203 4 U- c' L5 l4 A* }; o. B
smss 144 11 6 33 352 0:00:00.010 0:00:00.190 1:01:14.203
1 e+ n6 |' v7 Qcsrss 168 13 10 290 1216 0:00:00.100 0:00:06.218 1:01:11.649
& y/ O! j I" s% d" R6 H( J; Jwinlogon 164 13 16 363 2692 0:00:00.220 0:00:00.610 1:01:10.307
) s) U* {+ k$ {' [( H) [services 216 9 30 443 5016 0:00:00.320 0:00:00.731 1:01:09.216
5 L0 l& O3 P; [6 l. m5 Z2 ]; R" W6 jlsass 228 9 15 251 1176 0:00:00.240 0:00:00.080 1:01:09.196
! s$ X! { m; ]7 _" Gsvchost 400 8 9 242 3236 0:00:00.050 0:00:00.070 1:01:06.952 ( D! I4 q8 F# N* a
spoolsv 432 8 11 151 3672 0:00:00.030 0:00:00.020 1:01:06.742
" G0 J4 P9 k |7 ]0 f) Ksvchost 464 8 26 422 7416 0:00:00.120 0:00:00.180 1:01:06.722 ! {. R4 S3 w" j/ U
KAVSvc 480 8 9 57 6732 0:00:01.582 0:00:00.130 1:01:06.622
) W' @, l5 P( D% J* Rregsvc 532 8 2 30 964 0:00:00.010 0:00:00.010 1:01:06.201
' v" @6 l) k8 l4 q0 ^9 V/ p# y, ~MSTask 548 8 6 117 3124 0:00:00.010 0:00:00.030 1:01:06.051 6 L2 }; Y, Z2 c' j( ]
WinMgmt 600 8 3 105 160 0:00:05.998 0:00:00.260 1:01:05.020 ' R. ~0 r' X: `6 Y# R8 [
svchost 672 8 5 144 4532 0:00:00.010 0:00:00.050 1:01:04.319 # \5 s0 [" ^" b+ x! z E: N% @6 ^
Explorer 836 8 18 385 7152 0:00:02.633 0:00:06.889 1:00:45.662
8 f) V# q b0 ]0 m3 m4 A0 jdelttoul 1000 8 1 21 1516 0:00:00.010 0:00:00.000 1:00:43.158 6 Z0 k+ M- D# k! @; [
internat 1016 8 1 31 1412 0:00:00.040 0:00:00.200 1:00:43.038
' k: I4 x& V3 P5 Q4 {7 Qwordpad 320 8 4 85 944 0:00:08.462 0:00:07.530 1:00:22.729 . P. y! U$ Z8 F: F
conime 840 8 1 19 1016 0:00:00.020 0:00:00.030 0:53:19.230 . n9 t; l& O% z) q6 @; h0 z* S
cmd 924 8 1 24 56 0:00:00.010 0:00:00.030 0:03:46.075
+ Y4 c) }* }# L* O, B; p; gnc 804 8 2 74 468 0:00:00.010 0:00:00.010 0:02:48.552
, f; ]- H& l' U2 d, | S5 rcmd 392 8 1 24 516 0:00:00.010 0:00:00.010 0:01:19.774
! H w1 H+ N I/ NCMD 916 8 1 24 1076 0:00:00.010 0:00:00.020 0:00:00.410
" l$ Z2 r. v+ b& {nc 772 8 2 75 2648 0:00:00.020 0:00:00.020 0:00:00.400
+ b0 V" U5 F- \' e- npslist 820 13 2 79 1452 0:00:00.020 0:00:00.020 0:00:00.120
1 C% T. [/ ~9 U c* U***************************** 8 n) ? P0 E5 H8 ~# P9 f; s
****** nbtstat -c************ ( [& Q9 P j* G1 @; O7 |! V4 A
***************************** 6 V+ N/ E" ^3 Q/ ~8 U
*****************************
. `( f" m" H8 w****** ipconfig ************
: G& i# ~( O. k/ s% e*****************************
( Z8 [; {7 ]2 x5 O/ TWindows 2000 IP Configuration Host Name . . . . . . . . . . . . : qq
1 K) X. \* I$ wPrimary DNS Suffix . . . . . . . :
& l/ D6 K9 o# P& P& iNode Type . . . . . . . . . . . . : Broadcast IP Routing Enabled. . . . . . . . : No WINS Proxy Enabled. . . . . . . . : No
! ~8 X1 O; [! p$ l- g4 y; x***************************** 7 W; S: W- i# D6 \7 g) b) s; x9 W
******* end time *********** 5 v% I7 f' u, F
***************************** # I& R, {. G, ]" d \3 A; Q
当前时间: 9:27:08.28
. o2 Q8 m) E% f, J输入新时间:
6 e8 T# b# o9 Y% l******************************
/ p9 X! t* Y$ R. L2 i******* end date *********
6 @/ C6 _2 |3 z1 d******************************
6 {# f" R1 X9 l9 p( ~% ~4 i7 Y: M当前日期: 2002-07-08 星期一 3 s; r" x& s9 X7 |8 L1 M) [+ F
输入新日期: (年月日) ( T) N# W; u" n/ k& v
0 l A; P0 j% r0 E
怎么样,我们现在可以用得到的数据进行分析了吧,哈哈 ) j# W6 N+ }8 x Z: W# B! D4 J" o
- V3 B+ r9 B Q O# n
三.几个要注意的小问题:
+ {% r! Y) N6 Q) }1.在批处理文件中%win32% <=> c:\windows\system 9 B0 q. n! U1 v }+ R b. w3 Y$ A$ m1 D$ D
2.在批处理文件中使用环境变量的时候,必须用%将变量包起来 $ j8 O6 K" f3 t1 c y7 x: ^: D
3.for %f in (*.*) do command cmdline
/ q8 r) \+ c# `/ A) _& \0 U( W3 \在批处理文件中%f要写成%%f 6 H% ?4 H- @$ M: s+ o% S: ?
, T3 k- k6 @# V. v9 S: n2 F E+ [0 I: S# J% Q
|