又一个很久没更新了
真的很久没更新了,上一次更新还是在上一次……真受不了!
前段时间都在忙于学校的课业,一度让我的读者以为我毕业了哈哈哈。其实我现在只是大二而已,距离毕业还有非常非常长的时间。Anyways,前阵子还挺“牛逼”的,在学校搞逆向工程结果被抓去 admin office 那边问话,还被迫写了个检讨信。
很多时候学校/企业都会使用 vLAB,也就是网络虚拟环境(比如虚拟桌面、虚拟系统)。我就好奇,想着顺便测试一下他们的安全性,看看防御效果如何。结果才发现他们对越权保护似乎不是那么好……不过说实话,这也不能全怪学校,毕竟是买的外包 solution,可能本身就没做好安全性测试。
讲个例子,马来西亚有个很著名的 ERP 软件(S*L Accounting Software),它的备份模块能调用 Windows 内置的 Task Scheduler(计划任务程序)。这个工具很强,能让系统定时运行脚本,甚至可以操作其他 app。于是我就去试试 system32 里常见的模块,比如 cmd、Control Panel、powershell 等等。虽然 cmd、control panel 这些都被封掉了,但学校居然没锁 powershell!这下好玩了,因为 powershell 能做的事情远比 cmd 多多了。
我就开始查系统装了什么程序、有什么配置文件……但是偏偏我忘了我是用自己的学号登录的……然后我这一系列骚操作全被后台记录下来了,哈哈哈哈哈。学校后台一度以为被黑了,查了整整四天才发现是内部账号的越权访问,最后叫我去办公室“喝茶”+写检讨信,属实社死。
接下来更刺激了
一般来说,普通用户想要改 Windows 设置、网络配置,或者运行某些程序,都要用 “Run as Administrator” 提权才行。但我在班上的电脑闲逛时,意外发现了点好玩的——他们用了 “RunitAs” 这个工具,可以提前配置好登录凭证,这样就算你不是 admin 权限也能跑特定 app。
而且它用的是带 .rau
后缀的配置文件👇
这个文件是加密的(我到现在还没完全搞明白算法),所以直接拿配置文件没啥用。但我突然想到,既然程序要自动登录 admin,那必然要把凭证传进 Windows,而且很有可能传的是明文!
说干就干,我直接上逆向神器 x64dbg.exe 进行行为捕捉。果然发现了点门道:Windows 有两个常用 API——CreateProcessWithLogonW
和 LogonUserW
——专门用来传用户名和密码。此时就可以愉快地搜关键字、下断点。结果还真的被我找到登录用的密码了!
到这里,直接就能抓到传进 API 的 admin 账号和明文密码了!(再次提醒自己,学号别乱用……)
免责声明
本文内容仅供学习、技术记录与研究交流,严禁用于任何未经授权的渗透、越权操作或违法用途。无论是学校、企业还是个人,都有责任遵守相关法律法规。搞安全要有底线,逆向路上多点自律,别让好奇心害了自己。所有涉及到的法律、道德责任,读者请自行承担。本人对因本文内容被不当使用造成的任何后果不承担责任。
总结
好了,这波分享就到这里。以后还是多点注意安全红线,技术可以玩,但别忘了风险自担。如果你有类似经历或者感兴趣的点,欢迎留言交流!