20159318 《网络攻击与防范》第七周学习总结

教材学习内容总结

一、Windows操作系统框架

1、Windows操作系统的发展与现状

Windows在桌面操作系统中占有非常高的市场份额,Windows XP系统在国内仍有大量的用户

2、Windows操作系统基本结构

(1)Windows操作系统内核基本模块

  • Windows执行体
  • Windows内核体
  • 设备驱动程序
  • 硬件抽象层
  • Windows窗口与图形界面接口内核实现代码

(2)Windows操作系统在用户态的代码模块

  • 系统支持进程
  • 环境子系统服务进程
  • 服务进程
  • 用户应用软件
  • 核心子系统DLL

(3)核心机制

  • Windows进程和线程管理机制
  • Windows内存管理机制
  • Windows文件管理机制
  • Windows注册表管理机制
  • Windows的网络机制
    ①网卡硬件设备驱动程序,位于OSI物理层
    ②NDIS库及miniport驱动程序,位于OSI链路层
    ③TDI传输层,网络协议驱动,位于OSI网络层与传输层
    ④网络API DLL 及TDI客户端,对应OSI会话层与表示层
    ⑥网络应用程序与服务进程,对应OSI应用层

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

1、Windows安全体系结构

基于引用监控器模型来实现基本的对象安全模型。
最核心的是位于内核中的SRM安全引用监控器,以及位于用户态的LSASS安全服务。

2、Windows身份认证机制

分为用户,用户组,和计算机三大类。
Windows用户密码经过加密处理后被保存于SAM或者活动目录AD中,其中本地用户账户口令信息经过不可逆的128位随机秘钥Hash加密后存储在SAM文件中。
Windows进程、GINA图形化登录窗口,与LSASS服务通过协作来完成本地身份认证过程。

3、Windows授权与访问控制机制

Windows授权与访问控制机制是基于引用监控器模型,由内核中的SRM模块与用户态的LSASS服务共同来实施。
Windows对于系统中所有需要保护的资源都抽象成对象,都会关联一个对象描述符,有以下属性组成:

  • Owner SID
  • Group SID
  • DACL 自主访问控制列表
  • SACL 系统审计访问控制列表

4、Windows安全审计机制

系统审计策略在本地安全策略中由系统管理员定义,来确定系统对哪些事件进行记录。

5、Windows的其他安全机制

Windows安全中心,其中集成了防火墙,补丁自动更新,以及病毒防护。

三、Windows远程安全攻防机制

  • 远程口令猜测与破解攻击
  • 攻击Windows网络服务
  • 攻击Windows客户端及用户

1、Windows系统的安全漏洞生命周期

  • Windows安全漏洞发现、利用与修补过程
  • 安全漏洞公开披露信息库
  • 针对特定目标的渗透测试攻击过程
    ①漏洞扫描测试
    ②查找针对发现漏洞的渗透代码
    ③实施渗透测试
  • 使用Metasploit软件实施渗透测试

2、Windows远程口令猜测与破解攻击

  • 远程口令自猜测
  • 远程口令字交换通信窃听与破解
  • 远程口令猜测与破解防范措施

3、Windows网络服务远程渗透攻击

Windows操作系统默认开放135(TCP),137(UDP),139(TCP)与445(TCP)端口,对应的网络服务为MSRPC与过程调用服务,NetBIOS网络基本输入输出系统服务和SMB文件与打印机共享服务。

  • 针对NetBIOS网络服务的著名漏洞及攻击
  • 针对SMB网络服务的著名漏洞及攻击
  • 针对MSRPC网络服务的著名漏洞及攻击
  • 针对Windows系统上微软网络服务的远程渗透攻击
  • 针对Windows系统上第三方网络服务的远程渗透攻击
  • 网络服务远程渗透攻击防范措施

四、Windows本地安全攻防技术

1、Windows本地特权提升

终极特权:Administrator或者Local System账户。从受限用户权限尝试获得特权账户的攻击技术也被称为特权提升。

2、Windows敏感信息窃取

  • Windows系统口令字密文提取技术
  • Windows系统口令字破解技术
  • 用户敏感数据窃取
  • 本地敏感信息窃取防范措施

3、Windows消踪灭迹

  • 关闭审计功能
  • 清理事件日志
  • 针对消踪灭迹的防范措施

4、Windows远程控制与后门程序

  • 命令行远程控制工具
  • 图形化远程控制工具
  • 针对后门程序防范措施

视频学习过程

一、26.KaliSecurity - 漏洞利用之检索与利用

漏洞检测和利用工具
1.searchsploitl漏洞检索工具,列出所有文件,如下图

2.pattern creat
在缓冲区溢出时可以使用这个命令,例pattern create 1000 a就是可以输出1000个a
3.ikat
网络漏洞扫描工具,可以开一个端口和IP地址,一旦有漏洞的主机通过这个端口扫描它,就会中招。

二、KaliSecurity - 漏洞利用之Metasploit基础

1.启动服务
metasploit在渗透中经常被用到,实际上这套软件包括了很多工具,这些工具组成了一个完整的攻击框架。启动服务时,需要先开启postgresql数据库和metasploit服务,然后就可以完整的利用msf数据库查询exploit和记录。
使用命令service postgresql start
service metasploit start
启动后如下图

图2
2、路径介绍
msf路径为/usr/share/metaspioit-framework,列出下面的所有文件,如下图所示

图3
Auiliary:辅助模块
encoders:供msfencode编码工具使用,具体可以使用msfencode -1。
exploits:攻击模块
payloads:这里面列出的是攻击载荷,也就是攻击成功后执行的代码。
post:后渗透阶段模块,在获得meterpreter的shell之后可以使用的攻击代码。
3、基本命令
msfpayload:用来生成payload或者shellcode
4、测试示例:发现漏洞,搜索exploit
前期通过扫描的值目标21端口vsftp服务版本为2.3.4,使用msfconsole打开msf的命令行版本,通过search语句搜索是否有漏洞。如下图

图4
5、测试示例:选择exploit,查看参数,如下图所示

图5
并使用show options查看参数,如下

图6
并对其进行设置如下

图7
6、测试示例:选择payload,如下图

图8
7、测试示例:执行攻击测试,成功后返回shell。

三、KaliSecurity - 漏洞利用之Meterpreter介绍

meterpreter 是metasploit框架中的一个扩展模块,作为溢出成功以后的攻击载荷使用,攻击载荷在溢出成功后给我们返回一个控制通道。使用它作为攻击载荷能够获得目标系统的一个meterpretershell.
meterpreter作为后渗透模块有多中类型,并且命令由核心命令和扩展库命令组成,极大地丰富了攻击方式,其有很多有用的功能,如,添加一个用户,隐藏一些东西,打开shell,得到用户密码,上传下载远程主机的文件,运行cmd.exe,捕获屏幕,得到远程控制权,捕获按键信息,清除应用程序,显示远程主机的系统信息,显示远程及其的网络接口和IP地址等信息。
常见的命令:
background:将当前会话放置后台
load/use:加载模块
interact:切换进一个信道
migrate:迁移进程
run:执行一个已有的模块,这里要说的是输入run后按两下tab,会列出所有的已有的脚本。
resource:执行一个已有的rc脚本常用的meterpreter类型为:payload/windows/meterpreter/reverse_tcp
攻击步骤:
1、生成Meterpreter后门
2、打开MSF,开启监听,选择exploit/multi/handler
3、在目标机器上执行door.exe
4、通过help命令查看可执行的命令
5、常见命令使用,包括系统信息,抓取屏幕截图与抓取HASH等。
6、目录浏览
7、键盘监听
8、扩展工具,load/use之后再输入help,就可以了看到有关这个模块的命令的说明了
9、扩展工具之Minikatz,抓取本地密码明文

四、KaliSecurity - 漏洞利用之Metasploit后渗透测试

在跳板获取一定权限后需要积极地向内网主机权限发展,获取指定的目标信息,探查系统漏洞,借助msf已经得到的Meterpreter后门,可以使系列的操作更容易。
1、查看当前网卡、网段信息。
2、添加路由表run autoroute -s 10.0.0.1可以使用msf中的模块跨网段攻击或扫描。可通过脚本autoroute快速添加。
3、开socket代理,通过使用auxiliary/server/socks4a模块,创建一个socks代理,可以为浏览器,sqlmap,nmap使用。通过代理即可访问内网计算机。
4、通过background和session -i可以自由切换进入session。
5、输入run可以看到在meterpreter上可以做的很多命令。
6、通过run post/可以看到后渗透测试模块
7、获取内网信息
8、也可以上传文件,做端口转发后进行后续测试。

五、KaliSecurity - 漏洞利用之BeEF

BeEF是浏览器攻击框架的简称,是一款专注于浏览器端的渗透测试工具。
1、命令行下启动beef
beef-xss,此时浏览器自动访问页面http://127.0.0.1:3000/ui/authentication,使用默认用户名beef与默认密码beef登陆,如下图

图9
2、假设被测试主机由于xss漏洞请求到http://127.0.0.1:3000/demos/basic.html一个测试页面。如下图

图10
从标签页可以看到一些关于浏览器,系统平台等的信息,如下图

图11
3、HOOk持续时间为关闭测试页面为止,在此期间,相当于被控制了,可以发送攻击命令,在commands模块,我们可以完成很多任务。
四种颜色分别表示:
绿色,该攻击模块可用,且隐蔽性很轻
该攻击模块可用,但隐蔽性差
该用户模块是否可用还有待验证
该攻击模块不可用
如下图所示

图12

4、例如选取NISC下的raw JavaScrip模块作为测试用例。输入JavaScrip code点击execute进行攻击,如下图所示

图13

图14
可以看到攻击成功,弹出一个窗口。
5、proxy功能
选中目标主机,点右键,在菜单中选择use as proxy,然后在rider选项卡中的forge request编辑并发送想要发送的内容。如下图

图15

图16

图17
如上图所示,稍等一会之后可以看到返回内容。
6、beef默认是不加载metasploit的,如果要使用需要做些配置。

原文地址:https://www.cnblogs.com/liming1593/p/5402444.html