博客网站初上线时间:2025-03-01博客网站大更新时间:2025-05-16 博客大更新在数字世界的浪潮中,我的博客也迎来了它的蜕变之旅。它不仅仅是代码的重构,更是我对分享和交流的全新探索。 一、更新的初衷原先的博客存在着许多问题,例如: 博客主题单调,只有色彩主题。 博文的内容显示不够美观。 阅读体验不佳。 二、更新的内容原先的博客使用了hexo的aurora主题,主题的色彩单调,而且博文的内容显示不够美观。 现在的博客使用了hexo的butterfly主题,主题的色彩更加丰富的,并且博文内容显示更加美观。同时仿照了其他博主的设计,结合自己的喜好,进行了修改。 三、更新的收获通过这次的更新,我对博客的主题进行了修改,使得博客的内容更加美观,同时也提高了前端开发的能力。
一、序列化与反序列化基础1.1 什么是序列化与反序列化在深入探讨PHP反序列化漏洞之前,我们首先需要理解序列化与反序列化的基本概念。从本质上来说,序列化(Serialization) 就是将数据转化成一种可逆的数据结构的过程,而反序列化(Deserialization) 则是将这种已转换的数据结构重新还原为原始数据对象的过程。这两个过程就像生活中的打包和拆包一样普通而重要。 为了帮助读者更直观地理解这个概念,我们可以借用一个日常生活中常见的例子——网购家具的运输过程。当我们在淘宝上购买一张桌子时,由于桌子这种不规则的大件物品很难直接从一座城市运输到另一座城市,商家通常会将其拆解成一块块木板,然后装入箱子中进行快递运输。这个”拆解并打包”的过程就类似于序列化——我们将复杂的数据结构转换成可以方便存储和传输的形式。当买家收到货物后,需要将这些木板重新组装成桌子的样子,这个”拆包并组装”的过程就对应着反序列化——我们将序列化后的数据重新还原成原始的数据对象。 在PHP语言中,序列化和反序列化的操作主要通过两个核心函数来完成。serialize()函数负责将对象或数组等复杂数据类型格式化成有序 ...
网络安全
未读WAF介绍WAF是什么?定义与核心概念WAF的全称是 Web Application Firewall,即Web应用防火墙,简称WAF。 国际上公认的一种说法是:Web应用防火墙是通过执行一系列针对HTTP/HTTPS安全策略来专门为Web应用提供保护的一款产品。从技术实现角度来看,WAF本质上是工作在OSI七层模型第七层(应用层)的安全设备,其核心价值在于能够理解和解析HTTP/HTTPS协议层的内容,并基于预定义的安全规则或动态学习的行为模型对Web流量进行深度检测和智能防护。 理解WAF需要把握三个关键维度:首先,WAF是应用层专注的安全产品,与传统网络层安全设备有本质区别;其次,WAF强调的是深度检测能力,不仅看数据包的表层信息,更关注Payload(负载)中的内容含义;最后,WAF具备动态响应能力,能够根据检测结果实时做出放行、阻断、告警等动作。 WAF产生的背景与原因要理解WAF为何会产生,我们需要回顾Web应用安全威胁的发展历程。在21世纪初,随着互联网的蓬勃发展,Web应用逐渐成为企业和组织核心业务的主要载体。然而,随之而来的是Web应用安全事件的频发——SQL注入、跨 ...
基础概念1.1 XSS的定义与命名由来跨站脚本攻击(Cross-Site Scripting,简称XSS)是一种代码注入攻击安全漏洞,攻击者通过在目标网站中注入恶意脚本代码,当其他用户访问该页面时,这些恶意代码会在用户的浏览器上下文中执行。由于恶意脚本可以访问目标站点的所有资源(Cookie、本地存储、DOM树等),攻击者可以窃取用户的敏感信息、劫持用户会话、执行未经授权的操作,甚至进一步对访问该页面的其他用户发起攻击。 值得注意的是,XSS的缩写并非使用”CSS”而是”XSS”,这是因为CSS(Cascading Style Sheets,层叠样式表)在Web开发领域已经是广为人知的术语缩写。为了避免与层叠样式表产生混淆,安全社区决定使用”XSS”作为跨站脚本攻击的标准缩写。这种命名约定在2000年代初期的安全邮件列表和会议上逐渐确立,并最终成为行业标准。此外,”X”也暗示了这种攻击的跨域特性——恶意脚本虽然托管在攻击者控制的域上,但却能在受害者的浏览器中执行,仿佛是目标站点的合法脚本。 1.2 XSS漏洞产生的根本原因XSS漏洞产生的根本原因在于Web应用程序对用户输入的信任和对输 ...
基础知识SQL注入关键词手册1. 基础探测关键词1.1 单引号测试123-- 测试是否存在注入点?id=1' --+?id=1' and '1'='1 1.2 注释符123456789-- MySQL注释?id=1' --+?id=1' #-- MSSQL注释?id=1' ---- Oracle注释?id=1' -- 1.3 逻辑测试1234567-- 数字型测试?id=1 and 1=1?id=1 and 1=2-- 字符型测试?id=1' and '1'='1?id=1' and '1'='2 2. 信息收集关键词2.1 ORDER BY123-- 确定列数?id=1' order by 3--+?id=1' order by 4--+ -- 如果报错,说明只有3列 2.2 UNION SELECT123-- 获取数据库信息?id=-1' union select 1,2,3--+? ...
网络安全
未读概述在当今互联网时代,Web应用已经渗透到社会生活的方方面面,从电子商务、在线银行到社交媒体和企业内部系统,几乎所有的互联网服务都构建在HTTP协议之上。然而,随着Web应用的复杂性不断增加,Web安全问题也日益突出。根据OWASP(开放Web应用安全项目)的统计,Web应用安全漏洞已经连续多年成为影响最广泛的安全威胁类型。 本文旨在系统性地介绍HTTP协议的基础知识以及常见的Web安全漏洞,帮助安全从业人员建立完整的知识体系。我们将从HTTP协议的底层原理出发,深入剖析请求与响应的每一个细节,然后系统性地讲解各类Web安全漏洞的原理、利用方式和防御措施。文章将涵盖注入类漏洞、跨站类漏洞、文件类漏洞、信息泄露类漏洞、服务器配置类漏洞、SSRF漏洞、逻辑漏洞、反序列化漏洞以及第三方组件漏洞等多个维度,力求为读者提供一份全面、详尽的技术参考资料。 第一章 HTTP协议基础1.1 HTTP协议概述1.1.1 HTTP的发展历史HTTP(HyperText Transfer Protocol,超文本传输协议)是互联网上应用最为广泛的应用层协议之一。它最初由蒂姆·伯纳斯-李(Tim Berne ...
开发工具
未读突然发觉关于虚拟化技术的文章我还没总结过,所以先写一篇文章总结一下虚拟化技术里的一种:容器化技术。广为使用的容器化技术有 Docker、Kubernetes、OpenShift 等。本篇主要介绍 Docker 的底层原理。 Docker 基础作为大神或者准架构师/架构师,一定要了解一下 Docker 的底层原理。 但是,首先还是简单说明一下docker的简介。 Docker 简介 Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议 开源。 Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。 容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。 Docker 从 17.03 版本之后分为 CE(Community Edition: 社区版)和 EE(Enterprise Edition: 企业版),我们用社区版就可以了。 Docker 的应用场景 Web 应用的自动化打包和发布 自动化测试和持续集成 ...
编程开发
未读🧠 Systematic Learning:一个广泛型系统性学习网站大家好!今天我想向大家介绍我开发的一个知识库网站——Systematic Learning。 📚 网站简介Systematic Learning 是一个基于 Sphinx 构建的综合性学习知识库,致力于为学习者提供系统化、结构化的知识整理与导航。 🔗 在线访问: https://aurorp1g.github.io/Systematic-Learning/index.html 📂 项目源码: https://github.com/Aurorp1g/Systematic-Learning ✨ 主要特点1. 知识覆盖面广网站涵盖了多个领域的系统知识: 计算机科学:编译原理、计算机网络、数据结构与算法、数据库原理、操作系统 编程语言:Python 入门到进阶(解释器、语法、数据类型、函数、面向对象、模块等) Linux 工具:GDB 调试、性能优化、进程管理、网络工具 数学:线性代数、微积分、概率统计、离散数学、数值分析 物理:力学、热力学、量子力学、电磁学 2. 技术栈专业 文档生成:Sphinx + MyST ...
NSIS 打包保姆级教程(含守护进程注册与系统痕迹清理)前言 很久没有用 NSIS 来打包安装程序了,导致我忘了如何使用(原先笔者以为之前已经写过 NSIS 相关教程,但那时候只写过某编译器的教程),所以记录下保姆级的教程,并补充近期踩坑的「排雷指南」。 内容必要条件安装 NSIS v3.08 版本,这里我下的是中文版,学习之初方便查看帮助文档。 感谢作者翻译!!! 具体操作基础向导流程 点击 VNISEdit,进入脚本编写界面 文件 ==> 新建脚本:向导 ==> 进入向导界面,根据向导提示填写内容 图标与命名:可以更改为自己的图标(否则是 NSIS 的默认图标),安装程序文件名也能自定义(默认为 Setup)。建议在此处完成「品牌标识设定」,避免后续手动修改脚本。 授权文件一般用不着,除非要定制化安装界面,我现在是选择直接跳过。如无需授权,直接删除路径即可。 文件组织策略 到这一步,默认会有两个文件,直接删除它们,开始填充自己打包需要的文件。 左边 MainSection 表示主节点。如果安装程序不包含「守护进程注册」(后台服务)之类操作,使用默 ...
前言相信很多大学生都有过这样的经历:早上醒来发现校园网又掉了,要么急着上课还要先手动连接网络,要么晚上刷剧正爽突然断网需要重新登录。这些看似细小的麻烦,实际上极大影响了学习和生活的体验。 今天给大家介绍一款我开发的校园网自动连接工具——Auto Connect,它能够自动检测网络状态并重新连接校园网,让你告别手动重复登录的烦恼。 解决什么问题校园网(尤其是锐捷 ePortal 系统)存在以下痛点: 频繁掉线 - 网络不稳定,经常需要手动重连 重复登录 - 每次连接都需要输入账号密码 无法后台运行 - 传统的网页认证方式无法在后台持续工作 缺乏监控 - 断网后无法及时知晓 Auto Connect 正是为了解决这些问题而诞生的。 核心功能🔌 自动连接只需配置一次 WiFi 名称、账号密码,程序会自动帮你完成: 自动连接指定的校园 WiFi 热点 自动完成 ePortal 网页认证 自动检测网络状态,断线重连 🎨 现代化界面采用 Eel 框架开发,完美结合 Python 后端与 Web 前端: 简洁美观的控制界面 内置浏览器 / 系统浏览器双模式 系统托盘运行,后台无感工作 ...















