内网安全检查/渗透总结
字数 5369 2025-08-29 08:32:18
内网安全检查与渗透测试全面指南
1. 内网安全检查/渗透介绍
1.1 攻击思路
两种主要攻击思路:
-
外网服务器渗透路径:
- 攻击外网服务器获取权限
- 利用外网服务器作为跳板攻击内网其他服务器
- 获取敏感数据并外传
- 视情况安装长期后门实现持续控制
-
办公网渗透路径:
- 通过社工攻击办公网系统/电脑/无线网络
- 获取办公网登录凭证
- 横向移动至生产网获取数据
实际攻击中常结合两种思路
1.2 敏感目标
- 高管/管理员/财务/人事/业务人员的个人电脑
- 文件/共享服务器
- 邮件服务器
- OA系统服务器
- 数据库服务器
1.3 攻击过程(外网渗透路径)
- 信息收集阶段
- 漏洞验证/攻击阶段
- 后渗透阶段
- 日志清理阶段
2. 信息收集
2.1 主机发现
- 工具:Nmap、Masscan、Kali主机发现工具
- 替代方案:自定义Ping循环脚本
- 受限环境:使用隐蔽的主机发现技术
2.2 端口扫描
工具选择:
- 授权环境:Nmap、Masscan
- 跳板环境:Metasploit模块或上传扫描工具
- 已控服务器:自定义扫描脚本
端口扫描脚本示例:
# Python 3端口扫描脚本
import socket, threading
def TCP_connect(ip, port_number, delay, output):
TCPsock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
TCPsock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
TCPsock.settimeout(delay)
try:
TCPsock.connect((ip, port_number))
output[port_number] = 'Listening'
except:
output[port_number] = ''
def scan_ports(host_ip, delay):
threads = []
output = {}
for i in range(10000):
t = threading.Thread(target=TCP_connect, args=(host_ip, i, delay, output))
threads.append(t)
for i in range(10000):
threads[i].start()
for i in range(10000):
threads[i].join()
for i in range(10000):
if output[i] == 'Listening':
print(str(i) + ': ' + output[i])
def main():
host_ip = input("Enter host IP: ")
delay = int(input("How many seconds the socket is going to wait until timeout: "))
scan_ports(host_ip, delay)
if __name__ == "__main__":
main()
Windows PowerShell扫描脚本:
PowerShell IPv4 PortScanner
Banner抓取:
使用nc或客户端工具连接开放端口获取服务信息
2.3 漏洞扫描
- 授权工具:绿盟极光、Nessus、Nexpose
- 结果分析:存活主机、开放端口、漏洞情况
2.4 内网环境识别
2.4.1 办公网环境
按系统区分:
- OA系统
- 邮件系统
- 财务系统
- 文件共享系统
- 域控
- 企业杀毒系统
- 上网行为管理
- 内部应用监控
按网络区分:
- 管理网段
- 内部系统网段
- 部门专属网段
按设备区分:
- 个人电脑
- 内网服务器
- 网络设备
- 安全设备
办公网防护相对较弱,绕过杀毒软件后较易横向移动
2.4.2 生产网环境
按系统区分:
- 业务系统
- 运维监控系统
- 安全系统
按网络区分:
- 业务网段
- 运维监控网段
- 安全管理网段
通过分析服务/进程推断运维水平和安全防护强度
3. 漏洞验证与攻击
3.1 Web应用攻击
3.1.1 自定义Web应用
- 直接攻击对外Web应用
- 寻找注入、上传、代码执行、文件包含等高危漏洞
- 工具:
- 扫描:WVS、sqlmap、XSStrike
- 手工:Burp Suite
3.1.2 Web中间件
1. Tomcat
- 端口:8080
- 攻击方式:
- 默认/弱口令爆破(tomcat/tomcat)
- 后台部署war后门
- 远程代码执行漏洞
- 参考:
Seebug Paper 399
FreeBuf文章
2. JBoss
3. WebLogic
- 端口:7001,7002
- 攻击方式:
- 弱口令(weblogic/Oracle@123)
- 后台部署war后门
- SSRF漏洞
- 反序列化漏洞
- weblogic_uac
- 参考:
Vulhub SSRF
Fuping's Blog
4. WebSphere
- 端口:9080+, 控制台9090
- 攻击方式:
- 控制台弱口令(admin/admin)
- 部署war包获取webshell
- 反序列化漏洞
- 任意文件泄露
- 参考:
Loudong搜索
5. Glassfish
- 攻击方式:
- 弱口令爆破
- 任意文件读取
- 认证绕过
3.1.3 Web框架
1. Struts2
- 主要漏洞:
- S2-046/S2-045 (CVE-2017-5638)
- S2-037 (CVE-2016-4438)
- S2-032 (CVE-2016-3081)
- S2-020 (CVE-2014-0094)
- S2-019 (CVE-2013-4316)
- S2-016 (CVE-2013-2251)
- 工具:
struts-scan
myhktools
2. Spring框架
- 主要漏洞:
- CVE-2010-1622
- CVE-2018-1274
- CVE-2018-1270
- CVE-2018-1273
- 反序列化漏洞
- 目录穿越
- 参考:
SecPulse文章
Aliyun文章
3.1.4 Web服务器
IIS
- 端口:80
- 攻击方式:
- WebDAV PUT文件
- 短文件名枚举
- 远程代码执行
- 提权漏洞
- 解析漏洞
- 参考:
FreeBuf文章
Anquanke文章
Apache
- 攻击方式:
- 解析漏洞
- 目录遍历
Nginx
- 攻击方式:
- 解析漏洞
- 目录遍历
- CVE-2016-1247(提权)
Lighttpd
- 攻击方式:
- 目录遍历
3.2 常见运维系统
3.2.1 GitLab
- 漏洞:
- 任意文件读取(CVE-2016-9086)
- 用户token泄露
- 命令执行
- 参考:
Knownsec Blog
3.2.2 Jenkins
- 漏洞:
- 远程代码执行
- 反序列化
- 未授权访问
- 登录爆破
- 参考:
Seebug Paper 199
3.2.3 Puppet
- 漏洞:
- 反序列化
- 远程命令执行
3.2.4 Ansible
- 漏洞:
- 远程代码执行
3.2.5 Nagios
- 漏洞:
- 代码执行
- SQL注入
- 参考:
Mottoin文章
3.2.6 Zabbix
- 漏洞:
- 远程代码执行
- SQL注入
- 命令注入
- 认证绕过
- 默认口令admin/zabbix
- 参考:
Vinc's Blog
3.2.7 Cacti
- 漏洞:
- 任意代码执行
- SQL注入
- 默认密码admin/admin
3.2.8 Splunk
- 漏洞:
- 信息泄露
- 命令注入
- SSRF
3.3 常见Web应用
3.3.1 邮件系统
- Coremail
- 亿邮
- 35互联
- TurboMail
- Exchange
- IBM Lotus
3.3.2 CMS系统
- 根据具体CMS搜索相关漏洞
3.4 数据库/缓存/消息服务
3.4.1 MySQL
3.4.2 MSSQL
- 端口:1433(服务),1434(监控)
- 攻击方式:
- 弱口令/系统用户爆破
- 注入攻击
- 参考:
Anquanke文章
3.4.3 Oracle
- 端口:1521,1158,8080,210
- 攻击方式:
- 弱口令爆破
- 注入攻击
- 漏洞利用
- 参考:
Leiphone文章
3.4.4 PostgreSQL
- 端口:5432
- 攻击方式:
- 弱口令(postgres/postgres)
- CVE-2014-2669缓冲区溢出
- 参考:
Drops文章
3.4.5 MongoDB
- 端口:27017
- 攻击方式:
- 弱口令
- 未授权访问
- 参考:
LittleHann博客
3.4.6 Redis
- 攻击方式:
- 弱口令
- 未授权访问+SSH key提权
- 参考:
AlloyTeam文章
3.4.7 SysBase
- 端口:5000(服务),4100(监听),4200(备份)
- 攻击方式:
- 弱口令
- 命令注入
3.4.8 DB2
- 端口:5000
- 攻击方式:
- CVE-2015-1922安全限制绕过
3.5 常见服务/协议
3.5.1 FTP
- 端口:20(数据),21(控制),69(TFTP)
- 攻击方式:
- 爆破(推荐Bruter)
- 匿名访问(anonymous/空)
- 明文嗅探
- vsftp后门
- 远程溢出
- 跳转攻击
3.5.2 NFS
- 攻击方式:
- 未授权访问
- 参考:
FreeBuf文章
3.5.3 Samba
- 攻击方式:
- 远程代码执行
- 弱口令
- 未授权访问(public)
- 参考:
91RI文章
3.5.4 SSH
- 端口:22
- 攻击方式:
- 爆破
- 后门
- 漏洞(28退格/OpenSSL漏洞)
- 参考:
腾讯云文章
3.5.5 Telnet
- 端口:21
- 攻击方式:
- 爆破
- 明文嗅探
3.5.6 Windows远程连接
- 端口:3389
- 攻击方式:
- 爆破
- Shift粘滞键后门(5次shift)
- MS12-020漏洞攻击
3.5.7 VNC
- 端口:5900+桌面ID
- 攻击方式:
- 弱口令爆破
- 认证绕过
- CVE-2015-5239拒绝服务
- CVE-2013-6886权限提升
3.5.8 SMTP
- 端口:25,465(SMTPS)
- 攻击方式:
- 弱口令爆破
- 未授权访问
3.5.9 POP3
- 端口:109(POP2),110(POP3),995(POP3S)
- 攻击方式:
- 弱口令爆破
- 未授权访问
3.5.10 DNS
- 端口:53
- 攻击方式:
- 区域传输漏洞
3.5.11 IMAP
- 端口:143,993(IMAPS)
- 攻击方式:
- 弱口令爆破
- 配置不当
3.5.12 SNMP
- 端口:161
- 攻击方式:
- 弱口令爆破
3.5.13 DHCP
- 端口:67,68,546(Failover)
- 攻击方式:
- DHCP劫持
3.6 云环境
3.6.1 VMware
- 主要漏洞:
- 主机逃逸(CVE-2017-5638)
- 参考:
Seebug Paper 348
VMware安全指南
3.6.2 OpenStack
- 主要漏洞:
- 权限绕过
- 信息泄露
- 代码执行
- 参考:
OpenStack安全指南
3.6.3 Docker
- 安全问题:
- 内核漏洞(CVE-2015-3630等)
- 拒绝服务攻击
- 容器突破
- 有毒镜像
- 参考:
Docker安全指南
3.7 大数据系统
3.7.1 Elasticsearch
- 端口:9200,9300
- 攻击方式:
- 未授权访问
- 远程命令执行
- 文件遍历
- 低版本webshell植入
- 参考:
FreeBuf文章
3.7.2 Hadoop
- 安全问题:
- 未授权访问
- 权限配置不当
- 参考:
Meituan实践
Cloudera安全指南
3.7.3 Hive
- 安全问题:
- 认证授权问题
- 数据泄露
- 参考:
Apache Hive安全
3.7.4 Sqoop
- 安全问题:
- 数据传输安全
- 认证授权
- 参考:
Sqoop安全
3.7.5 HBase
- 安全问题:
- 认证授权
- 数据加密
- 参考:
Cloudera安全指南
3.7.6 Spark
- 安全问题:
- 认证授权
- 数据保护
- 参考:
ApacheCN文档
4. 后渗透技术
4.1 提权
Windows提权资源:
Windows内核漏洞利用
Linux提权资源:
Linux内核漏洞利用
4.2 域攻击
典型域渗透流程:
- 确定目标系统和应用
- 识别潜在漏洞
- 利用漏洞获取初始访问
- 提升权限
- 定位域管理进程或获取令牌
- 抓取密码Hash破解
- 迁移域管理进程
- 创建域管理员账户
常用工具:
- Empire
- PowerUp
- PowerView
Empire使用:
- 设置监听
- 生成木马
- 目标执行
- 获取反弹代理
Mimikatz使用:
4.3 建立后门/端口转发
端口转发工具:
- LCX:Windows端口转发
- sockscap:Windows代理转发
- proxifier:跨平台代理工具
- rssocks:*nix代理工具
- proxychains:*nix socks代理
- ssh proxy:SSH端口转发
- netcat/socat/hping:基础转发
- metasploit:内置转发模块
4.4 文件传输
4.4.1 文件打包
RAR打包示例:
rar.exe a–r –v100m new.rar –ta20130101000000 –hpPass –n*.doc –x*.exe d:\data\
7z加密打包:
7z.exe a c:\xx.7z -pPass -mhe d:\data -v100m
Linux加密打包:
tar -zcvf - pma|openssl des3 -salt -k password | dd of=pma.des3
解密:
dd if=pma.des3 |openssl des3 -d -k password|tar zxf -
4.4.2 文件传输方法
- 端口转发直接传输
- 搭建FTP/HTTP服务
- 云存储中转
4.5 后门/木马制作
Msfvenom使用:
Msfvenom指南
SET工具:
- 生成后门
- 关注Office/PDF最新漏洞
5. 日志清理
注意事项:
- 完全删除痕迹困难,无日志本身就是特征
- 网络设备/安全设备/集中日志可能留存记录
- 后门包含攻击者信息
- 代理/跳板可能被反制
- 操作前检查管理员登录状态
清理步骤:
- 删除上传工具(使用磁盘覆写)
- 清理各类日志
5.1 Windows日志清理
清理目标:
- Web日志(IIS/Apache)
- 操作日志(3389记录/最近文件/浏览器历史)
- 登录日志(安全日志)
5.2 Linux日志清理
清理目标:
- 历史命令(unset HISTORY HISTFILE...)
- SSHD登录记录
- ~/.ssh/known_hosts
- 修改文件时间戳(touch -r)
- 清理/tmp临时文件
工具:
- logtamper
6. 工具使用原则
- 选择适合的工具,不必求多
- 能编写定制化工具
- 不安全工具在虚拟机中运行
- 安全检查优先使用开源工具
渗透注意事项:
- 检查内网监控系统
- 谨慎使用ARP和大范围扫描
- 使用空闲机器作为打包对象
- 使用大流量机器(如WSUS)传输
- 临时机器打包,避免使用已控机器
- 使用WMI/WMIC远程操作
- 避开工作时间打包(100M以内)
- 使用常见压缩软件
- 错峰下载控制流量
- 清除所有操作日志
- 登录前确认管理员状态
7. 参考资源
- DC010上海站演讲PPT《内网渗透思路》
- 各类安全社区/博客文章链接(见原文)