个人实验:常见端口风险详解 + NMAP 内网实战扫描教程

前提准备

  1. 需要有个VMmare虚拟机------准备一个linux或者Windows系统的虚拟机(靶机)、kali(攻击机)。
  2. 右键虚拟机设置网络环境→攻击机和靶机都设置成这样
  3. 我这里之前有CentOS7系统,所以将其作为我的靶机。此时需要看看是不是在同一个网段下
bash 复制代码
#kali下
ifconfig
#CentOS下
ip addr

可能有人会问为什么这两个内核都是Linux,查询ip网段的命令不一样?

这是因为这两个命令都不是Linux自带的内核命令,而kali应该是Debian系而CentOS是RHEL系,两家派系不同规矩也自然不同。

  1. 此时我发现我的CentOS网段不是192.168.xxx.xxx,这个是因为Docker容器自动创建的内部虚拟网桥IP(如果你们也是这个跟着我的步骤操作)
bash 复制代码
# 手动把ens33网卡从DOWN改为UP启用
ip link set ens33 up

# 向NAT网关申请分配同网段IP
dhclient ens33

# 查看最终网卡和IP状态
ip addr
  1. 临时关闭靶场防火墙(方便初学扫描)

    CentOS 关闭防火墙

    systemctl stop firewalld
    setenforce 0

  2. 安装开启常见服务(模拟企业真实资产)

    yum install -y httpd vsftpd openssh-server mysql
    systemctl start httpd # 80端口
    systemctl start vsftpd # 21端口
    systemctl start mysqld # 3306端口
    #如果是centos用systemctl start mariadb(也记得yum install -y mariadb-server)

实验开始

  1. 先在靶机输入ip addr,获取内网IP地址
  2. 然后在攻击机中使用ping 你的CentOS靶机IP -c 4,查看是否能ping通,如果可以就进行资产扫描!
  3. 资产扫描第一步用nmap -sn 192.168.xxx.0/24,扫描整个网段,找出内网所有开机在线的主机。
  4. 我们针对靶机进行端口扫描nmap -sV 靶机IP,成功获得21,22,80,3306我们之前在靶机中获得的端口。(22端口是SSH远程登录端口,系统自启动端口,如果不使用的话要关闭这个也是容易被攻击的端口)
  5. 也可以使用这个nmap -p 1-65535 -sV 靶机IP,找出隐藏开放的高危端口(上面那个不会扫描冷门、自定义、低频次的端口,这个会全部扫描,但是这个耗时比较久),在正式场合,推荐使用这个命令
  6. 一键简易漏洞风险探测 nmap --script vuln 靶机IP

常见端口对应服务以及防守重点

端口 服务 风险 / 蓝队重点
21 FTP 文件传输 匿名访问、弱口令、任意文件上传/下载、源码泄露
22 SSH 远程连接 暴力破解、弱口令拿root、挖矿木马、内网横向
23 Telnet 明文远程 账号密码明文传输,无加密,必须关闭
80 HTTP 网页服务 SQL注入、XSS、文件上传、webshell、网页篡改
443 HTTPS 加密网页 同80,SSL漏洞、伪造证书、隐蔽后门
3306 MySQL 数据库 弱口令、未授权访问、拖库、数据泄露
6379 Redis 缓存 无密码未授权、写入公钥/定时任务、直接提权
8080 备用Web/Tomcat/代理 后台泄露、Tomcat弱口令、非法VPN穿透、隐蔽代理
8443 加密后台/SSL VPN 管理后台暴露、未授权访问
445 SMB 文件共享 永恒之蓝、蠕虫、勒索病毒、内网横向扩散
139 共享服务 配合445攻击、内网探测、共享文件泄露
3389 Windows远程桌面 暴力破解、勒索病毒、服务器被控
161 SNMP 网络设备 读取设备配置、账号、内网拓扑,资产泄露

Namp进阶用法

弱口令爆破

bash 复制代码
# 靶机端执行
mysql -h 127.0.0.1 -u root

然后进入SQL命令行

  1. 第一步:配置高危弱口令 + 允许远程登录(靶机测试用)
mysql 复制代码
-- 设置root密码为极弱口令 123456
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123456');

-- 最危险配置:允许root从任何IP远程连接(真实环境绝对禁止!)
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456';

-- 立即生效权限
FLUSH PRIVILEGES;

exit;

退出之后,重启数据库服务确保配置生效:

bash 复制代码
systemctl restart mariadb
  1. 第二步:Kali 端弱口令爆破实战
bash 复制代码
nmap -p 3306 --script mysql-brute 你的靶机IP

扫描报告规范化导出

bash 复制代码
nmap -sV 靶机IP -oN 护网资产隐患报告.txt

可以看到确实有这个报告

相关推荐
Flynt2 天前
npm v12 来了:allowScripts 默认关闭,我的项目差点跑不起来
安全·npm·node.js
冬奇Lab6 天前
Skill 系列(02):Skill 安全风险——三类攻击面的实战测试
人工智能·安全·开源
Aphasia3119 天前
VPN 与内网穿透
安全
Mr_愚人派11 天前
当"Claude"不再是 Claude:一次第三方 API 代理引发的 AI 身份伪造排查实录
人工智能·安全
DaLi Yao11 天前
【无标题】
人工智能·安全
Alsn8611 天前
等待学习-学习目录:Docker 容器安全攻防
学习·安全·docker
网络研究院11 天前
2026年网络安全
网络·安全·法律·法规·趋势·发展
treesforest11 天前
AI安全系统如何识别异常访问?IP风险识别正在成为关键能力
网络·人工智能·tcp/ip·安全·web安全
零零信安11 天前
零零信安荣登数世咨询《新质·数字安全专精百强(2026)》暗网情报领域,彰显专业实力与创新引领
安全·网络安全·数据泄露·暗网·零零信安
开发小能手-roy11 天前
StringBuilder vs StringBuffer:2024年还需要线程安全字符串吗?
开发语言·python·安全