• 使用burpsuite进行手动sql注入


    burpSuite使用

    sql注入

    SQL注入是一个Web安全漏洞,它使攻击者能够干扰应用程序对其数据库的查询。通常,它使攻击者可以查看他们通常无法检索的数据。
    成功的SQL注入攻击可能导致未经授权访问敏感数据,例如密码,信用卡详细信息或个人用户信息。

    在不同情况下会出现各种SQL注入漏洞,攻击和技术。一些常见的SQL注入示例包括:

    1)检索隐藏的数据,您可以在其中修改SQL查询以返回其他结果。
    2)颠覆应用程序逻辑,您可以在其中更改查询以干扰应用程序的逻辑。
    3)UNION攻击,您可以在其中从不同的数据库表中检索数据。
    4)检查数据库,您可以在其中提取有关数据库版本和结构的信息。
    5)盲SQL注入,您控制的查询结果不会在应用程序的响应中返回。


    检索隐藏数据

    考虑一个显示不同类别产品的购物应用程序。当用户单击“礼物”类别时,其浏览器将请求URL:
    https://insecure-website.com/products?category=Gifts
    这使应用程序进行SQL查询,以从数据库中检索相关产品的详细信息:
    SELECT * FROM products WHERE category = 'Gifts' AND released = 1
    此SQL查询要求数据库返回:
    所有详细信息(*)
    从产品表
    类别是礼物
    并发布为1。
    该限制released = 1用于隐藏未发布的产品。对于未发布的产品,大概是released = 0。

    该应用程序未对SQL注入攻击实施任何防御措施,因此攻击者可以构建如下攻击:
    https://insecure-website.com/products?category=Gifts'--
    这将导致SQL查询:
    SELECT * FROM products WHERE category = 'Gifts'--' AND released = 1
    这里的关键是,双破折号序列--是SQL中的注释指示符,意味着查询的其余部分将被解释为注释。这样可以有效删除查询的其余部分,因此不再包含AND released = 1。这意味着将显示所有产品,包括未发布的产品。

    更进一步,攻击者可以使应用程序显示任何类别的所有产品,包括他们不知道的类别:
    https://insecure-website.com/products?category=Gifts'+OR+1=1--
    这将导致SQL查询:
    SELECT * FROM products WHERE category = 'Gifts' OR 1=1--' AND released = 1
    修改后的查询将返回类别为Gifts或1等于1的1=1所有项目。由于始终为true,因此查询将返回所有项目。


    颠覆应用逻辑

    考虑一个允许用户使用用户名和密码登录的应用程序。如果用户提交用户名wiener和密码bluecheese,则应用程序将通过执行以下SQL查询来检查凭据:
    SELECT * FROM users WHERE username = 'wiener' AND password = 'bluecheese'
    如果查询返回用户的详细信息,则登录成功。否则,将被拒绝。

    在这里,攻击者可以简单地使用SQL注释序列--从WHERE查询子句中删除密码检查,而无需密码即可作为任何用户登录。例如,提交用户名administrator'--和空白密码将导致以下查询:
    SELECT * FROM users WHERE username = 'administrator'--' AND password = ''
    该查询返回用户名为的用户,administrator并成功以该用户身份登录攻击者。


    从其他数据库表检索数据

    如果在应用程序的响应中返回了SQL查询的结果,则攻击者可以利用SQL注入漏洞从数据库中的其他表中检索数据。这是通过使用UNION关键字完成的,该关键字使您可以执行附加SELECT查询并将结果附加到原始查询中。
    例如,如果应用程序执行以下查询,其中包含用户输入“ Gifts”:
    SELECT name, description FROM products WHERE category = 'Gifts'
    然后攻击者可以提交输入:
    ' UNION SELECT username, password FROM users--
    这将导致应用程序返回所有用户名和密码以及产品名称和描述。


  • 相关阅读:
    latex
    slab着色,可以减少cache conflict miss概率么?
    内存管理 初始化(八) 至kswapd_init
    内存管理 初始化(七)kmem_cache_init_late 初始化slab分配器(下)
    vmwareubuntu18.04网络配置
    高德地图的一些使用心得
    mongodb聚合管道用法
    python学习链接
    python开发者常犯的10个错误(转)
    vim配置python开发环境(转)
  • 原文地址:https://www.cnblogs.com/coco-fly/p/13447180.html
Copyright © 2020-2023  润新知