“当菜单选择变恶意:揭露Zomato小部件中的XSS漏洞”
在探索热门餐厅发现平台Zomato的数字基础设施时,安全研究员pr0tagon1st偶然发现了一个令人担忧的问题。
该平台的两个小部件端点(旨在将餐厅集合嵌入其他网站)疏忽地回显了用户输入。一个看似无害的URL参数,成为了攻击者向受信任的Zomato域注入恶意脚本的直接通道。
点击查看完整图片
这个漏洞并非存在于核心网站,而是在支持性基础设施中——这提醒我们,攻击者常常瞄准系统防御最薄弱的部分。让我们剖析这个发现,以理解处理URL数据时的一个简单疏忽,如何为跨站脚本攻击打开大门,而XSS是网络中最持久的威胁之一。
小部件攻击剖析
漏洞存在于两个小部件端点:all_collections.php和o2.php。这些是外部网站可以用来显示Zomato内容的辅助脚本。
研究人员发现,这些脚本中的city_id和language_id参数没有正确过滤或编码HTML和JavaScript输入。攻击者可以制作一个恶意的URL,如下所示,其中city_id参数包含了恶意脚本...FINISHED
CSD0tFqvECLokhw9aBeRqvYTD3cAv2GUNlJNRecGo+KbWdWu6QgHepX121n3z1gpAJIuaMsMW0u7R2AAQgh3b81bzeYGPjd3CIPvYVzXNDV6lnNJEeUQO3xUPCinGPZyYm3dnwyhVW+i1n80hdcnFQQzYLFuuCA+7X5+3HnAsQU=