文章插图
①
案例一:Dot Net桌面钱包的服务器远程代码执行漏洞
下文分析在桌面钱包中发现的一个远程代码执行漏洞 。
首先介绍一下背景:这个钱包是一个去中心化的单一协议钱包,用C#语言编写,使用了Dot Net框架 。它包含许多常见的钱包功能,如帐户管理、交易转账和部署/调用智能合约等 。
比较有趣的是,它还允许用户上传文件到服务器 。这功能在钱包中并不常见,所以我们决定进一步研究这个功能 。如前所述,这个钱包是基于Dot Net的,如果没有对代码进行混淆,就很容易通过反编译来获取源代码 。此案例钱包正是这种情况,因此我们能够恢复其源代码来进行进一步的分析 。
- 静态源码分析
文章插图
钱包向服务器发送一个HTTP POST请求并返回文件上传URL,“upload.php”是服务器上的处理文件上传的代码 。现在我们知道服务器后台使用了PHP,因此,如果可以上传一个PHP Webshell到服务器并在浏览器中打开它,我们可能就能够在服务器上远程执行代码 。
- 文件上传
我们同时发现该钱包的服务器是在“administrator”用户下运行的,因此能够以“administrator”权限执行命令 。在这种情况下攻击者能够完全地控制这台服务器,并且能够操纵其他用户上传的文件 。但是,由于这是一个去中心化的钱包,服务器不会存储任何用户私钥,所以此漏洞无法被利用来直接危害用户帐户 。
文章插图
- 修复方法
②
案例二:桌面钱包客户端远程代码执行漏洞
Electron是什么?为什么要用Electron?
Electron是一个开源软件框架,它让开发人员能够使用HTML、css和JavaScrip来构建跨平台的桌面应用程序 。
使用Electron的好处是开发人员可以重复利用网页应用程序代码来构建桌面应用程序,也就是说不需要找另外的代码库,也不需要学习新的编程语言 。
在调试Electron应用程序时,使用谷歌浏览器的DevTools会非常容易 。Electron应用程序可直接在操作系统上运行,因为它可以访问Node.js模块,所以也就可以构建比网页应用程序更强大的桌面应用程序 。
今年六月,CertiK安全团队在Symbol桌面钱包中发现了一个远程执行代码漏洞,并将该漏洞提交到了Symbol漏洞赏金计划 。详情请点击https://mp.weixin.qq.com/s?
总结无论是由内部安全团队还是第三方公司执行安全审计和渗透测试,对于确保系统的安全性都是至关重要的 。专业的安全人员会试图从“恶意黑客”的角度来破坏系统,帮助在真正的黑客利用漏洞之前识别和补救漏洞 。
推荐阅读
- 浏览器爆出严重漏洞,谷歌、微软、Opera电脑版和安卓版都受影响
- 软件|免费解压缩神软7-zip惊现重大漏洞:Windows版至今未修复
- 使用 Go 语言实现凯撒加密
- 苹果|定了?iPhone 14系列基本定型了!钱包又要被掏空
- CentOS7下vsftpd over SSL/TLS加密传输配置实践
- 黑客大神教你:Weblogic相关漏洞复现
- Windows打印机漏洞未被完全修复,攻击者可以通过Splooer入侵 超能网 2020-08-10 10:06:02
- 黑客演示CVE-2020-7961_Liferay Portal反序列化漏洞
- Weblogic相关漏洞复现
- Windows用户密码的加密与破解利用