syppycj 2024-10-10 22:13 采纳率: 0%
浏览 4

php 魔术引号为什么不安全

sql靶场实验过程中判断注入类型时,页面报错,无法进行后续注入,之前并不会,https://www.tangxinvlog.com/Less-1/?id=-1%27%20union%20select%201,2,database()--+就这段注入语句报错

img

img

  • 写回答

2条回答 默认 最新

  • 一轮明月照丘壑 2024-10-10 22:14
    关注

    以下回复参考:皆我百晓生券券喵儿等免费微信小程序作答:

    关于PHP魔术引号(Magic Quotes)为什么不安全的问题,主要是因为它们在处理用户输入时自动对特殊字符进行转义,这可能导致意外的结果和安全问题。具体来说,有几个主要原因:

    1. 过时的功能:魔术引号是PHP较早的一个功能,现代PHP版本更倾向于使用更安全的过滤和用户输入处理方式,比如使用预定义过滤器(如filter_var()函数)或使用参数化查询来避免SQL注入等安全问题。
    2. 易混淆和错误:使用魔术引号可能会导致开发者混淆和误解。因为对于开发人员来说,了解并正确处理各种用户输入场景总是必需的,但如果使用魔术引号这样的自动转义机制,开发者可能过于依赖它而忽略正确处理用户输入的重要性。这在实践中可能会导致意外错误和安全漏洞。
    3. SQL注入风险:对于您提到的SQL注入问题,魔术引号并不足以防止所有的注入攻击。实际上,即使是启用了魔术引号,如果没有正确地构造SQL查询,仍然容易受到SQL注入攻击。正确的做法是使用参数化查询或预处理语句来确保用户输入被正确处理并避免注入风险。

    至于您在尝试进行SQL注入测试时遇到的问题,可能是由于服务器或应用程序对您的注入尝试进行了特定的安全处理。如果之前能够正常工作但后来失效,可能是系统管理员进行了更新或采取了额外的安全措施。在这种情况下,最好的做法是深入分析错误消息、日志和其他可用信息来确定问题所在,并尝试绕过或找到新的切入点来进行测试。此外,强烈建议遵守道德和法律标准,不要在未经授权的情况下尝试渗透测试或攻击任何系统。

    评论

报告相同问题?

问题事件

  • 创建了问题 10月10日