|
这几天一直在学习批处理,看了好多很好的文章,今天也把自己认为新学到的东西写出来和大家分享,嘎嘎 :> ( 别笑我写的不好) " \' K+ ]' W( n+ t e9 s
& P9 Y) a4 V0 W9 |
% R/ C% p5 _* B7 V6 f " \, J$ o- ?9 C" R& L& c/ M: l' Q! Q1 b
一.echo命令在深入 ( q# o! h5 x& m2 {1 F: [- ?3 c. a9 v
恐怕echo命令是大家最熟悉的命令之一了,常用格式:
1 C- }( g$ `) `echo on echo off
& ^( x7 i5 p+ T6 Y" V# w* mecho 欲输出信息 ' N! j+ ~, X7 O
下面写几个很多人不是特别熟悉的使用方法 8 q2 X g* o8 l# P7 S k) X
<1>首先进cmd: 0 B/ X* }; c/ c
****************************************************************
- ~1 D* l6 n N9 }; xMicrosoft Windows 2000 [Version 5.00.2195] & G3 I, Z# b) V4 X9 B6 D0 M; f' `9 O
(C) 版权所有 1985-2000 Microsoft Corp. 1 {# B7 d7 P0 T; O7 |; P7 J
C:\>echo off回车 //之后c:\> 就会消失,直到你重新输入echo on
8 u9 U5 @; b4 J2 i) Lecho on `' B8 q' b4 H& e9 _9 q8 ?1 o" x3 M
C:\> 5 x$ y. s/ w: b$ l( \& F/ m
****************************************************************
6 P# ~* p( `; N% D. e/ T0 g; E' {3 u<2>如何用echo向一个*.txt文件中写如一个回车呢? 8 f% J7 A3 m6 Z2 {, x
用echo 回车>a.txt 吗,哈,当然不是 ,这里就要用的命令:
$ n: E2 D3 [1 l8 [8 A$ U# D/ z9 `echo.>a.txt,echo.是关键,相当输出空行,即一个回车 " }. G, k( \, f" {* J
[e.g] 6 U! _, t, Z$ w' F- ]
echo.|time //把回车传递给time命令处理,在批处理中常用此法来显示时间并把信息写入一个指定的文件 . A' n; H) @' p$ O
echo.|del *.* //呵呵,搞破坏是很有用啊
3 A# B2 h7 v9 I. Z! Zetc.
' L& G" R5 ^# `3 Y) K<3>利用echo命令让喇叭唧唧的叫,哈哈 //可以用来吓唬人呦
$ o% _0 x& |. Y1 {% }2 [6 @1 t在cmd下输入: ( p' w* }9 q; T8 }' U$ X
echo空格,然后在按住ctrl键,之后连续点GGGGGGGGGGGGG,这样就会写出如下命令:
% u$ N2 ?; j% w0 a. }& h: K! w; Wecho ^G^G^G^G^G^G^G^G^G^G^G^G^G //注意:g越多,响的时间越长
; t5 F. W6 A* F" ?5 _二.批处理与应急响应
3 G9 B! G$ R) v+ v7 f5 Y( P首先引用2003年10月《黑客x档案》上的一些东西(那会儿一直忙着学习,没时间看,现在才......555555555):
# b* B, }# z! _& O6 \: j1 K3 C- O创建响应工具包: # L2 b8 K9 @! s& F# w3 l
cmd.exe----------------------------------nt/2000命令解释器 9 L+ X( C$ K+ q& B8 g
loggeden---------------------------------显示远程和本地连接的用户 * @; W( Y4 f k1 S9 u7 K4 m
rasusers---------------------------------显示出哪些用户具有权限访问nt工具命令箱 X4 i. M7 U. h
netstat----------------------------------列出监听端口 0 F. y7 O) ?/ m& e" r" `. F
fport------------------------------------端口进程关联工具
8 @4 R$ s4 L+ |pslist-----------------------------------列出进程
" t0 m: W0 _4 W" z9 D, Vlistdll----------------------------------列出运行进程以来的动态连接库
# R3 I* o5 t* R2 a4 B& y) ~$ unbtstat----------------------------------列出最近十分钟NetBios的连接 ( |# ^4 J6 `* Y. n4 u
arp--------------------------------------显示最后一分钟连接的系统的MAC地址 F1 p2 n. T: ~7 V, W, }
md5sum-----------------------------------md5校检和工具
9 k' B9 W& `4 n5 ] D$ c4 O7 Ycca.exe----------------------------------检验克隆管理员帐号的工具 ; A6 Y" m# {( ^5 }
doskey-----------------------------------显示cmd命令历史的工具 # ^, B7 n, _4 l* ?; M
.......
" \; Z4 p! R; P% r; o1 Q....... 0 v5 [7 B% M# o8 @
.......
) z4 ]; z( ]. U) |2 F把你认为的对取证有用的东西都放进去
; S# ^. n5 w# C L+ S# h3 t原文的作者说的取证的方法是一次一次的输入命令并把information转移到安全的存储设备中去,这样一个麻烦的工作,我们何不利用批处理文件简化它呢,我的方法如下:
# D D# E4 J1 N" q1 U* q* Y" x比如受害的机器名是qq,安全的机器是127.0.0.1 ; q) k3 o% a. \; X% h; H2 L! b& s
(这里,qq&127.0.0.1都是我,也就是说我是在一台机器上模拟我想说名的过程) 5 D5 C9 J" I+ P( U6 V7 A
qq_cmdline: " z1 \% s" R9 G6 [1 }! ?
xiangying.bat|nc -vv 127.0.0.1 1234 - h* ?, S! a' r; {9 M( l
127.0.0.1_cmdline: + \! j; g# P7 ]9 |" I' x3 ?$ j
nc -l -p 1234>xiangying.txt 4 H* F d& G0 T1 i; y
--------------------xiangying.bat-------------------------
, f5 g U. b" }/ ?@echo off
6 t* B0 T) p; O, recho ******************************
' V2 I2 m z% K3 l ?8 E) }( @echo ******* start date ********* & w1 r# _6 U0 Y+ w" ]! X
echo ******************************
7 H+ J; X& o @) i( aecho.|date
5 @ C4 ~. B' T9 B! D3 pecho ****************************** $ g! ]7 Z" U- ~3 O/ Q
echo ****** start time **********
/ ~1 n6 p! q0 |4 y* u! G) ?echo ****************************** 4 s: m) H, u& [1 V
echo.|time : W( }9 P8 N2 i i+ m
echo ******************************
4 I9 [ e$ }$ _echo ****** netstat -an ********** 2 ^$ k* V( X$ F$ t0 u; x
echo ****************************** $ y. B. ]1 D5 @$ }
netstat -an 2 a" M' ~- ^8 ?9 L" O: w
echo ***************************** 6 c- \$ E" `8 P: n% f+ k2 B
echo ****** arp -a *************** * A' R0 `' k% y1 h/ W
echo ***************************** ' g5 t2 v5 J2 D$ G
arp -a
) `# V- \( e: I+ Mecho ***************************** % Y; E2 `9 S( j( W t; D% Y* p' D
echo ******fport *****************
8 a1 C/ n9 B j) w) s" e) zecho *****************************
}. u. B2 T6 c: d) |fport 9 R0 q# ]2 \4 O5 h" {
echo *****************************
! C# u% G v# M6 a* Q9 Wecho ****** pslist **************
5 a. [8 x+ ^; p- q- secho ***************************** ; O4 ?* b% a2 r8 S6 k
pslist
A" C2 v; d$ H% j `6 ~echo *****************************
) c+ ?" _) }6 d% H7 i1 fecho ****** nbtstat -c************
& C4 F% w7 P) ~echo ***************************** . Y: O' y: `- e$ _
nbtstat -c
% @* t7 r, ]5 v7 y8 A3 P0 z3 _9 `echo *****************************
; i2 ?/ M% e3 w3 J: a# m/ U5 s/ Hecho ****** ipconfig ************
3 m& I& B0 _2 A8 O# @* decho *****************************
! z4 p3 z$ ]. ^! d4 U |, Y$ Eipconfig /all 6 n1 |( [# _7 K4 V
echo *****************************
1 y# t0 a& V5 {; s0 h: z. Oecho ******* end time *********** / T5 ~6 f% O9 S* t' b
echo *****************************
' ~. f, U7 M5 p8 h8 ]: F8 Lecho.|time
1 ~8 W! t/ P5 W4 ^7 g3 ]echo ******************************
9 i9 t& u, y5 _& }6 s' N1 Pecho ******* end date *********
1 F" u* g3 r; g5 Z' ~) w2 R( iecho ****************************** # n9 A% y4 }* c& h! |" p( q
echo.|date
7 r6 |: T: O& V8 b. J6 Z----------------------------end,save as xiangying.bat---------------------------
7 e! B7 K6 h8 Z. ~/ _注意:在本例中,由于我的电脑上没有那么多工具,所以我xiangying.bat的内容是不全面的,但是大家就可以按照上面给出的格式自己写了 * @# [' r( H( f5 X9 d" c1 o
下面我给出我实验是得到的xiangying.txt是什么样子 6 c8 ]" x$ \ L" E, ?
******************************
: m* r2 F i( ?! \% u, h1 s******* start date ********* 8 p7 a- h' O3 g$ C) `7 R
******************************
# [6 T* H; z3 G& p当前日期: 2002-07-08 星期一
9 J+ X+ Z; h% ?输入新日期: (年月日)
! ]3 @: _* q! D7 [0 E0 _ ?******************************
3 P( q4 S- L9 _& ]5 k3 y****** start time ********** 4 r1 s1 a" U, M( F
******************************
K- e& g' h* f4 a" I) E# {4 h* |当前时间: 9:27:07.80
. L' f8 s: X4 |' x6 x4 v输入新时间:
6 o' R; n" {2 L# O9 D0 T****************************** 3 e/ E8 I9 A2 L
****** netstat -an **********
" L6 ?3 [. }: w+ q****************************** % X1 e. f2 O+ b
Active Connections 9 U; G: n! z/ ~' P3 w
Proto Local Address Foreign Address State
9 t. |9 B. `1 F/ }! A8 M3 s3 Q9 gTCP 0.0.0.0:135 0.0.0.0:0 LISTENING 8 n2 C( f L- o" u
TCP 0.0.0.0:445 0.0.0.0:0 LISTENING + M# b% ]4 f/ [) X: R) y8 T) t3 o
TCP 0.0.0.0:1025 0.0.0.0:0 LISTENING
- K- K% m @ m1 T7 ^TCP 0.0.0.0:1027 0.0.0.0:0 LISTENING
j8 A, ?* U( T. J+ M7 NTCP 0.0.0.0:1028 0.0.0.0:0 LISTENING
. _. [# {. u! a7 G3 t0 I" BTCP 0.0.0.0:1234 0.0.0.0:0 LISTENING * o5 P5 Q3 E3 \4 @
TCP 127.0.0.1:1028 127.0.0.1:1234 ESTABLISHED 1 z6 m! \5 F S9 R2 t4 u0 P Z. w" D
TCP 127.0.0.1:1234 127.0.0.1:1028 ESTABLISHED - t5 J; c B+ k
UDP 0.0.0.0:135 *:* , D0 Q: p/ O1 T. a+ k
UDP 0.0.0.0:445 *:* 8 k' k- ~" g& p
UDP 0.0.0.0:1026 *:* 3 y( h% U+ x3 p0 m
*****************************
4 w' M. s/ ^; G+ G****** arp -a *************** 7 e' F1 t2 J. e6 `1 l4 X. Y0 e
*****************************
4 u! o/ w+ O! M% gNo ARP Entries Found
9 _: P. Y; l0 u***************************** ; U. m6 m% R8 Q/ G l# q& M2 O
******fport ***************** $ I/ W9 L9 o$ |; N5 W
*****************************
6 |/ A* }3 \6 n4 TFPort v2.0 - TCP/IP Process to Port Mapper
+ Q" L7 z# t6 o; @Copyright 2000 by Foundstone, Inc. . e$ w! W0 ?0 A' ]
http://www.foundstone.com $ g' y# w3 T0 v3 ^/ G5 N, n {
Pid Process Port Proto Path ( f8 A# Q* h' U
400 svchost -> 135 TCP C:\WINNT\system32\svchost.exe - d8 i% Q8 J; O. D) _
8 System -> 445 TCP
# g) e* x6 I6 G" n548 MSTask -> 1025 TCP C:\WINNT\system32\MSTask.exe
) ?( j- i' n, L. G- A8 System -> 1027 TCP # r. K2 z0 V8 f0 v. N2 t3 _
772 nc -> 1028 TCP d:\nc.exe
# I& U4 r& P( e. p% o804 nc -> 1234 TCP D:\nc.exe 2 ~4 o5 b, P" G8 k1 r
400 svchost -> 135 UDP C:\WINNT\system32\svchost.exe
, q8 h% {, N+ J1 t# s8 System -> 445 UDP # G W. b6 }1 N3 `
216 services -> 1026 UDP C:\WINNT\system32\services.exe & M+ s1 B' _/ }. `9 Q
***************************** / R7 n( j( Z. J
****** pslist **************
0 j6 x8 M) ?8 [0 Q. `*****************************
, a# U$ x2 ^, z4 B" qPsList 1.22 - Process Information Lister
% Y2 e0 \$ V1 o/ h; r4 x: P |! FCopyright (C) 1999-2002 Mark Russinovich
" Q& @. R% y6 s) E! c( eSysinternals - www.sysinternals.com
8 a8 L7 [. ^% m+ d% E+ d7 VProcess information for QQ: # B8 S3 W& |9 x6 s5 s
Name Pid Pri Thd Hnd Mem User Time Kernel Time Elapsed Time
# Z: b9 _. c; X1 A$ F3 hIdle 0 0 1 0 16 0:00:00.000 1:00:26.364 1:01:14.203 8 b; D' m: _" N2 N3 j
System 8 8 34 60 276 0:00:00.000 0:00:02.603 1:01:14.203
. b# H; y0 t5 M, j! g0 M! M6 C" qsmss 144 11 6 33 352 0:00:00.010 0:00:00.190 1:01:14.203
5 N4 i* q& Q8 ]4 Y5 Z* D! M( Pcsrss 168 13 10 290 1216 0:00:00.100 0:00:06.218 1:01:11.649
' q* b3 h# d, L1 F, ]winlogon 164 13 16 363 2692 0:00:00.220 0:00:00.610 1:01:10.307
4 _. w- _3 P5 m6 h0 }" O1 \services 216 9 30 443 5016 0:00:00.320 0:00:00.731 1:01:09.216
* y W2 P' J/ A3 D, \3 P2 tlsass 228 9 15 251 1176 0:00:00.240 0:00:00.080 1:01:09.196 $ U2 i/ o/ f: k4 u2 u; i
svchost 400 8 9 242 3236 0:00:00.050 0:00:00.070 1:01:06.952 ( M( {' X8 C( s5 s: |4 L
spoolsv 432 8 11 151 3672 0:00:00.030 0:00:00.020 1:01:06.742 ! o, X0 C5 {! Q6 H
svchost 464 8 26 422 7416 0:00:00.120 0:00:00.180 1:01:06.722 9 ^6 L% ^% @: P- c) X
KAVSvc 480 8 9 57 6732 0:00:01.582 0:00:00.130 1:01:06.622 ! g: k7 ]( G: o8 n* W
regsvc 532 8 2 30 964 0:00:00.010 0:00:00.010 1:01:06.201
- }8 v9 i2 ]6 CMSTask 548 8 6 117 3124 0:00:00.010 0:00:00.030 1:01:06.051
4 n2 h: ?6 J" c( rWinMgmt 600 8 3 105 160 0:00:05.998 0:00:00.260 1:01:05.020 : A0 ~7 i0 Y. J! p- _9 v/ V
svchost 672 8 5 144 4532 0:00:00.010 0:00:00.050 1:01:04.319 9 j0 e* _! o1 m, t+ T
Explorer 836 8 18 385 7152 0:00:02.633 0:00:06.889 1:00:45.662 ' r; v4 G# o. y. F+ u
delttoul 1000 8 1 21 1516 0:00:00.010 0:00:00.000 1:00:43.158
; U0 q0 F1 s L9 C3 o: M% sinternat 1016 8 1 31 1412 0:00:00.040 0:00:00.200 1:00:43.038 ; G% P& V- G6 w: l
wordpad 320 8 4 85 944 0:00:08.462 0:00:07.530 1:00:22.729
7 B" Q) t- Y, g: k/ e% K' A) Mconime 840 8 1 19 1016 0:00:00.020 0:00:00.030 0:53:19.230 ( m! J3 V5 e) m
cmd 924 8 1 24 56 0:00:00.010 0:00:00.030 0:03:46.075 " h$ q, Q1 d' [7 b) z& Q
nc 804 8 2 74 468 0:00:00.010 0:00:00.010 0:02:48.552
6 _2 w7 h0 M5 ^- j) c( Ecmd 392 8 1 24 516 0:00:00.010 0:00:00.010 0:01:19.774
! S9 f0 S g& T% w' l# BCMD 916 8 1 24 1076 0:00:00.010 0:00:00.020 0:00:00.410
& ^: h4 k/ l) f1 U rnc 772 8 2 75 2648 0:00:00.020 0:00:00.020 0:00:00.400
4 R5 y/ K" q9 L! M _. xpslist 820 13 2 79 1452 0:00:00.020 0:00:00.020 0:00:00.120 4 I: i2 Z- I9 T6 [+ Y
***************************** ( J8 e' r6 W& [4 d' C+ }; I
****** nbtstat -c************ " G: q0 N8 O$ j
***************************** , U u. x2 O7 f) Y' i
*****************************
/ E2 c& B7 Q5 z****** ipconfig ************ 5 F# F8 |" D5 a
***************************** + d3 W2 D1 k, K! j! |" h, r! R
Windows 2000 IP Configuration Host Name . . . . . . . . . . . . : qq
+ H; S: P2 Z8 x8 H( ^! z, ~0 ?/ RPrimary DNS Suffix . . . . . . . :
& s1 \: Q4 H* w. c) i0 mNode Type . . . . . . . . . . . . : Broadcast IP Routing Enabled. . . . . . . . : No WINS Proxy Enabled. . . . . . . . : No 3 J" Q F# G6 t! D' I6 i
*****************************
1 I! p! G& A: A6 f******* end time ***********
8 m6 L! N4 c9 f***************************** 6 i5 }2 i$ \2 O2 `
当前时间: 9:27:08.28 3 x2 i& r0 ?- ?4 o7 N; s& I: l
输入新时间: 2 n: z1 a3 t$ j- V: @" A, W, F" H
****************************** 8 n/ F5 m8 Z" p
******* end date *********
* \. M7 Y% Q7 b( Y: U8 u******************************
3 L4 X1 ]( O9 n# n1 t0 u当前日期: 2002-07-08 星期一 / P t& m. R5 @% w6 e) j3 t
输入新日期: (年月日)
, @+ D, o' l8 @% |, G" J! V9 _1 Z' ?- W/ C" i+ m9 g/ e
怎么样,我们现在可以用得到的数据进行分析了吧,哈哈 & K/ A3 J- W5 `& b4 E' z" \
+ D z R: S, W2 y |
三.几个要注意的小问题: % w: n3 `5 {! D% F; r; L) t
1.在批处理文件中%win32% <=> c:\windows\system
$ j# `0 j7 ?# [% m l4 N2.在批处理文件中使用环境变量的时候,必须用%将变量包起来
) o7 {4 z% O* Y8 a4 }; z3.for %f in (*.*) do command cmdline
3 `" T' R( k/ |* e在批处理文件中%f要写成%%f
$ {/ M: s3 h: T# W- @. I/ @1 i# ^
; b$ k& M- a$ o3 o
. |) s2 Q8 S# s' H3 C |