2024年十大Web黑客技术提名现已开放
提名现已开始征集2024年十大新型Web黑客技术!每年,全球的安全研究人员通过博客文章、演示、概念验证和白皮书分享他们的最新发现。这些贡献都非常宝贵,但其中一些因其创新方法以及在新场景中重用或适配的潜力而脱颖而出。自2006年以来,社区每年都会聚集起来,筛选这些丰富的研究,并确定真正推动Web安全边界的十大技术。
现在,是时候回顾2024年的突破,并展望那些最具影响力、创造性和可重用性的研究了。无论您是行业资深人士还是项目新人,都可以浏览我们专门的十大页面来了解该倡议的起源、历史和目的,以及过去获奖者和亮点的存档。提名您最喜欢的技术,投出您的一票,帮助我们评选出2024年杰出的Web黑客技术!
今年,我们将遵循以下时间线:
- 时间线
- 1月8日至14日:收集社区对2024年顶级研究的提名
- 1月15日至21日:社区对提名进行投票,以构建前15名的候选名单
- 1月22日:启动小组投票,从候选名单中选出并排序10名决赛选手
- 2月4日:发布2024年十大技术!
我应该提名什么?
目的是突出包含新颖、实用技术的研究,这些技术可以重新应用到不同系统中。像log4shell这样的个别漏洞在当时很有价值,但通常时效性较差,而诸如JNDI注入等基础技术可以重新应用并产生巨大效果。提名也可以是对已知攻击类别的改进,例如利用本地DTD文件利用XXE。更多示例,您可以查看往年的十大技术。
如何提名
只需提供研究的URL,以及可选的简短评论,解释该工作的新颖之处。您可以随意提名任意数量的项目,如果您认为自己的工作值得,也可以提名自己的作品! 点击此处提交提名
请注意,我将过滤掉非Web聚焦、仅是工具或明显缺乏创新性的提名,以保持社区投票选项的可管理性。我们不收集电子邮件地址 - 要获取投票阶段开始的通知,请在X、LinkedIn或BlueSky上关注@PortSwiggerRes。
提名列表
我自己已经提名了一些项目来启动进程,并将每隔几天用新的社区提名更新此列表。本着过度自动化的精神,我为每个条目包含了AI辅助的摘要。
Gotta cache ’em all: bending the rules of web cache exploitation
利用URL解析差异的新技术,实现任意Web缓存投毒和欺骗。
Listen to the whispers: web timing attacks that actually work
通过新颖技术(如单包同步和利用范围化SSRF机会)解决网络和服务器噪声,使HTTP/2时序攻击在各种Web环境中可行且有效。
Splitting the email atom: exploiting parsers to bypass access controls
利用编码词和Unicode溢出利用电子邮件解析差异,实现访问控制绕过和Web应用程序中的潜在RCE。
Confusion Attacks: Exploiting Hidden Semantic Ambiguity in Apache HTTP Server!
利用Apache HTTP Server模块交互中的架构缺陷,实现不安全路径访问、可预测处理程序操纵和身份验证绕过。
Insecurity through Censorship: Vulnerabilities Caused by The Great Firewall
通过Fastly利用中国的DNS投毒进行子域名接管,或通过易受攻击的cPanel安装进行XSS。
Bypassing WAFs with the phantom $Version cookie
通过cookie解析器中的传统支持,使用$Version属性和引号字符串编码绕过WAF。
ChatGPT Account Takeover - Wildcard Web Cache Deception
利用CDN和Web服务器URL解析中的路径遍历混淆,缓存敏感API端点以窃取身份验证令牌。
Why Code Security Matters - Even in Hardened Environments
利用Node.js应用程序中的任意文件写入漏洞,通过写入procfs暴露的管道文件描述符实现远程代码执行。
Remote Code Execution with Spring Properties
利用Spring Boot的日志配置属性,通过Logback的JoranConfigurator实现远程代码执行。
Exploring the DOMPurify library: Bypasses and Fixes
利用节点扁平化、开放元素堆栈和命名空间混淆的突变XSS,绕过DOMPurify。
Bench Press: Leaking Text Nodes with CSS
使用CSS动画测量字符高度,并通过图像请求泄露文本节点内容。
Source Code Disclosure in ASP.NET apps
使用.NET无cookie会话获取源代码。
http-garden: Differential fuzzing REPL for HTTP implementations.
用于发现新型HTTP请求走私向量的平台。
plORMbing your Prisma ORM with Time-based Attacks
对Prisma ORM进行基于时间的攻击,通过精心设计利用关系过滤的查询导致显著执行延迟,从而泄露敏感数据。
Introducing lightyear: a new way to dump PHP files
使用PHP过滤器链进行自动化高速利用。
The Ruby on Rails _json Juggling Attack
_json juggling攻击通过利用_json键的处理来操纵JSON参数,以绕过Ruby on Rails中的授权。
Encoding Differentials: Why Charset Matters
当字符集信息缺失时,利用ISO-2022-JP编码绕过清理并注入JavaScript。
A Race to the Bottom - Database Transactions Undermining Your AppSec
详细分析使数据库事务上的竞争条件攻击成为可能的模式。
Response Filter Denial of Service (RFDoS): shut down a website by triggering WAF rule
利用过于包容的WAF规则阻止合法内容传递的DoS技术。
Unveiling TE.0 HTTP Request Smuggling: Discovering a Critical Vulnerability in Thousands of Google Cloud Websites
影响Google Cloud托管网站的新型HTTP请求走私向量。
DoubleClickjacking: A New Era of UI Redressing
DoubleClickjacking利用mousedown和onclick事件之间的时间间隙,绕过点击劫持保护并劫持用户操作。
Devfile file write vulnerability in GitLab
利用YAML解析差异和tar文件提取中的路径遍历,在GitLab中实现任意文件写入。
Breaking Down Multipart Parsers: File upload validation bypass
通过利用参数处理、边界识别和内容验证的差异(包括重复参数、省略必要分隔符和替代编码序列)来绕过multipart/form-data解析器的技术。
Supply Chain Attacks: A New Era
通过精心制作的多行源映射注释绕过Lavamoat的策略文件沙箱,并通过已弃用的document.execCommand函数规避SnowJS领域隔离。
Abusing Intended Feature And Bypassing Facial Recognition.pptx
通过利用AI无法区分真人脸和深度伪造图像来绕过面部识别。
Arc Browser UXSS, Local File Read, Arbitrary File Creation and Path Traversal to RCE
利用Arc Browser的技术包括通过UI欺骗安装恶意boost,通过操纵boost配置路径实现本地文件读取和路径遍历以进行远程代码执行。
Beyond the Limit: Expanding single-packet race condition with a first sequence sync for breaking the 65,535 byte limit
利用IP碎片和TCP序列号重新排序扩展单包攻击的能力,以利用限制溢出漏洞。
HTTP/2 CONTINUATION Flood: Technical Details
HTTP/2 CONTINUATION Flood攻击通过以缺少END_HEADERS标志的无休止头流耗尽服务器资源,实现拒绝服务。
Exploring Javascript events & Bypassing WAFs via character normalization
AI失败
From Arbitrary File Write to RCE in Restricted Rails apps
滥用Bootsnap的缓存操纵在受限Rails环境中执行任意代码。
Go Go XSS Gadgets: Chaining a DOM Clobbering Exploit in the Wild
将DOM Clobbering与postMessage和CSP绕过链接以升级XSS。
Statamic CMS
通过文件上传中的文件名操纵进行路径遍历。
Exploiting Number Parsers in JavaScript
利用JavaScript数字解析器的差异,通过参数污染进行DoS。
[EN] Unsecure time-based secret and Sandwich Attack
AI失败
DoubleClickjacking: A New Era of UI Redressing
DoubleClickjacking是一种新颖的UI redress技术,利用双击序列中的时间和事件顺序怪癖来绕过点击劫持保护。
Cross Window Forgery: A New Class of Web Attack
该论文介绍了“跨窗口伪造”,这是一种新的Web攻击技术,使用浏览器导航和击键通过URL片段在不同网站上执行操作。
Exploiting Client-Side Path Traversal to Perform Cross-Site Request Forgery - Introducing CSPT2CSRF
通过链接GET和POST操作(CSPT2CSRF)利用客户端路径遍历进行CSRF。
Class Pollution in Ruby: A Deep Dive into Exploiting Recursive Merges
Ruby中的递归合并技术,实现类污染以进行权限升级和RCE。
Unveiling the Prototype Pollution Gadgets Finder
使用小工具识别自动利用服务器端原型污染。
Hijacking OAUTH flows via Cookie Tossing
通过Cookie Tossing劫持OAUTH流程以进行账户接管。
Break the Wall from Bottom: Automated Discovery of Protocol-Level Evasion Vulnerabilities in Web Application Firewalls
使用新颖的测试方法自动发现WAF中的协议级规避漏洞,该方法利用WAF和Web应用程序之间的解析差异。
Old new email attacks
利用跨服务的电子邮件头解析不一致进行电子邮件欺骗和SMTP注入。
CVE-2023-5480: Chrome new XSS Vector
在JIT安装的worker中利用Service Worker注册,通过Chrome中操纵的支付清单进行XSS。
Wormable XSS www.bing.com. XSS on www.bing.com context via Maps…
使用KML文件和混合大小写JavaScript在Bing上进行可蠕虫传播的XSS以绕过黑名单。
Another vision for SSRF
使用SSRF通过将请求定向到受控服务器来捕获会话cookie。
WorstFit: Unveiling Hidden Transformers in Windows ANSI!
利用Windows Best-Fit字符转换进行攻击,如路径遍历、参数注入和各种应用程序中的RCE。
Lost in Translation - WAF Bypasses By Abusing Data Manipulation Processes
滥用边缘侧包含和Unicode操纵以绕过WAF。
Piloting Edge Copilot
通过postMessage发送javascript: URL以利用Bing上的XSS漏洞。
POST to XSS: Leveraging Pseudo Protocols to Gain JavaScript Evaluation in SSO Flows
在OAuth 2.0 Form Post Response Mode和SAML POST-Binding中利用javascript:伪协议与自动提交表单实现XSS。
Bypassing CSP via URL Parser Confusions: XSS on Netlify’s Image CDN
使用URL解析混淆绕过严格CSP,在Netlify的Image CDN上实现XSS。
Iconv, set the charset to RCE: Exploiting the glibc to hack the PHP engine
利用glibc的iconv函数中的缓冲区溢出,通过操纵会话变量或利用反序列化漏洞在PHP应用程序(如Roundcube)中实现远程代码执行。
Zoom Session Takeover - Cookie Tossing Payloads, OAuth Dirty Dancing, Browser Permissions Hijacking, and WAF abuse
通过Cookie tossing升级XSS漏洞,OAuth Dirty Dancing进行会话接管,以及利用XSS进行浏览器权限劫持和通过WAF Frame-up技术进行DoS。
Unveiling Rhino’s Blind Spot: Exploiting Custom Code Execution in Apigee
利用Apigee中JavaCallout和JavaScript策略之间的相互作用,绕过安全控制并实现远程代码执行。
NetModule Router Software Race Condition Leads to Remote Code Execution
NetModule Router Software中的竞争条件通过利用进程状态文件实现远程代码执行。
SQL Injection Isn’t Dead Smuggling Queries at the Protocol Level
通过数据库有线协议走私进行协议级SQL注入攻击。
Excessive Expansion: Uncovering Critical Security Vulnerabilities in Jenkins
文本描述了利用Jenkins中的“expandAtFiles”功能读取任意文件并可能在服务器上执行任意代码。
Joomla: PHP Bug Introduces Multiple XSS Vulnerabilities
利用PHP mbstring函数的不一致性绕过Joomla的输入清理,导致XSS漏洞。
Gudifu: Guided Differential Fuzzing for HTTP Request Parsing Discrepancies
Gudifu使用引导差分模糊测试来发现HTTP请求解析差异,这些差异可能导致新的攻击向量,如HTTP请求走私和缓存投毒。
MSSQL Identified as Vulnerable to Emoji String Exploitation
利用MSSQL中的Unicode排序逻辑差异,将哥布林表情符号视为空字符串,从而实现暴力攻击。
Ruby 3.4 Universal RCE Deserialization Gadget Chain
开发用于Ruby 3.4的通用RCE反序列化小工具链,该链利用RubyGems自动加载,使用’rake’和’make’命令执行,并使用UncaughtThrowError对象抑制异常。
CVE-2024-50603: Aviatrix Network Controller Command Injection Vulnerability
通过未清理的cloud_type参数注入恶意负载,在Aviatrix Network Controller上执行任意命令。
CORS vulnerabilities: Weaponizing permissive CORS configurations
反射任意来源和CORS配置中的替代域/子域信任可以允许未经授权的数据泄露。
Attacking PowerShell CLIXML Deserialization
利用PowerShell的CLIXML反序列化可以通过利用用户定义类型、CimInstance再水化和广泛部署模块中的漏洞实现远程代码执行,允许VM逃逸和攻击PowerShell Remoting。
Ruby-SAML / GitLab Authentication Bypass (CVE-2024-45409)
利用XPath漏洞绕过Ruby-SAML中的SAML签名验证。
World of SELECT-only PostgreSQL Injections
离线操纵PostgreSQL filenodes以进行权限升级和RCE。
Hacking Giants Through a Race Condition in GitHub Actions Artifacts
文本不包含新颖或创新的Web黑客技术。
Hacking Millions of Modems (and Investigating Who Hacked My Modem)
通过授权绕过未经授权访问ISP管理的TR-069 API,导致完全设备接管。
Exploiting the Unexploitable Insights from the Kibana Bug Bounty
AI失败。
DEF CON 32 - SQL Injection Isn’t Dead: Smuggling Queries at the Protocol Level
AI失败。
Teaching the Old .NET Remoting New Exploitation Tricks
通过利用XAML解析绕过.NET Remoting安全,执行反序列化攻击,创建特权对象(如WebClient),以进行远程代码执行,尽管有TypeFilterLevel.Low和CAS限制。
Efficient Detection of Java Deserialization Gadget Chains via Bottom-up Gadget Search and Dataflow-aided Payload Construction
使用自下而上的方法更有效地检测Java反序列化小工具链,并利用数据流依赖进行负载生成。
Undefined-oriented Programming: Detecting and Chaining Prototype Pollution Gadgets in Node.js Template Engines for Malicious Consequences
使用未定义属性检测和链接间接JavaScript原型污染小工具,用于复杂攻击向量,如ACE和RCE。
JNDI Injection Remote Code Execution via Path Manipulation in MemoryUserDatabaseFactory
JNDI注入以操纵MemoryUserDatabaseFactory中的路径名,通过精心制作的XML和使用BeanFactory方法调用创建目录实现远程代码执行。
GitHub Actions exploitation: untrusted input
GitHub Actions可以通过错误配置(如触发器中的不可信输入,例如pull_request_target)被利用,可能允许任意代码执行和未经授权的存储库修改。
a-deep-dive-into-openapi-security.pdf
AI失败。
[EN] Multi-sandwich attack with MongoDB Object ID or the scenario for real-time monitoring of web application invitations: a new use case for the sandwich attack
利用MongoDB Object ID的可预测计数器进行多三明治攻击,以实时监控和拦截令牌。
Secret Web Hacking Knowledge: CTF Authors Hate These Simple Tricks
文本不包含新颖或创新的Web黑客技术。
Facebook Messenger Bug Hunting - A Bug’s E2E Lifecycle
文本不包含新颖或创新的Web黑客技术。
Android Exploit to RCE: $5000 Bounty
欺骗无头浏览器执行任意JavaScript以进行服务器端RCE,并使用DNS隧道进行数据泄露。
XSS Vulnerabilities in Excalidraw Affecting Meta (CVE-2024-32472)
通过Excalidraw中的gist.github iframe进行沙箱逃逸,允许任意JavaScript执行。
1 bug, $50,000+ in bounties, how Zendesk intentionally left a backdoor in hundreds of Fortune 500 companies
利用Zendesk缺乏电子邮件欺骗保护,劫持票证线程并使用OAuth获得对Slack账户的未经授权访问。
Hacking Kia: Remotely Controlling Cars With Just a License Plate
利用Kia的经销商令牌生成,仅使用车牌和一系列后端API请求远程控制车辆。
Using YouTube to steal your files Ʊ
链接YouTube和Google Docs中的多个开放重定向漏洞,执行点击劫持攻击,授予对Google Drive文件的编辑器访问权限。
Bidding Like a Billionaire - Stealing NFTs With 4-Char CSTIs
通过ENS名称截断利用Vue.js CSTI实现XSS并操纵NFT出价。
Chaining Three Bugs to Access All Your ServiceNow Data
通过清理的style标签内容绕过ServiceNow的模板注入缓解措施以进行代码执行。
Universal Code Execution by Chaining Messages in Browser Extensions
在浏览器扩展中链接消息API以绕过同源策略并触发本机应用程序漏洞以实现通用代码执行。
Leaking Jupyter instance auth token chaining CVE-2023-39968, CVE-2024-22421 and a chromium bug
将客户端路径遍历与开放重定向和Chromium错误链接以泄露身份验证和CSRF令牌。
Next.js and cache poisoning: a quest for the black hole
利用Next.js中的内部头控制HTTP状态代码和缓存错误页面。
CVE-2024-4367 - Arbitrary JavaScript execution in PDF.js
通过操纵PDF.js字体渲染中的FontMatrix实现任意JavaScript执行。
Bypassing WAFs to Exploit CSPT Using Encoding Levels
通过利用URL编码级别和应用程序解码级别之间的差异绕过WAF。
You can’t securely execute commands on Windows
通过在Windows上通过CreateProcess执行批处理文件时不当转义命令参数进行命令注入。
XSS using dirty Content Type in cloud era
通过操纵Content-Type头进行XSS。
Hello Lucee! Let us hack Apple again?
利用Lucee CFML服务器中具有REST端点的反序列化进行RCE,并利用易受攻击的CFML表达式解析在Mura CMS中进行RCE。