我正在使用acunetix对传入的网站执行部分安全审核。该应用程序主要使用PHP和MySql开发。
所有用户输入都是转义的,但有些输入(主要是url参数)仍未部分转义:我仍然可以发送' *' string参数中的运算符。 Acunetix会因此而触发警报:
攻击详情
URL编码的POST输入A设置为417 * 1 * 1 * 1 * 1 * 1 * 1 *
已完成测试:
648' => ERROR
648'' => ERROR
883*1*1* => ERROR
545*1*1*1*1 => OK
965*1*1*1*1* => ERROR
880*1*1*1*1*1*1 => OK
417*1*1*1*1*1*1* => ERROR
我不明白为什么它被认为是一个漏洞:目的是为了表明我的输入没有被充分逃脱(无论这个漏洞究竟是如何被利用的),或者这里有真正的危险吗?如果有:你如何利用它?
答案 0 :(得分:0)
通过提交星号运算符,测试提供程序只检查符号是否被评估为字符串或作为运算符。 如果它为语法错误的输入引发错误,则可以得出结论,它没有被转义。 如果某些易受攻击的代码将被提交,那么它可能是也不受影响,从而损害您的基础设施。
提交星号本身被认为是无害的。无论如何,只是测试是否存在漏洞,提供商不想提交实际损害或破坏您的测试环境的值。