📅  最后修改于: 2020-12-06 12:08:24             🧑  作者: Mango
道德黑客中的OS指纹识别是指用于确定远程计算机上正在运行什么操作系统的任何方法。这可能是-
主动指纹识别-主动指纹识别是通过将特制数据包发送到目标计算机,然后记下其响应并分析收集到的信息以确定目标操作系统来实现的。在以下部分中,我们将给出一个示例来说明如何使用NMAP工具检测目标域的OS。
被动指纹识别-被动指纹识别基于来自远程系统的嗅探器跟踪。根据数据包的嗅探器跟踪(例如Wireshark),可以确定远程主机的操作系统。
我们将确定以下四个重要元素,以确定操作系统:
TTL-操作系统在出站数据包上设置生存时间的方式。
窗口大小-操作系统将窗口大小设置为什么。
DF-操作系统是否设置了“不分段”位。
TOS-操作系统是否设置了服务类型,如果是,则设置为什么。
通过分析数据包的这些因素,您也许可以确定远程操作系统。该系统不是100%准确的,并且在某些操作系统上比其他操作系统更好。
攻击系统之前,需要知道托管网站的操作系统。一旦知道了目标操作系统,就可以轻松确定可能存在哪些漏洞来利用目标系统。
下面是一个简单的nmap命令,可用于标识为网站提供服务的操作系统以及与域名(即IP地址)关联的所有打开的端口。
$nmap -O -v tutorialspoint.com
它将向您显示有关给定域名或IP地址的以下敏感信息-
Starting Nmap 5.51 ( http://nmap.org ) at 2015-10-04 09:57 CDT
Initiating Parallel DNS resolution of 1 host. at 09:57
Completed Parallel DNS resolution of 1 host. at 09:57, 0.00s elapsed
Initiating SYN Stealth Scan at 09:57
Scanning tutorialspoint.com (66.135.33.172) [1000 ports]
Discovered open port 22/tcp on 66.135.33.172
Discovered open port 3306/tcp on 66.135.33.172
Discovered open port 80/tcp on 66.135.33.172
Discovered open port 443/tcp on 66.135.33.172
Completed SYN Stealth Scan at 09:57, 0.04s elapsed (1000 total ports)
Initiating OS detection (try #1) against tutorialspoint.com (66.135.33.172)
Retrying OS detection (try #2) against tutorialspoint.com (66.135.33.172)
Retrying OS detection (try #3) against tutorialspoint.com (66.135.33.172)
Retrying OS detection (try #4) against tutorialspoint.com (66.135.33.172)
Retrying OS detection (try #5) against tutorialspoint.com (66.135.33.172)
Nmap scan report for tutorialspoint.com (66.135.33.172)
Host is up (0.000038s latency).
Not shown: 996 closed ports
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
443/tcp open https
3306/tcp open mysql
TCP/IP fingerprint:
OS:SCAN(V=5.51%D=10/4%OT=22%CT=1%CU=40379%PV=N%DS=0%DC=L%G=Y%TM=56113E6D%P=
OS:x86_64-redhat-linux-gnu)SEQ(SP=106%GCD=1%ISR=109%TI=Z%CI=Z%II=I%TS=A)OPS
OS:(O1=MFFD7ST11NW7%O2=MFFD7ST11NW7%O3=MFFD7NNT11NW7%O4=MFFD7ST11NW7%O5=MFF
OS:D7ST11NW7%O6=MFFD7ST11)WIN(W1=FFCB%W2=FFCB%W3=FFCB%W4=FFCB%W5=FFCB%W6=FF
OS:CB)ECN(R=Y%DF=Y%T=40%W=FFD7%O=MFFD7NNSNW7%CC=Y%Q=)T1(R=Y%DF=Y%T=40%S=O%A
OS:=S+%F=AS%RD=0%Q=)T2(R=N)T3(R=N)T4(R=Y%DF=Y%T=40%W=0%S=A%A=Z%F=R%O=%RD=0%
OS:Q=)T5(R=Y%DF=Y%T=40%W=0%S=Z%A=S+%F=AR%O=%RD=0%Q=)T6(R=Y%DF=Y%T=40%W=0%S=
OS:A%A=Z%F=R%O=%RD=0%Q=)T7(R=Y%DF=Y%T=40%W=0%S=Z%A=S+%F=AR%O=%RD=0%Q=)U1(R=
OS:Y%DF=N%T=40%IPL=164%UN=0%RIPL=G%RID=G%RIPCK=G%RUCK=G%RUD=G)IE(R=Y%DFI=N%
OS:T=40%CD=S)
如果您的Linux系统上未安装nmap命令,则可以使用以下yum命令进行安装-
$yum install nmap
您可以详细地通过nmap命令来检查和了解与系统关联的不同功能,并保护其免受恶意攻击。
您可以将主系统隐藏在安全的代理服务器或VPN后面,以确保完整的身份是安全的,并最终使主系统保持安全。
我们刚刚看到了nmap命令给出的信息。该命令列出了给定服务器上所有打开的端口。
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
443/tcp open https
3306/tcp open mysql
您还可以使用以下命令检查是否打开了特定端口-
$nmap -sT -p 443 tutorialspoint.com
它将产生以下结果-
Starting Nmap 5.51 ( http://nmap.org ) at 2015-10-04 10:19 CDT
Nmap scan report for tutorialspoint.com (66.135.33.172)
Host is up (0.000067s latency).
PORT STATE SERVICE
443/tcp open https
Nmap done: 1 IP address (1 host up) scanned in 0.04 seconds
黑客一旦知道了开放端口,便可以通过开放端口计划不同的攻击技术。
始终建议检查并关闭所有不需要的端口,以保护系统免受恶意攻击。
ping扫描是一种网络扫描技术,可用于确定一系列IP地址中的哪个IP地址映射到活动主机。 Ping Sweep也称为ICMP扫描。
您可以使用fping命令进行ping扫描。此命令是一个类似ping的程序,它使用Internet控制消息协议(ICMP)回显请求来确定主机是否启动。
fping与ping的不同之处在于,您可以在命令行上指定任意数量的主机,或指定包含要ping的主机列表的文件。如果主机在特定时间限制和/或重试限制内未响应,则将其视为不可访问。
要禁用网络上的ping扫描,可以阻止来自外部源的ICMP ECHO请求。可以使用以下命令来完成此操作,该命令将在iptable中创建防火墙规则。
$iptables -A OUTPUT -p icmp --icmp-type echo-request -j DROP
域名服务器(DNS)就像地图或地址簿。实际上,它就像一个分布式数据库,用于将IP地址192.111.1.120转换为名称www.example.com,反之亦然。
DNS枚举是查找组织的所有DNS服务器及其对应记录的过程。这个想法是在发起攻击之前,尽可能多地收集有关目标的有趣细节。
您可以使用Linux上可用的nslookup命令来获取DNS和与主机相关的信息。此外,您可以使用以下DNSenum脚本获取有关域的详细信息-
DNSenum脚本可以执行以下重要操作-
获取主持人的地址
获取名称服务器
获取MX记录
在名称服务器上执行axfr查询
通过Google抓取获取额外的名称和子域
文件中的暴力子域还可以对具有NS记录的子域执行递归
计算C类域网络范围并对其进行whois查询
在Netranges上执行反向查询
DNS枚举没有快速解决方案,它实际上超出了本教程的范围。防止DNS枚举是一个很大的挑战。
如果未以安全的方式配置DNS,则可能有许多有关网络和组织的敏感信息可能出局,并且不受信任的Internet用户可以执行DNS区域传输。