【问题标题】:Can I do sql injection on this website [closed]我可以在这个网站上进行 sql 注入吗[关闭]
【发布时间】:2017-02-05 19:59:28
【问题描述】:

我正在尝试从网站数据库中获取批量数据,但未能成功。有人可以建议是否可以进行 SQL 注入以及在这种情况下如何做。

【问题讨论】:

  • 似乎是一个邪恶的意图 ---> 公开这些与选举项目有关的细节是否安全?你的问题中确实有一个项目路径,你知道吗?
  • 印度比哈尔邦选举的选举项目?大声笑
  • @Sak - 不,对于 UP 选举(检查应用程序名称)!我会强调这个问题。

标签: c# sql sql-injection owasp


【解决方案1】:

有很多方法可以对与您提供的网站类似的网站进行 SQL 注入。

where 子句中,它期待ac_no。我假设这个值是作为用户输入从浏览器传递的。在这种情况下,您可以将ac_no 值与or 1 = 1 一起传递。例如where ac_no = 123 or 1 = 1。它返回表 RollPdf1 中的所有内容。

对于字符串比较,您可以将"" = "" 添加到where 子句中。

如果您想执行其他select 操作(如果您知道其他表名),那么您可以附加由; 分隔的select 语句。

UNION 运算符

如果您知道查询中所选列的数据类型,则可以使用UNION 从其他表中获取更多数据。

例如

  original query :  select  name, age, sex from table1 where id = 1

  sql injected query  :  select name, age, sex from table1 where id = 1 AND 1 = 2 UNION select username, id, password from userstable or someother table.

【讨论】:

  • 一次只能给一条记录我想要多条记录,我认为有应用程序级别的验证。
  • 从您共享的代码中,我认为没有任何应用程序级别的验证可以将其限制为仅一条记录。因为如果您在那里看到 if 条件,如果有超过 1 条记录,那么它会显示在网格中,否则可能只有几个只读字段。
  • 您可以尝试将OR 1 = 1 附加到ac_no 值并尝试.. 发布您尝试后遇到的错误。
猜你喜欢
  • 2016-05-13
  • 2014-03-04
  • 1970-01-01
  • 2021-04-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多