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

ORM注入

ORM通过抽象数据库层,是开发者通过使用对象而不是表和行来进行数据库数据的操作

运行逻辑

插入信息:

use App\Models\User;// Create a new user
$user = new User();
$user->name = 'Admin';
$user->email = 'admin@example.com';
$user->password = bcrypt('password'); 
$user->save();

查询数据:

use App\Models\User;// Find a user by ID
$user = User::find(1);// Find all users
$allUsers = User::all();// Find users by specific criteria
$admins = User::where('email', 'admin@example.com')->get();

其中 where('email', 'admin@example.com')->get(); 相当于常规sql语句中的 SELECT * FROM users WHERE email = 'admin@example.com'

注入识别

检测方法

  • 代码审计
  • 自动化工具
  • 黑盒测试
  • 报错测试

框架&ORM注入测试

框架 ORM库 易受攻击的方法/函数
Laravel Eloquent ORM whereRaw(), DB::raw()
Ruby on Rails Active Record where("name = '#{input}'")
Django Django ORM extra(), raw()
Spring Hibernate createQuery()concatenation
Node.js Sequelize sequelize.query()

框架识别

通过检查cookie、查看源码、分析http头、报错信息、url结构等

cookie验证

框架通常使用独特的命名约定或格式来设置会话 cookie,这可以提供关于底层技术的线索。

比如laravel的cookie:

image-20250326102638191

通过源码

查看网页源代码,顶部的 <header> 标签内的声明中可能存在,但这种方法可能并不总是具有决定性。

比如:

image-20250326102806831

注入

以laravel为例,通过一些写法让orm在构建语句的时候,形成注入,比如:

原始语句:SELECT * FROM users ORDER BY name ASC LIMIT 2

通过从url中获取name的值,如果构建payload:->" ')) SQL INJECTION QUERY #

原理:name->"value" 会被orm识别为:

json_unquote(json_extract(`name`, '$."value"'))

而构建的语句 name-> "')) SQL INJECTION QUERY # 会被转为:

json_unquote(json_extract(`name`, '$." "')) SQL INJECTION QUERY #"'))

可以看到 # 把后面的内容注释掉了,把相关的引号和括号也合并了,后面就是攻击者可以自行构建的注入语句

http://www.gsyq.cn/news/68174.html

相关文章:

  • 2025空调配套优选!空调机组风机哪家好?高适配品牌盘点
  • MySQL运维
  • React的设计理念与核心特性 - 指南
  • 语言安全
  • 机油壶吹塑设备哪家好?2025机油壶吹塑设备厂家权威排行
  • 2025年情人节送女友礼物推荐:哪样最显心意?深度解析与避坑指南
  • 实用指南:​​MQTT协议发展历程与版本演进:从工业监控到物联网核心的协议进化​
  • 2025年移民服务机构综合测评:十大移民公司关键数据与适配场景全解析
  • Solon v3.7 黑科技: 消灭空指针异常!
  • kmeans聚类,无需标签,无监督学习
  • P3733 [HAOI2017] 八纵八横
  • 利用鸢尾花数据集,结合树方法实现分类
  • Python3 StringIO 模块详解
  • 2025年工业清洗剂厂家排行榜:清洗剂制造厂哪家售后好
  • 2025年12月电竞培训学校对比评价与推荐排行榜:五所机构深度解析
  • swift 双范围slider
  • 2025年12月成都艺考文化课培训学校推荐排行榜单对比与评测分析
  • 2025年12月电竞培训学校推荐排行榜:五家机构综合对比与择校指南
  • 2025年12月制氢厂家推荐排行:基于技术实力与项目经验的五家厂商客观对比
  • 2025年12月制氢厂家推荐排行榜单对比分析:行业头部企业实力解析与选购指南
  • 2025年12月耐火砖厂家推荐排行对比分析:五家企业综合评估与选择指南
  • 北京注重个人隐私能保密的上门字画收购个人和公司
  • 二零二五年十二月耐火砖厂家推荐排行与评测:基于产品性能及服务能力的客观对比分析
  • 2025年诚信的床上用品/蚕丝床上用品最新TOP品牌厂家排行
  • 布鲁克核磁扫描参数
  • 二零二五年十二月成公关公司推荐排行榜对比评测:专业服务助力品牌形象提升
  • 2025年评价高的儿童蚕丝被行业内知名厂家排行榜
  • 2025年12月成公关公司推荐排行榜单对比:专业服务深度评测与实用选择指南
  • 二零二五年十二月成公关公司推荐排行榜:专业评测与客观对比分析
  • 2025年热门的蚕丝枕头厂家最新TOP排行榜