|
这几天一直在学习批处理,看了好多很好的文章,今天也把自己认为新学到的东西写出来和大家分享,嘎嘎 :> ( 别笑我写的不好) * a% Z: ~7 o+ l6 g6 C0 @$ b* b
1 S7 d7 J$ ~7 e- A' b, \
) z! H1 [, y, Z7 C! O9 M
$ w8 \- P3 R; X( ~ O8 a一.echo命令在深入
2 j+ t: G( |2 J: d" b恐怕echo命令是大家最熟悉的命令之一了,常用格式: ; E( ^5 U, Y& ]2 @, g
echo on echo off
7 A: c0 t# J3 z+ J+ wecho 欲输出信息
: D$ z" c( z4 A% g下面写几个很多人不是特别熟悉的使用方法 1 d# m0 V) }* p% ?" T" }
<1>首先进cmd:
" X+ D) R( T7 M$ {+ h- W****************************************************************
0 i2 @4 B" E* K2 WMicrosoft Windows 2000 [Version 5.00.2195]
! w% M" Y7 Q) V: I! f(C) 版权所有 1985-2000 Microsoft Corp.
6 ~7 W0 A: p4 D: u9 o6 }C:\>echo off回车 //之后c:\> 就会消失,直到你重新输入echo on
2 B9 |7 C6 S6 I) [+ ~! q1 mecho on
* m0 T8 m( ^4 B, v+ O) ?9 x, SC:\>
3 p5 q0 S3 y) s4 x# \****************************************************************
# s2 }4 t( p, T; h<2>如何用echo向一个*.txt文件中写如一个回车呢?
8 e, @5 T; L3 U! Q& A0 H用echo 回车>a.txt 吗,哈,当然不是 ,这里就要用的命令:
1 c3 v2 i( a6 F' |& O- V) Oecho.>a.txt,echo.是关键,相当输出空行,即一个回车 * D. G# r' n/ r, h* U$ t! j; w
[e.g]
. U3 B |# z7 E N9 A) q- G8 fecho.|time //把回车传递给time命令处理,在批处理中常用此法来显示时间并把信息写入一个指定的文件
. \/ G* v: |$ w& V0 A4 O t( fecho.|del *.* //呵呵,搞破坏是很有用啊 ! T4 {6 w- e i; L3 f* D
etc.
. }+ W# K( E0 y6 a3 m<3>利用echo命令让喇叭唧唧的叫,哈哈 //可以用来吓唬人呦 ; O# h7 R5 ?! O- k) P
在cmd下输入: K+ ?8 o ]; V3 J y+ ?1 W
echo空格,然后在按住ctrl键,之后连续点GGGGGGGGGGGGG,这样就会写出如下命令:
$ T* r1 }" f3 J: G7 B: V. iecho ^G^G^G^G^G^G^G^G^G^G^G^G^G //注意:g越多,响的时间越长
5 O3 L% p9 `( n8 h, l3 O: U1 B二.批处理与应急响应
/ T: b! d1 c8 S& b4 v. U7 V5 b首先引用2003年10月《黑客x档案》上的一些东西(那会儿一直忙着学习,没时间看,现在才......555555555):
1 v" X, Y/ {: e9 K( d6 z9 H. | i创建响应工具包: ! v0 S% Q3 I7 {1 o: [
cmd.exe----------------------------------nt/2000命令解释器
0 ^& Y- H2 I1 u# f8 y9 x) \* `loggeden---------------------------------显示远程和本地连接的用户
/ O( J$ B8 p& c' F9 z2 F/ zrasusers---------------------------------显示出哪些用户具有权限访问nt工具命令箱 % X( W2 ^- |4 I" e1 R$ m* a
netstat----------------------------------列出监听端口 3 @0 E5 i+ [; K# N# W4 z3 q
fport------------------------------------端口进程关联工具
0 F$ X! c v* {& b9 ~pslist-----------------------------------列出进程
: J" p6 e3 i# h# @listdll----------------------------------列出运行进程以来的动态连接库
$ K+ u! s2 s1 h% c: f1 I* hnbtstat----------------------------------列出最近十分钟NetBios的连接
! s% i( m) w% a* w# l `3 ^+ W& Xarp--------------------------------------显示最后一分钟连接的系统的MAC地址 ( F8 y) _* |" L* i4 `
md5sum-----------------------------------md5校检和工具
9 G T: {9 O6 N6 F0 g- v# U; i. Q; Jcca.exe----------------------------------检验克隆管理员帐号的工具
K+ L% y$ T& d6 Pdoskey-----------------------------------显示cmd命令历史的工具
0 k- w- k( ^7 I1 a' R5 m.......
. F" A3 w: d; \. w& y.......
6 v* Q$ _) [ S/ t" L- ~3 }% l.......
8 T& U3 `" _! m4 }# _2 c" i把你认为的对取证有用的东西都放进去 ) y2 ]+ b7 N9 X1 v+ m
原文的作者说的取证的方法是一次一次的输入命令并把information转移到安全的存储设备中去,这样一个麻烦的工作,我们何不利用批处理文件简化它呢,我的方法如下: , b. P: _! s9 _! E
比如受害的机器名是qq,安全的机器是127.0.0.1
8 K S% c. O& W2 |8 E9 m' O, ~* N(这里,qq&127.0.0.1都是我,也就是说我是在一台机器上模拟我想说名的过程) ' e* i. S" d. Q
qq_cmdline: " S# J$ T; c2 L! b( m
xiangying.bat|nc -vv 127.0.0.1 1234 5 y F1 B9 M' B( a: U( A
127.0.0.1_cmdline:
$ y+ e- t; `8 w( H* ync -l -p 1234>xiangying.txt
/ C; h* M) ]! t, _--------------------xiangying.bat------------------------- + L" F( r" v2 u* a) j
@echo off
+ g0 x, v- D4 h) P( becho ******************************
" \% r% |3 F8 M$ ]1 N7 F6 iecho ******* start date *********
/ C6 [$ T* g p3 M5 l1 yecho ******************************
S' I# G9 g* U9 Q9 u* G, O* Recho.|date
+ b5 a+ C3 u1 E: l$ Y! R/ k( G, kecho ******************************
" a" j. W I2 e2 decho ****** start time **********
8 H" J5 [" e( n R2 C, I4 i W2 eecho ******************************
+ h+ u$ }* t7 P+ Y# v9 b9 Pecho.|time
" c6 U+ p/ |/ v$ k. R& B1 k# ?echo ******************************
Q9 i" ~ r" ]) D2 aecho ****** netstat -an **********
& Q/ \' v! q4 p+ b- T: y# hecho ****************************** " V: t2 G, j9 |. ^! h
netstat -an # T: K; ~* f. N. [# J1 J$ K
echo *****************************
9 W6 g* ]7 h+ R7 ~echo ****** arp -a ***************
3 n, A$ D' O% V/ y3 a( Oecho ***************************** , Y0 u3 v; r& l5 t3 x
arp -a
# ?7 s% g3 K3 A! recho ***************************** 3 L1 Z0 X% j* l
echo ******fport ***************** % L5 g1 ?( }6 Z+ S0 I( b) y
echo *****************************
+ n9 u; K% P+ Efport
* _- g0 p. v5 P: oecho ***************************** 7 V* a8 ^5 K0 i) e+ |% L' C0 v; ~
echo ****** pslist ************** & |/ x' {0 D+ M- N$ ~. m, g
echo *****************************
* V! y' Q% R: Q/ w' ]7 j3 Hpslist
( T( ]! |* p8 [% L7 F8 p: J! mecho ***************************** # C( f) T4 Y0 r' P, d
echo ****** nbtstat -c************ 6 t- A! B* s* @ X
echo *****************************
5 w& y$ M% y+ l' ~nbtstat -c 2 f: W2 f5 ?6 k! a# h: \6 b* h
echo ***************************** 1 X3 y) u6 C3 p8 [& }
echo ****** ipconfig ************
: L3 x5 [! Z/ O' {: \ C1 Wecho ***************************** 5 }( M6 [5 V; a" S4 X& ]6 R
ipconfig /all
! w2 a; p' r n G5 g/ kecho ***************************** 4 L' \) ^1 l) v
echo ******* end time ***********
4 n) M( x6 o! t1 Y6 K7 Techo ***************************** $ s" H3 t0 ] |! v: n+ L+ R) D
echo.|time
& c2 h9 @; W3 O+ E+ U# iecho ******************************
4 Q3 `8 W' y! C1 Q3 K9 M2 U1 `echo ******* end date *********
9 G; w) S8 J- a8 Yecho ****************************** : L# ^+ g8 b8 y& \$ d6 {9 U
echo.|date
" ~4 I) q5 A# X! U----------------------------end,save as xiangying.bat---------------------------
+ H- R/ B5 X- E7 M6 I注意:在本例中,由于我的电脑上没有那么多工具,所以我xiangying.bat的内容是不全面的,但是大家就可以按照上面给出的格式自己写了 & E' R+ z5 z7 `4 _& O0 t
下面我给出我实验是得到的xiangying.txt是什么样子
4 B& b% l% Z: [: D9 k! H******************************
, d# T5 z/ C) T( D0 F******* start date ********* 1 q' \5 T# [7 g, `3 u4 P
******************************
8 H2 p3 u" V0 s1 n; x! e当前日期: 2002-07-08 星期一 9 S9 W, Q4 L% V9 `
输入新日期: (年月日) / d4 `7 u' n M) `# o% w9 ^
******************************
0 H0 @% s$ @3 T) t****** start time ********** - N9 }, h: y4 {( _' c+ N7 ^
******************************
5 {( a- A' {. I5 C3 Z6 L' j1 E- U% ?% V当前时间: 9:27:07.80
' R R2 u. V, N9 V# R; R输入新时间: % }4 h0 i7 x3 p5 W, C
****************************** * R- o" W: V, b7 ~6 a/ U
****** netstat -an ********** , x5 O! ^3 u( b; t* G
****************************** 3 T, w# G9 T4 B0 {5 d* i
Active Connections
3 B9 C0 W7 ^8 x& K" H+ }, a, gProto Local Address Foreign Address State
' v. u, j7 v; |$ ZTCP 0.0.0.0:135 0.0.0.0:0 LISTENING 8 ?: r& _9 m5 r# i( Q; H; d+ x5 n4 [
TCP 0.0.0.0:445 0.0.0.0:0 LISTENING
' f" {3 e4 a& o" `6 n9 cTCP 0.0.0.0:1025 0.0.0.0:0 LISTENING 9 o" s# e W* z. |0 r
TCP 0.0.0.0:1027 0.0.0.0:0 LISTENING
! P! l) i* m% _4 t0 B' fTCP 0.0.0.0:1028 0.0.0.0:0 LISTENING # C0 h2 @* U: j) `( |+ q5 F
TCP 0.0.0.0:1234 0.0.0.0:0 LISTENING
( d2 l c0 L/ s- ATCP 127.0.0.1:1028 127.0.0.1:1234 ESTABLISHED ; g6 x2 L" R$ b* P
TCP 127.0.0.1:1234 127.0.0.1:1028 ESTABLISHED
: G* q' k( x+ I* M# D8 F. b6 sUDP 0.0.0.0:135 *:* ' I' ]" b* I" M2 k; L7 p
UDP 0.0.0.0:445 *:*
$ c4 l& B" s! N7 f* H- X2 sUDP 0.0.0.0:1026 *:*
% V3 Z" \; B1 o+ V: p+ P*****************************
* Q; @5 h1 l' W' x0 D****** arp -a *************** " Q$ l/ q' w* b* Q
*****************************
. m2 C' |7 Y, k2 QNo ARP Entries Found ( V/ s% q! j! D- W
*****************************
" C0 v" Z {1 D2 \3 B( ~" ]******fport ***************** 9 f9 c' c# k# b2 E
***************************** 6 ~. m6 f' J- M' s( f
FPort v2.0 - TCP/IP Process to Port Mapper
6 h) j7 v7 }3 C/ K5 uCopyright 2000 by Foundstone, Inc. * w9 {3 u- m7 v* X
http://www.foundstone.com 7 } e$ _" h# K) K3 V
Pid Process Port Proto Path 7 I# B; w S' c2 v: j W4 ~# l
400 svchost -> 135 TCP C:\WINNT\system32\svchost.exe
# Y% l+ J+ Z+ E# Q9 d- s8 System -> 445 TCP
7 c3 I9 U R3 U1 O, O2 a548 MSTask -> 1025 TCP C:\WINNT\system32\MSTask.exe 4 E5 B9 n: Q& M+ o
8 System -> 1027 TCP
+ X+ Y) A% J$ s: [772 nc -> 1028 TCP d:\nc.exe
2 c: O- V( A# q8 W8 X# X804 nc -> 1234 TCP D:\nc.exe
. I. z& p0 }+ T& k# F4 V400 svchost -> 135 UDP C:\WINNT\system32\svchost.exe 6 x+ U7 _$ E& X* q: b/ E! {6 T
8 System -> 445 UDP 7 E- r7 ]+ E$ N
216 services -> 1026 UDP C:\WINNT\system32\services.exe
7 C) d I! @/ M$ z& z7 e& P*****************************
( m3 Q4 n- I( w3 v' e- p: u: g****** pslist ************** 7 A0 `+ S C) Z4 `1 A. e. d j
***************************** 2 D7 _$ ]9 h$ g/ @9 |
PsList 1.22 - Process Information Lister # u1 t) }7 w$ r% ~' b
Copyright (C) 1999-2002 Mark Russinovich # Y$ h5 W5 N% L3 P. B
Sysinternals - www.sysinternals.com
; f$ h }. F/ {Process information for QQ: # k, i% H5 ~7 v2 G7 F D9 f
Name Pid Pri Thd Hnd Mem User Time Kernel Time Elapsed Time
* c. u; Y' q8 Y2 x& y& NIdle 0 0 1 0 16 0:00:00.000 1:00:26.364 1:01:14.203
6 U7 P7 R4 a$ sSystem 8 8 34 60 276 0:00:00.000 0:00:02.603 1:01:14.203 $ T5 U, b- R3 Y" x
smss 144 11 6 33 352 0:00:00.010 0:00:00.190 1:01:14.203
; T* }; r% e) t6 bcsrss 168 13 10 290 1216 0:00:00.100 0:00:06.218 1:01:11.649
* F- f+ [3 J4 e0 y% Lwinlogon 164 13 16 363 2692 0:00:00.220 0:00:00.610 1:01:10.307
1 v9 D, Y( l! h; N6 [: t2 Yservices 216 9 30 443 5016 0:00:00.320 0:00:00.731 1:01:09.216
: s2 J4 J. t! s: d! blsass 228 9 15 251 1176 0:00:00.240 0:00:00.080 1:01:09.196 1 n$ V( k7 k" v( q2 K& ?
svchost 400 8 9 242 3236 0:00:00.050 0:00:00.070 1:01:06.952 ) F# l9 E. z, Y* z }1 n9 l5 p
spoolsv 432 8 11 151 3672 0:00:00.030 0:00:00.020 1:01:06.742
& g# o/ d4 V) Isvchost 464 8 26 422 7416 0:00:00.120 0:00:00.180 1:01:06.722
" @% Z! z! Q9 @# V$ N+ r" G6 QKAVSvc 480 8 9 57 6732 0:00:01.582 0:00:00.130 1:01:06.622
6 x7 w6 z+ v$ j" p! p @0 t/ L: v: Mregsvc 532 8 2 30 964 0:00:00.010 0:00:00.010 1:01:06.201
/ d* i, l0 r9 ^0 h- eMSTask 548 8 6 117 3124 0:00:00.010 0:00:00.030 1:01:06.051 . p' l3 E' p4 w* b$ T( f" }$ M. O7 M
WinMgmt 600 8 3 105 160 0:00:05.998 0:00:00.260 1:01:05.020
, P. v, [9 J0 E5 qsvchost 672 8 5 144 4532 0:00:00.010 0:00:00.050 1:01:04.319
4 j. |% E. [3 U d D0 ^Explorer 836 8 18 385 7152 0:00:02.633 0:00:06.889 1:00:45.662 1 u- g2 Y' O& g1 t5 G
delttoul 1000 8 1 21 1516 0:00:00.010 0:00:00.000 1:00:43.158 ! R s6 D e: m; c% W+ v% W
internat 1016 8 1 31 1412 0:00:00.040 0:00:00.200 1:00:43.038 , J/ c0 B/ P$ i/ d: f6 D+ t
wordpad 320 8 4 85 944 0:00:08.462 0:00:07.530 1:00:22.729 * a7 b, K4 \0 ~& {. z
conime 840 8 1 19 1016 0:00:00.020 0:00:00.030 0:53:19.230 ) Z4 I- F1 f/ k6 Q# L) R5 @ ^
cmd 924 8 1 24 56 0:00:00.010 0:00:00.030 0:03:46.075 ( ]# D* q% a$ U7 Q+ f# N
nc 804 8 2 74 468 0:00:00.010 0:00:00.010 0:02:48.552
' F! R* n' X& u1 c2 T: y0 hcmd 392 8 1 24 516 0:00:00.010 0:00:00.010 0:01:19.774
- f" @9 K7 o" y% A; c: V# A* PCMD 916 8 1 24 1076 0:00:00.010 0:00:00.020 0:00:00.410 9 h9 t6 P) H3 C4 }( k& O0 B9 X
nc 772 8 2 75 2648 0:00:00.020 0:00:00.020 0:00:00.400 2 N; \) M9 v9 t- r/ |6 j
pslist 820 13 2 79 1452 0:00:00.020 0:00:00.020 0:00:00.120
4 M# d( @: D9 K x9 Z; K3 l***************************** * s+ |* Q' _4 u: d4 E) b5 ]; @
****** nbtstat -c************ % J# `2 ]- O+ } }
*****************************
T/ O! I; a: s$ h/ m***************************** ' |' X5 z4 g" }6 q! |: o! t
****** ipconfig ************
. h0 T5 e" `/ T' S& E6 a1 p; p***************************** + U7 a0 L( i+ q% Z& A& V. i
Windows 2000 IP Configuration Host Name . . . . . . . . . . . . : qq
. X6 B1 h# f$ n* j7 `Primary DNS Suffix . . . . . . . :
* Q* x* ?4 [4 ANode Type . . . . . . . . . . . . : Broadcast IP Routing Enabled. . . . . . . . : No WINS Proxy Enabled. . . . . . . . : No
/ s1 T. x9 C# D" }+ M***************************** 3 h% _: b5 T# f, B
******* end time *********** ) {# a, s2 \+ u3 G3 p$ G! ]
***************************** 6 u- X% ~! F3 S4 ]
当前时间: 9:27:08.28
0 M4 P: Y3 A9 @: f7 Z0 Q2 T输入新时间: & G6 X7 `+ k9 c9 O1 p% ^) U" e
******************************
1 K J! ^9 e H" j' k0 B******* end date *********
$ \' X K# K# b; N******************************
4 V) R/ j) {1 G5 i5 F) X2 B& O1 V当前日期: 2002-07-08 星期一 & `& t0 Q7 e3 p! K2 \8 [& }
输入新日期: (年月日) % F. t- {' S: B6 d8 x
4 r( F2 i1 l3 p( p5 Z8 R
怎么样,我们现在可以用得到的数据进行分析了吧,哈哈
5 W/ \: v0 H+ o; k9 | X& `
. V3 A3 r( f3 Z) }% [7 N- L8 P, f三.几个要注意的小问题:
5 o" }. _: F. s8 i$ e2 J1.在批处理文件中%win32% <=> c:\windows\system
c8 _, @4 P4 E2.在批处理文件中使用环境变量的时候,必须用%将变量包起来 / U$ O. L C# \" N( w& w) X* G
3.for %f in (*.*) do command cmdline $ j# x: B& D+ g, D% V& _4 k6 |
在批处理文件中%f要写成%%f 0 q. U+ d% q5 E" T
7 {9 { k7 i" D, s% @+ D
3 Y) A! ?* ^# q& x" f |