Kali Linux 渗透测试之主动收集(端口扫描)

**

隐蔽端口扫描:

**
一、我们使用scapy扫描,因为syn包的发送是在tcp的flag中决定的,所以我们要构造tcp包,tcp包由ip和tcp包头组成。

root@kali:~# scapy
WARNING: No route found for IPv6 destination :: (no default route?)
Welcome to Scapy (2.3.2)
>>> a=sr1(IP(dst="192.168.19.131")/TCP(flags="S"),timeout=1,verbose=0) //发送syn包。
>>> a.display()
###[ IP ]###
  version= 4L
  ihl= 5L
  tos= 0x0
  len= 40
  id= 989
  flags= DF
  frag= 0L
  ttl= 64
  proto= tcp
  chksum= 0x8e9e
  src= 192.168.19.131
  dst= 192.168.19.129
  \options\
###[ TCP ]###
     sport= http
     dport= ftp_data
     seq= 0
     ack= 1
     dataofs= 5L
     reserved= 0L
     flags= RA                           //RST,ACK。说明目标的80端口未开放,但是机器是存活的。
     window= 0
     chksum= 0x717
     urgptr= 0
     options= {}
###[ Padding ]###
        load= '\x00\x00\x00\x00\x00\x00'

我们用wireshark查看一下:
在这里插入图片描述我们查看一个开放的ip:
我们首先用nmap查看目标主机开放了什么端口。

>>> a=sr1(IP(dst="192.168.19.1")/TCP(flags="S",dport=902),timeout=1) 
Begin emission:
.Finished to send 1 packets.
*
Received 2 packets, got 1 answers, remaining 0 packets

我们看到我们先是发送了一个syn包,然后目标主机发送给我们一个syn、ack包,表示对方主机在线并且端口开放。
注意:第三个tcp的包不是两台机器之间产生的包,他是由操作系统内核产生的,目标系统不知道我们用scapy发了一个数据包,当目标系统接受到了一个syn包之后会返回一个syn+ack包,但是扫描机器会认为这是一个没有任何原因就发送过来的包,所以扫描机器会返回一个RST包。
在这里插入图片描述

二、nmap扫描

root@kali:~# nmap 192.168.19.1 -p1-100  --open  //扫描主机 192.168.19.1 1到100是否开放并且只显示open的端口
root@kali:~# nmap  -sS 192.168.19.1 -p1-100  --open  //加不加-sS 一样。
root@kali:~# nmap  -sS 192.168.19.1 -p 80,50,60   //用,隔开端口

三、hping3

root@kali:~# hping3 -c 10 -S --spoof 192.168.1.140  -p  ++1 192.168.131   //-c 指定发包属性  -S 发送syn包
--spoof 伪造ip -p指定端口  ++1指定扫描端口+1  

但是这种扫描我可以扫描目标主机,对方主机也可以给我们回包,但是返回的信息给了伪造的ip,如果我们想查看ip只能登陆到140的主机查看。
**

全连接端口扫描:

**
如果我们隐蔽端口扫描未扫描到端口,我们可以进行全连接端口扫描即tcp三次握手,全连接扫描很准确但是会被发现。
如果我们用scapy进行三次握手建立,当我们发给目标机器一个syn的时候,对方给我发送一个syn+ack包,此时主机的内核会自动发送一个RST包给目标机器来终止此次连接。
如何解决?
我们可以用python来写脚本,具体过程在这里就不叙述了,在以后的python模块会详细说明。
nmap工具可以解决这个问题:

root@kali:~# nmap -sT 192.168.19.1  //-T 参数表示使用Tcp全连接扫描

dmitry:

root@kali:~# dmitry -p 192.168.19.1   //-p tcp端口扫描
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值