点击⬇️方“逆锋起笔”,公众号回复 pdf
领取大佬们推荐的学习资料

整理 | 田晓旭

近日,网络安全公司 Intezer 发布了 2020 年基于 Go 语言恶意软件的报告。报告指出:恶意软件的开发者已经从 C 和 C++ 逐渐转向 Go 语言,自 2017 年以来,基于 Go 语言的恶意软件数量呈现爆发式增长,增幅超过了 2000%。

自从 2012 年发现了第一个使用 Go 语言编写的恶意软件之后,Go 语言就在恶意软件领域渐渐流行起来了。2019 年 7 月,Palo Alto Networks 发布了一份使用 Go 语言编写的恶意软件分析报告。报告发现,2019 年以前使用 Go 语言编写恶意软件是一件罕见的事情,但到了 2019 年,这种情况每天都会发生,2017 年到 2019 年,基于 Go 语言的恶意软件的样本数量增加 1944%。在这些恶意软件中,92% 是针对 Windows,4.5 是针对 Linux,3.5% 是针对 macOS。

那么,2020 年使用 Go 语言编写的恶意软件发生了什么变化?Go 语言恶意软件都有哪些类型?为什么 Go 语言恶意软件会激增 2000%?

1Go 语言恶意软件的主要类型

Go 语言的使用率在未来几年会持续上升,Intezer 预计 Go 语言将和 C、C++ 及 Python 一起成为未来恶意软件编码的首选编程语言。目前,使用 Go 语言编写的恶意软件都有哪些呢?

  • RAT:Go 语言具有编写良好的网络堆栈,很容易操作。目前 Go 已经成为云计算的编程语言之一,很多云原生应用都是用它编写的,例如 Docker、Kubernetes、fluxDB、Traefk、Terraform、CockroachDB、Prometheus 和 Consco 都是用 Go 编写的。而且 Google 当初创建 Go 语言的原因之一就是用来取代内部 C++ 网络服务。因此,RAT 恶意软件使用 Go 语言来编写是意料之中的事情。

  • Stealer:目前安全研究员已经发现了使用 Go 语言编写的 stealer。2019 年,Malwarebytes 报告中发现了一个叫做 CryptoStealer.Go 的恶意软件。而在2020 年出现了新的改进 CryptoStealer.Go 恶意软件,此恶意软件的目标是加密货币钱包和浏览器密码。

  • Ransomware:Go 语言标准库提供了一组非常健壮的加密库,允许开发人员在应用程序中进行加密,而无需使用任何第三方库。因此很多恶意软件开发者都开始使用 Go 语言来编写勒索软件,2020 年安全研究员发现很多新旧勒索软件都使用了 Go 语言,例如 RobbinHood。它的攻击方式是:用户一旦加载了驱动程序,它将终止端点和篡改保护的进程确保勒索软件可以在不被中断的情况下加密硬盘其余部分的软件。

  • Bot:由于 Go 语言标准库支持很多网络协议,而且可以编译用于不同操作系统的二进制文件。因此,越来越多的 Bot 使用 Go 语言来编写,另外二进制文件中包括了正确运行所需的一切,这为开发者提供了更多便利,例如软件可以在不同的 Linux 发行版上运行,而无需考虑该设备上是否安装了库。

2为什么使用 Go 语言编写的恶意软件会激增 2000%?

自 2017 年以来,基于 Go 语言的恶意软件激增了 2000%,这个增长幅度还是很吓人的。为什么攻击者会越来越多的选择 Go 语言呢?Intezer 在报告中给出了三个原因:

  • 首先是因为 Go 语言本身的跨平台性能优秀,开发者只需要编写一次代码,该恶意软件就可以在 Windows、Linux 和 Mac 三个系统上编译。

  • 其次是 Go 语言编写的恶意软件很难被发现。由于安全研究员很难对基于 Go 语言的文件进行分析和逆向工程,所以杀毒软件很难发现 Go 语言的恶意软件,普通用户更是无从发现自己的电脑是否已经被攻击。

  • 最后是 Go 语言在编写网络堆栈方面具有明显优势,再加上现在很多云原生软件都是使用 Go 语言编写的,因此使用 Go 语言编写需要经常发送、接收网络数据包的恶意软件会更加容易。

与其他语言编写的恶意软件相比,用 Go 编写的恶意软件数量相对较少,但同比增长明显,而且这种增长速度很可能会持续下去。Intezer 对于 Go 语言恶意软件的未来发展做出了以下预测:(微信搜索公众号 逆锋起笔,关注后回复 编程资源,领取各种经典学习资料。)

  • 在对不同系统的攻击中,针对 Linux 系统的 Go 语言恶意软件比例更大。因为基于 Go 语言的 Linux 恶意软件大部分是用于 DDoS 或安装 cryptominers 的 bot,同时安全研究员也发现了针对 Linux 系统的 Go 语言勒索软件,未来可能会更多的 Go 语言勒索软件,目的是窃取和加密有价值的数据。

  • Proofpoint 在对 2021 年的趋势预测中曾表示:勒索软件开发者将开始更加关注针对云的攻击。目前很多传统的防病毒和端点保护解决方案都是针对 Windows 环境设计的,Linux 环境的保护方案必须尽快跟上。

  • 根据 CrowdStrike 2020 年报告显示,40% 的恶意软件没有被杀毒软件检测到。而且,Go 语言编写的恶意软件本身就更难被杀毒软件检测到,“漏网之鱼”可能会更多。现在,安全研究员已经发现恶意软件开发者会使用相同的恶意软件代码库来攻击不同的操作系统,这样会导致恶意软件样本数量较少或者未被检测到,未来我们可能会看到更多针对多个操作系统的恶意软件。

今日推荐文章

GitHub 代码一键转 VS Code,太好用了!

go语言、Golang学习资料分享

5 个不常提及的 HTML 技巧

蚂蚁呀嘿 App,七天就下架了!

程序员上了年纪可以做啥 ?

点个『在看』支持下

Go 语言将成为恶意软件开发者的首选相关推荐

  1. Go语言竟成恶意软件的最爱!4年来Go编写的恶意软件飙增2000%,网友:这也能怪Go?...

    杨净 发自 凹非寺 量子位 报道 | 公众号 QbitAI Go,或许从诞生之日起就没想过. 自己会以这种方式成为语言中的C位: 最新数据显示,Go语言成为恶意软件的最爱. 4年内基于Go语言的恶意软 ...

  2. 黑客黑了自己!恶意软件开发者不小心感染了自己的 PC,致数据泄漏

    本文转载自 云头条 一恶意软件开发者在自己的系统上释放了编写的恶意软件以尝试新功能,却未曾想数据最终出现在了网络犯罪情报平台上,向外界泄露了网络犯罪活动的内幕. 该威胁分子是Raccoon的开发者,R ...

  3. 2021 年 Windows 成了 Python 开发者的首选

    作者 | Chris Patti 译者 | 弯月   责编 | 欧阳姝黎 出品 | CSDN(ID:CSDNnews) 以下为译文: 近年来,苹果的笔记本电脑硬件设计决策让我感到非常痛苦,因此我不打算 ...

  4. C语言,我的编程路首选的第一门语言

    目录 3月7日 初识C语言 3月9日 结构体与指针 3月16日 分支与循环 3月19日 结束了,分支与循环 3月20日  函数的声明与定义 3月23日 函数结束 早在接触计算机这个行业时,就听说过C语 ...

  5. Go语言中使用protobuf开发者指南

    protobuf是什么? 官方给出的定义是:Protocol buffers are Google's language-neutral, platform-neutral, extensible m ...

  6. ipad在线看html5,iPad 2: HTML5开发者必备首选

    最近Web开发工具厂商Sencha做了一项关于苹果iPad 2和运行Android 3.0 Honeycomb的摩托罗拉Xoom的测试,结果显示苹果Safari是毫无疑问最佳的HTML5浏览器:而An ...

  7. 10 款优雅的 Go 语言开发工具

    以下内容来自公众号逆锋起笔,关注每日干货及时送达 jaxenter 从 GitHub 上精选了一些最好 Golang 工具,希望可以为喜欢用Go编程的开发者提供帮助,一起来看一下都有哪些工具上榜吧! ...

  8. 2021 年软件开发趋势大预测!

    点击上方"逆锋起笔",公众号回复 编程资源 领取大佬们推荐的学习资料 作者| Md Kamaruzzaman 译者| 张健欣 策划| InfoQ 蔡芳芳 对于软件开发行业来说,20 ...

  9. Go 语言“助力”恶意软件?仅 4 年基于 Go 的恶意软件数就激增 2000%!

    整理 | 郑丽媛 出品 | CSDN(ID:CSDNnews) Go(又称 Golang),是谷歌于 2009 年正式发布的一种静态强类型.编译型.并发型,并具有垃圾回收功能的编程语言.因其语法简单, ...

最新文章

  1. JavaScript去除字符串首尾空格
  2. HTML页面显示透视效果,html – CSS – 对背景图像的“敲除”/透视效果
  3. Linux下 执行程序
  4. java 修饰_Java 修饰符
  5. git如何切换分支_拜托,不要再问我Git分支如何使用
  6. 百度MIP移动页面加速——不只是CDN
  7. css图片上漂浮着文字效果
  8. Python的Request请求跳过认证及禁用警告
  9. cms自动更新php文件,PHPCMS站群管理系统-PHPCMS自动采集-PHPCMS自动更新
  10. 计算机显示器模糊,电脑显示器模糊了怎么办?
  11. WSTMart开发文档
  12. Matplotlib绘制三维数据点与线
  13. 安防 海康摄像机视频存储服务器
  14. 单片机毕业设计 stm32智能扫地机器人
  15. 热敏电阻-温度换算算法(分段线性拟合法)
  16. 浅析3种电池容量监测方案
  17. 农夫过河狼羊白菜Java开放封闭_农夫过河——狼羊菜问题
  18. linux搭建erp教程,10个最好的自由Linux平台ERP软件 - 51CTO.COM
  19. Linux常见命令及含义
  20. 【老生谈算法】标准遗传算法的MATLAB实现源码——遗传算法

热门文章

  1. 接口(对抽象的抽象)
  2. 【AutoSAR】【FIM】功能禁止管理详解
  3. 07 TIM编码器和AB相电机测速
  4. 业务数据分析中可能用到的简单的数据挖掘方法——相关性分析、主成分分析、因子分析
  5. Debian (Linux)安装UFW防火墙
  6. C语言编程可调电子钟设计,基于ZG211使用C语言编程的电子钟显示设计(最终版)...
  7. verilog学习笔记- 4)Modelsim 软件的安装、使用
  8. c语言输出一个月的日历
  9. access前端连接mysql_用javascript连接access数据库的方法
  10. 裂变思维:购物返佣如何一个月快速吸粉上百万