当前位置: 首页 > 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.jsqmd.com/news/57818/

相关文章:

  • SSTI靶场
  • 2025空调配套优选!空调机组风机哪家好?高适配品牌盘点
  • CORS配置错误
  • MySQL运维
  • Springboot框架-泄露
  • React的设计理念与核心特性 - 指南
  • 拖库的七种方法
  • 2025年厦门AI形象美学机构权威推荐榜单:魔近AI‌/魔近形象美学‌/魔近AI形象美学‌源头机构精选
  • 语言安全
  • 2025年情人节送女友礼物推荐:哪样最显心意?深度解析与避坑指南
  • 实用指南:​​MQTT协议发展历程与版本演进:从工业监控到物联网核心的协议进化​
  • 2025苏南喷塑加工优质厂家TOP5权威推荐:喷塑加工厂家
  • GEO推广活动TOP5权威推荐:深度测评指南,甄选企业领跑A
  • 2025年高压软启动柜优质厂家、实力厂商、来图定制企业推荐榜
  • 2025年移民服务机构综合测评:十大移民公司关键数据与适配场景全解析
  • 气体分析仪厂家如何选择?2025年十大品牌综合评测与场景化选型指南
  • 案例库--管辖地为原告住所地的约定有效
  • C#/.NET/.NET Core优秀项目和框架2025年11月简报
  • 2025证件照免费生成软件TOP榜出炉!5款一键搞定神器第一名真的绝了
  • Solon v3.7 黑科技: 消灭空指针异常!
  • kmeans聚类,无需标签,无监督学习
  • 2025年江西金属屋面系统公司推荐,江西南匠建筑材料有限公司
  • 北京丰宝斋上门回收字画15210016680
  • 10 个值得关注的 PHP 冷门包 不常用但非常值得推荐
  • 2025 年 12 月电力变压器,干式变压器,箱式变压器厂家最新推荐,聚焦资质、案例、售后的十家机构深度解读!
  • matlab 利用kmeans实现鸢尾花分类
  • 国内有哪些知名的字画回收机构 北京丰宝斋以专业与诚信领跑
  • Kafka:消费者重试与死信队列的对应模式分析
  • 2025年环保清洗剂服务商哪家靠谱?清洗剂厂家全解析
  • P3733 [HAOI2017] 八纵八横