渗透测试:主机发现和端口扫描的方法总结

admin 2024年7月30日22:42:32评论83 views字数 3251阅读10分50秒阅读模式

信息搜集是渗透测试的第一步,而主机发现和端口扫描则是信息搜集的关键步骤。后续的渗透测试都是基于开始搜集侦察的信息进行测试的。

这一步一定要保证把信息搜集完整齐全,否则一旦后续渗透过程出现了思路不畅,就会返工完全重做,非常浪费时间哪怕是扫描不到有效的信息,也要及时记录

Nmap环境

方法一:

Nmap扫描 

 nmap是进行主机发现和端口扫描最为常见的工具,但由于nmap这个工具过于出名,其流量特征早已被分析透彻,因此使用nmap进行扫描是很容易暴露痕迹的,容易被蓝队发现。在常规的打靶自学中,nmap还是非常常规的工具,我们应该熟悉其常规的参数和原理。

nmap的参数使用帮助可使用nmap --help查看:

sudo nmap --help

nmap参数很多,细小的参数差异可能实现很多不同的功能,所以我们应该对nmap的参数有一定的研究,才能让我们在遇见需求时,选择正确的参数 

常用参数

-sn ping扫描,用于扫描自己主机的整个c段,用来探针网段内存活主机

-sT TCP扫描,扫描通过tcp的协议

-sU UDP扫描,扫描通过UDP的协议

-sV 服务版本,显示扫描的存活端口开放服务的具体版本

-O 操作系统,显示目标主机的操作系统

-p 接开放端口,-p-  全端口扫描

--script=漏洞脚本  常用脚本:vuln

-min-rate 10000 最小扫描速度,nmap以不小于每秒10000次的速率进行扫描

        10000这个数字是权衡的结果,数字过大,则扫描速度过快,有可能会有端口遗漏;数字过小,则扫描速度过慢,浪费时间。实际情况中建议扫描两次,保证没有端口遗漏。

1.主机发现:

对整个网段进行扫描。如果靶机和攻击机在同一个网段,我们可以扫描自己的网段确定靶机的ip,命令如下:

sudo nmap -sn 192.168.254.0/24

渗透测试:主机发现和端口扫描的方法总结

网段中这么多ip怎么确定那个ip是我们的目标主机?

在实际的渗透中,要想保证扫描准确,可以在靶机上线前后各进行一次扫描,对比上线的ip即可确定靶机的ip

2.端口扫描:

2.1.全端口扫描

通过-min-rate 限制扫描速度,快速准确的扫描出目标主机的存活ip

sudo nmap -min-rate 10000 -p- 192.168.254.142

渗透测试:主机发现和端口扫描的方法总结

在实际的渗透过程中,会有网络延迟,防火墙的干扰,所以建议扫两遍以免遗漏;如果两次结果不同,就要分析原因调整参数;可以看到这些端口协议都走TCP

2.2.UDP扫描-扫描走UDP的端口是否有存活

UDP端口暴露的攻击面虽然较小,但我们也不要遗漏信息

sudo nmap -sU -min-rate 10000 -p- 192.168.254.142

渗透测试:主机发现和端口扫描的方法总结编辑

2.3.服务版本探测

我们最为看重的一次扫描,会出现各种有价值的信息(各端口服务版本,操作系统版本)

sudo nmap -sT -sV -O -p22,80,3306,8080 192.168.254.142

渗透测试:主机发现和端口扫描的方法总结

2.4.漏洞脚本扫描 

nmap中自带了一些内置脚本,其中就用漏洞脚本vuln,vuln是vulnerbility漏洞脆弱点的简写

sudo nmap --script=vuln -p22,80,3306,8080 192.168.254.142

渗透测试:主机发现和端口扫描的方法总结

表示探测这些端口的漏洞。这一步扫描的时间较长,可能需要几分钟时间。nmap的漏洞扫描结果可以给我们一个渗透测试的大致思路,即哪里的漏洞较多,我们可以从哪个端口入手进行渗透。通常情况nmap的漏洞扫描不会有太多结果,仅仅是一个辅助

非nmap环境

实际情况中,可能我们无法使用nmap进行主机发现(不想暴露流量特征/nmap被ban/环境中没有nmap且无法联网等情况)

方法一:arp-scan-主机发现

arp-scan -l

一种基于ARP协议的网络扫描工具,可以快速扫描整个网段并显示活动主机的IP地址和MAC地址

渗透测试:主机发现和端口扫描的方法总结

方法二:ping命令-主机发现

ping命令查看帮助文档

ping --help

但ping命令每次只能ping一个,所以结合bash脚本,扫描整个c段

for i in {1..254}; do ping -c 1 -W 0.1 192.168.254.$i|grep from;done

渗透测试:主机发现和端口扫描的方法总结

可以很方便的看到这个网段范围内存活的一些主机

方法三:netcat-端口扫描

 利用nc进行端口扫描,不过要实现端口扫描用的是旧版的nc,而kali中默认安装的新版的nc,因此要使用nc.traditional,可以先用nc.traditional -h查看参数帮助:

nc.traditional -h
  • -vv: 这是命令的选项之一,表示进行详细的输出(verbose)。通过使用该选项,命令将提供更多关于扫描进程的信息。

  • -z: 这也是命令的选项之一,表示进行端口扫描。它会尝试建立到指定IP地址和端口的连接,但不发送任何实际的数据。

端口扫描:

扫描20-120的端口开放情况,这是完成过滤后的语句,只会显示存活端口

sudo  nc.traditional -vv -z 192.168.254.142 1-65535 2>&1| grep -v refused

渗透测试:主机发现和端口扫描的方法总结

方法四:伪设备-端口扫描

伪设备,即/dev/tcp/ ,此处需要bash环境,而kali中的默认shell环境是zsh,可以用如下命令看到:

什么是伪设备?

在linux中所有设备都是映射成的文件,所以用文件模拟设备

echo $SHELL

渗透测试:主机发现和端口扫描的方法总结

先切换bsah环境(该命令在bash环境下更稳定)

bash

我们需要输入bash字符调整为bash的shell环境,若对20~120号端口进行扫描,bash脚本如下:

for i in {20..120}; do (echo < /dev/tcp/192.168.254.142/$i) &>/dev/null && printf "n[+] The open port is : %dn" "$i" || printf ".";done

渗透测试:主机发现和端口扫描的方法总结

这个脚本的作用是遍历指定的端口范围尝试与目标IP地址的每个端口建立TCP连接。如果连接成功,则显示一个带有开放端口号的消息,如果连接失败,则显示一个点号.表示关闭端口,同时表示程序正在运行。这样可以快速扫描目标主机的端口,识别哪些端口是开放的。

for循环会依次遍历端口号,循环体中使用/dev/tcp特殊文件(伪设备)来进行基于TCP的端口连接测试。192.168.200.144是要扫描的目标IP地址,$i表示当前循环的端口号。

这里插叙一下,如果遍历所有端口1-65535,时间会很长,通常情况大部分端口都是关闭的,会输出很多点. 如果我们想终止程序,需要用ctrl + z,然后再kill -9 %1终止上一条命令

渗透测试:主机发现和端口扫描的方法总结

---------------公众号福利----------------

渗透测试:主机发现和端口扫描的方法总结

网络安全学习资料

渗透测试:主机发现和端口扫描的方法总结

渗透测试:主机发现和端口扫描的方法总结

资料目录
  1. 成长路线图&学习规划

  2. 配套视频教程

  3. SRC&黑客文籍

  4. 护网行动资料

  5. 黑客必读书单

  6. 面试题合集

282G网络安全/黑客技术入门学习大礼包》,可以扫描下方二维码免费领取
渗透测试:主机发现和端口扫描的方法总结
1.成长路线图&学习规划
要学习一门新的技术,作为新手一定要先学习成长路线图方向不对,努力白费
对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图&学习规划。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

渗透测试:主机发现和端口扫描的方法总结

渗透测试:主机发现和端口扫描的方法总结
2.视频教程
很多朋友都不喜欢晦涩的文字,我也为大家准备了视频教程,其中一共有21个章节,每个章节都是当前板块的精华浓缩
渗透测试:主机发现和端口扫描的方法总结
渗透测试:主机发现和端口扫描的方法总结
3.SRC&黑客文籍
大家最喜欢也是最关心的SRC技术文籍&黑客技术也有收录
SRC技术文籍:
渗透测试:主机发现和端口扫描的方法总结
黑客资料由于是敏感资源,这里不能直接展示哦!
4.护网行动资料
其中关于HW护网行动,也准备了对应的资料,这些内容可相当于比赛的金手指!
渗透测试:主机发现和端口扫描的方法总结
5.黑客必读书单

渗透测试:主机发现和端口扫描的方法总结

6.面试题合集
当你自学到这里,你就要开始思考找工作的事情了,而工作绕不开的就是真题和面试题。
渗透测试:主机发现和端口扫描的方法总结
更多内容为防止和谐,可以扫描获取~
渗透测试:主机发现和端口扫描的方法总结
朋友们需要全套共282G的《网络安全/黑客技术入门学习大礼包》,可以扫描下方二维码免费领取
渗透测试:主机发现和端口扫描的方法总结

渗透测试:主机发现和端口扫描的方法总结

END

渗透测试:主机发现和端口扫描的方法总结

渗透测试:主机发现和端口扫描的方法总结编辑

原文始发于微信公众号(墨瞳编程):渗透测试:主机发现和端口扫描的方法总结

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年7月30日22:42:32
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   渗透测试:主机发现和端口扫描的方法总结https://cn-sec.com/archives/3015910.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息