1. 内网安全检查/渗透介绍
1.1 攻击思路
有2种思路:
攻击外网服务器,获取外网服务器的权限,接着利用入侵成功的外网服务器作为跳板,攻击内网其他服务器,最后获得敏感数据,并将数据传递到攻击者,看情况安装长期后门,实现长期控制和获得敏感数据的方式;
攻击办公网的系统、办公网电脑、办公网无线等方式,一般是采用社工,实现控制办公电脑,再用获得的办公网数据,可能是内网的各种登录账号和密码,再获取办公网或者生产网的有用数据。
一般内网安全检查使用第一种思路,实际的攻击2种思路结合实现。
1.2 敏感资料/数据/信息
高管/系统管理员/财务/人事/业务人员的个人电脑
文件服务器/共享服务器
邮件服务器
OA服务器
数据库服务器
1.3 攻击过程
按照第一种思路,个人认为可以分为4个阶段:
信息收集
漏洞验证/漏洞攻击
后渗透
日志清理
第二种思路,社工的比重更大一些,本篇不多做介绍。
2 信息收集
该阶段识别内网存活的主机 IP, 运行端口扫描和漏洞扫描获取可以利用的漏洞
2.1 主机发现
使用端口扫描工具可以实现主机发现的功能,但也有些动作小的主机发现工具(Kali),可以有效的发现存活主机。自己写个 ping 的循环脚本也可以。
不受限的测试直接端口扫描了。
2.2 端口扫描
有授权的情况下直接使用 nmap 、masscan 等端口扫描工具直接获取开放的端口信息。
作为跳板机可以使用 Metasploit 做端口扫描,也可以在跳板主机上上传端口扫描工具,使用工具扫描。
入侵到服务器上也可以根据服务器的环境使用自定义的端口扫描脚本扫描端口。
python 3 的端口扫描脚本
# This script runs on Python 3import socket, threadingdef 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 = [] # To run TCP_connect concurrently
output = {} # For printing purposes
# Spawning threads to scan ports
for i in range(10000):
t = threading.Thread(target=TCP_connect, args=(host_ip, i, delay, output))
threads.append(t)
# Starting threads
for i in range(10000):
threads[i].start()
# Locking the script until all threads complete
for i in range(10000):
threads[i].join()
# Printing listening ports from small to large
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()
有个使用 Python 端口扫描的介绍
https://thief.one/2018/05/17/1/?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io
Windows 下基于 Powershell 的端口扫描脚本。
https://github.com/BornToBeRoot/PowerShell_IPv4PortScanner/tree/master/Scripts
发现端口后使用客户端连接工具或者 nc 连接,获取服务端的 banner 信息。
2.3 漏洞扫描
<p style="white-space: normal; box-sizing: border-box; margin-top: 0px; margin-bottom: 24px; padding: 0px; max-width: 100%; clear: both; min-height: 1em; color: rgb(51, 51, 51); background-color: rgb(255, 255, 255); font-family: "Monospaced Number", "Chinese Quote", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", &q