应用层欺骗中生成逼真 HTTP 参数的方法
1. 引言
欺骗是一种主动防御形式,旨在迷惑和转移试图篡改系统的攻击者。在网络应用安全领域,欺骗技术主要是为应用添加诸如蜜罐 Cookie、HTTP 参数或 HTML 注释等欺骗元素,以展示虚假的攻击面。通过监控这些欺骗元素值的修改,可以检测到试图篡改应用以寻找漏洞的攻击者。
以往关于应用层欺骗的研究大多集中于如何轻松地添加和移除这些欺骗元素,例如使用反向代理在应用前动态添加和移除,使应用本身无需修改。但这些研究未真正解决欺骗元素生成的挑战,尤其是生成上下文特定的欺骗元素是一个难题。
本文聚焦于自动生成网络应用的欺骗性 HTTP 参数,以覆盖参数篡改的大量攻击面。生成欺骗性 HTTP 参数面临多个挑战:
- 如何选择逼真的参数名称?
- 如何确保参数足够诱人?
- 如何为参数分配合理的值?
- 在 API 中应将参数放置在何处?
- 欺骗性参数的最佳数量是多少?
- 当某个参数被篡改时,应给出怎样的适当响应?
本文主要解决第一个挑战,即自动生成难以与真实参数区分的合理欺骗性参数名称。为此,我们采用机器学习方法,使用从公开可用的网络应用源代码训练的词嵌入模型。
2. 方法
2.1 自然语言处理技术选择
对于生成与受保护的网络应用上下文一致的欺骗性 HTTP 参数,自然语言处理(NLP)领域提供了不同的技术,如专用列表、词法词典和词嵌入。
- 专用列表 :需要手工制作,耗时且需要特定领域知识。
- 词法词典
生成逼真HTTP参数的技术方法
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



