道德黑客 - 指纹识别


道德黑客中的术语“操作系统指纹”是指用于确定远程计算机上运行的操作系统的任何方法。这可能是 -

  • 主动指纹识别- 主动指纹识别是通过向目标计算机发送特制数据包,然后记下其响应并分析收集到的信息以确定目标操作系统来完成的。在下面的部分中,我们将给出一个示例来解释如何使用 NMAP 工具来检测目标域的操作系统。

  • 被动指纹识别- 被动指纹识别基于来自远程系统的嗅探器痕迹。根据数据包的嗅探器跟踪(例如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 扫描也称为ICMP 扫描

您可以使用fping命令进行 ping 扫描。该命令是一个类似 ping 的程序,它使用 Internet 控制消息协议 (ICMP) 回显请求来确定主机是否已启动。

fpingping的不同之处在于您可以在命令行上指定任意数量的主机,或者指定包含要 ping 的主机列表的文件。如果主机在一定的时间限制和/或重试限制内没有响应,它将被视为不可达。

快速解决

要禁用网络上的 ping 扫描,您可以阻止来自外部源的 ICMP ECHO 请求。这可以使用以下命令来完成,该命令将在iptable中创建防火墙规则。

$iptables -A OUTPUT -p icmp --icmp-type echo-request -j DROP

DNS枚举

域名服务器 (DNS) 就像地图或地址簿。事实上,它就像一个分布式数据库,用于将 IP 地址 192.111.1.120 转换为名称 www.example.com,反之亦然。

DNS 枚举是查找组织的所有 DNS 服务器及其相应记录的过程。其想法是在发起攻击之前收集尽可能多的有关目标的有趣细节。

您可以使用Linux 上可用的nslookup命令来获取 DNS 和主机相关信息。此外,您可以使用以下DNSenum脚本来获取有关域的详细信息 -

DNSenum.pl

DNSenum脚本可以执行以下重要操作 -

  • 获取主机地址

  • 获取名称服务器

  • 获取MX记录

  • 在名称服务器上执行axfr查询

  • 通过Google 抓取获取额外的名称和子域名

  • 文件中的暴力子域也可以对具有 NS 记录的子域执行递归

  • 计算C类域网络范围并对其进行whois查询

  • 网络范围上执行反向查找

快速解决

DNS 枚举没有快速修复方法,它确实超出了本教程的范围。防止 DNS 枚举是一个巨大的挑战。

如果您的 DNS 未以安全方式配置,则有关网络和组织的大量敏感信息可能会泄露到外部,并且不受信任的 Internet 用户可以执行 DNS 区域传输。