我有个问题希望你能帮我?
不干净的网址:
http://example.com/index.php?page=foo
http://example.com/products?category=2&pid=25
http://example.com/index.php?mod=profiles&id=193
http://example.com/kb/index.php?cat=8&id=41
cleaned‘s(当它们被’清理‘后,相应的url):
http://example.com/foo
http://example.com/products/2/25
http://example.com/profiles/193
http://example.com/kb/8/41
清洁/不洁净网址的这里解释
正如你可以看到的例子,不洁和干净的网址以上,他们显然略有不同。
对于不干净的url,可以通过在url末尾添加一个撇号(')来测试可能的sql注入漏洞,等等.
例如,http://example.com/products?category=2&pid=25'
,然后查看它返回的响应长度。
我知道,使用
?
例如,下面的工作会用于注入清洁url(使用撇号)吗?
http://example.com/kb/8'/41
或
http://example.com/products/2'/25
或
http://example.com/services/legal/patents'
等等..。或者有没有更好的方法。
非常感谢您对这个问题的帮助,非常感谢。
发布于 2013-02-22 17:22:34
在我看来,当戊酯面对使用干净URL的web应用程序时,主要的问题是识别URL的哪些部分是资源,哪些部分是参数,因为通常参数是我们测试得更深入的内容。
在这种情况下,我认为最好的选择是测试URL的所有部分,假设所有部分都是参数:
http://example.com/kb'/8/41
http://example.com/kb/8'/41
http://example.com/kb/8/41'
滴答只是一个例子,情况是所有的部分(包括kb,应该是一个资源,但也可以是一个参数)。
如果有办法区分黑匣子,测试资源和参数,我想知道。
发布于 2013-02-22 12:50:55
对于sql注入的测试,没有神奇的测试。有些应用程序在使用某种方法时可能容易受到攻击,而另一些应用程序则可能在使用另一种方法时易受攻击。
http://example.com/kb/8'/41有可能无法工作,因为撇号被IPS阻塞,但是http://example.com/kb/7%2B/41将显示与http://example.com/kb/8/41相同的结果,这将给出存在问题的信息。
仅仅用引号进行测试比根本不测试要好一些,但不能被标记为安全性评估。这样的过程需要对应用程序中所有可定位的入口点(参数、cookie、标头等)和其他一些更复杂的测试进行复杂的评估。
如果您有这种可能性,最好的解决方案是使用白框方法并检查代码。这样,您就可以清楚地看到某个参数是否经过适当的消毒。
https://security.stackexchange.com/questions/31320
复制相似问题