IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

安全

共 391 篇文章

IT 2026-06-03 09:03:24 / 累计浏览 25

Windows 95 defenses against installers that overwrite a file with an older version

早期16位Windows系统中,许多系统组件可由程序安装包分发,导致程序安装程序常直接覆盖系统文件,可能将Windows 95组件替换为更旧的版本。Windows 95通过建立隐藏的备份目录SYSBCKUP来应对:安装程序完成后,系统会检测关键文件是否被覆盖;若新覆盖文件的版本高于备份版本,则将其存入备份目录;若版本较低,则用备份文件还原,从而防止系统组件被降级。此前曾尝试直接阻止覆盖操作,但引发了更多兼容性问题,最终采用“先允许覆盖、后自动修复”的策略更为有效。

本机暂存
IT 2026-06-03 09:03:24 / 累计浏览 10

提权实录:通过命名管道劫持可写服务

在分析Windows应用服务时,发现其命名管道的访问控制列表配置错误,允许“Everyone”组的用户进行写操作。低权限攻击者可利用此管道作为通信通道,向以System权限运行的服务发送特定格式的消息(如终止进程的指令)。进一步调查发现,该服务在被强制终止后会自动重启,但其可执行文件的权限配置同样存在问题,允许“Everyone”组读写。利用这两个缺陷,攻击者可构建一条本地提权链:通过循环线程,一边尝试将恶意程序替换目标服务的可执行文件,一边通过上述有漏洞的命名管道发送指令触发服务重启。服务重启时便会加载已被替换的恶意程序,从而以System权限执行攻击者代码。此案例凸显了命名管道ACL配置不当与系统服务可执行文件权限宽松这两种漏洞组合利用的危害。

本机暂存
IT 2026-06-03 09:03:24 / 累计浏览 9

黑盒视角下的 WebView 漏洞面探索

本文从黑盒测试视角,系统梳理了移动端WebView组件的漏洞挖掘方法。作者摒弃复杂的内部逻辑分析,专注于通过二维码扫描和URL Scheme跳转两个主要入口快速探测漏洞。在二维码扫描场景中,攻击者可构造特定URL触发WebView加载,若APP对白名单域名的校验存在缺陷(如仅判断包含关系),可通过子域名或@符号等方式绕过,从而携带用户凭证访问外部服务器。对于URL Scheme,黑盒测试者无需逆向分析APP配置文件,而是通过抓包匹配WebView页面中暴露的自定义协议格式(如xxx://scheme/path?url=),再构造恶意链接触发跳转,同样可导致凭证泄露。此外,文章还揭示了JSBridge通信机制的安全风险:许多APP未对调用来源域进行校验,使得攻击者在WebView内可遍历Window全局对象,发现并调用暴露的Native接口(如获取应用信息的方法),进而窃取敏感数据。整个探索过程紧扣实战,强调了从攻击者视角发现APP在WebView访问控制、域名校验及JSBridge接口暴露等方面的安全疏漏。

本机暂存
IT 2026-06-03 09:03:23 / 累计浏览 16

Vibe Coding 的安全风险与应对策略

Vibe Coding是一种新兴开发模式,开发者通过提示词指导AI生成代码,自身退居为战略“导演”,能大幅提升编码速度与实验效率。当前约半数开发者使用AI编码助手,部分组织已借此生成超过半数代码。然而,AI代码生成的概率特性带来显著安全隐患,包括生成幻觉API、过时依赖、脆弱或不透明代码,甚至破坏架构或导致关键代码丢失。供应链风险也随之升高,AI可能引入未经审查的依赖项。研究显示,仅18%的组织制定了相关政策,且已有技术能欺骗AI助手绕过人工监督执行危险操作。 应对这些风险需从源头着手:采用模块化架构以限制AI错误的影响范围,并推动开发者向架构师思维转变,重点审查提示与输出。当前阶段Vibe Coding更适用于原型设计而非生产环境,必须嵌入严格的安全流程。实时安全扫描应集成至开发环境(如IDE与代码审查环节),而AI驱动的安全代理可协助大规模问题检测与修复。DevSecOps团队在构建快速反馈循环和防御机制中作用关键,需在早期即管理风险,适应AI生成系统的波动性。无论Vibe Coding未来地位如何,组织都需建立适配AI时代的安全框架与工程实践。

本机暂存
IT 2026-06-03 09:03:23 / 累计浏览 8

unzip: unsupported compression method 99

该文章属于故障排查类内容,记录了处理AES-256加密ZIP文件时遇到的兼容性问题及其解决方案。标准unzip工具因不支持“压缩方法99”(通常与AES加密相关)而解压失败,尽管WinRAR可以处理,但命令行工具unrar同样不支持。解决方案是使用功能更强大的7zip工具。在Windows环境下使用7zip解压时,可能出现文件名乱码问题,通过指定编码参数(如-mcp=65001代表UTF-8)可解决;反之,若需在Linux下解压Windows压缩的文件且避免乱码,则应使用GBK编码(-mcp=936)。此外,文章强调了文件扩展名必须为.zip,若改为.7z会导致无法识别的错误。

本机暂存
IT 2026-06-03 09:03:23 / 累计浏览 7

dns over https 转发

该方案旨在应对办公网络中ISP强制的DNS劫持问题,通过建立内网DNS服务以提供不受污染的解析。核心方法是首先在系统hosts文件中将域名`doh.pub`静态解析至IP地址`120.53.53.53`,以此规避可能的劫持。随后,使用gost v2工具搭建一个DNS服务器,该服务器监听指定的内网IP地址的53端口(UDP协议),并将所有收到的DNS查询请求通过HTTPS协议转发至`https://doh.pub/dns-query`,从而实现DNS-over-HTTPS(DoH)转发。实施时需注意:修改hosts是确保不被劫持的关键步骤;gost工具需从其GitHub仓库获取;由于可能与systemd占用`127.0.2.1:53`冲突,服务不应监听`0.0.0.0`,必须指定具体的内网IP地址。

本机暂存
IT 2026-06-03 09:03:23 / 累计浏览 7

家庭网络拓扑升级

该文阐述了家庭网络拓扑从初始运营商设备升级至软路由架构的过程,核心目标是解决孩子设备过度使用的技术管理难题。初始阶段,用户尝试通过物理断网或路由器黑名单(基于MAC地址)限制设备接入,但孩子通过修改设备MAC模式为随机地址绕过控制。为此,用户引入二手x86主机刷入OpenWrt系统作为主路由,构建新拓扑:光猫与路由器启用MAC地址白名单,仅允许可信设备接入;OpenWrt负责网络过滤和DNS加速,TP-Link WiFi7路由器承担用户行为管理与无线接入,同时设置光猫备路由保障稳定性。升级后,用户发现OpenWrt的DNS Fake-IP模式影响ping/dig命令执行,部分应用如小米天气因UDP问题无法连接,且整体网络出现不稳定迹象,初步推测与代理配置相关。后续计划包括排查网络卡顿根源、启用IPv6与DDNS以实现外网访问、以及为机柜添加温度监控。此外,文章强调了设备管理需结合沟通策略,基于对孩子使用手机潜在危害的认知(如网络负面影响、成瘾风险),通过协商制定使用计划来平衡技术控制与教育引导。

本机暂存
IT 2026-06-03 09:03:23 / 累计浏览 9

后量子密码学与量子安全:综述

随着NIST正式敲定ML-KEM、ML-DSA和SLH-DSA三项标准,后量子密码学正从理论评估走向实际部署。本综述系统梳理了该领域的关键脉络。文章首先深入分析了后量子密码学面临的安全模型,不仅涵盖了针对算法的量子攻击,也详细探讨了针对具体实现的侧信道攻击等威胁。在算法层面,文章全面介绍了基于格、编码、多变量以及哈希函数等不同数学难题的后量子密码方案,并剖析了它们各自的性能特点与安全考量。在标准化与实践应用部分,重点阐释了NIST标准化进程的详细历程、不同算法家族的优劣比较,以及在实际迁移中采用“混合模式”的过渡策略。文章最终强调,向后量子时代的演进是一次密码生态系统的整体升级,需要综合考虑算法选择、性能权衡、协议适配以及密码敏捷性等系统性工程问题。

本机暂存
IT 2026-06-03 09:03:23 / 累计浏览 11

网络化控制系统的安全性量化:综述

网络化控制系统作为电网、交通网络等关键基础设施的核心组成部分,其安全性面临着日益严峻的威胁。本文系统综述了如何对这类系统的安全风险进行量化评估。文章首先阐明了NCSs中通信网络与控制回路深度耦合所带来的独特安全挑战,例如数据篡改、拒绝服务攻击等可能引发的物理系统失效。随后,综述梳理了现有安全量化框架,重点分析了如何利用控制理论和网络安全工具,将网络攻击事件转化为对控制性能指标(如稳定性、误差)的可度量影响。文章对比了多种建模与分析方法,包括基于模型的攻击检测与影响评估、事件触发的动态安全分析,以及融合机器学习技术的数据驱动方法。最后,探讨了当前研究面临的挑战,如复杂大规模系统的实时性分析、异构模型集成,以及如何构建从网络威胁到物理后果的普适性量化指标体系,为设计更具韧性的网络化控制系统提供了理论参考。

本机暂存
IT 2026-06-03 09:03:23 / 累计浏览 6

离线授权码设计思路

本文系统性地探讨了软件产品的离线授权码设计思路与实现方案。文章首先区分了软件层面与硬件层面的授权方式,并聚焦于更灵活、低成本的软件授权码机制。设计核心在于授权码需具备设备绑定性、安全性、可验证性、可复现性等特征。实现的关键步骤包括获取设备的唯一稳定标识(如CPUID、主板UUID等),并在此基础上构建授权码。 文章详细剖析了两种主流技术方案:对称加密方案与非对称加密方案。对称方案通过将机器码、项目名、有效期与盐值拼接后进行哈希(如MD5)生成签名,并采用36进制编码等技巧优化用户体验,使其便于手动输入,但密钥需内置于客户端,存在一定逆向风险。非对称方案基于RSA算法,可签发包含丰富授权信息(如功能模块、有效期)的JSON格式许可证,安全性更高但授权数据较长。此外,文中也简要介绍了基于标准JWT的实现途径。 最后,文章指出了离线授权的安全局限性,并针对“时钟回拨”这一常见破解手段,提出了记录安全时间戳、与业务数据关联等实用的缓解措施。整体而言,文章提供了从基础设计到具体实现的多维度技术参考。

本机暂存
IT 2026-06-03 09:03:23 / 累计浏览 9

从HertzBeat聊聊SnakeYAML反序列化

本文围绕Apache Hertzbeat后台代码执行漏洞(CVE-2...)展开,深入剖析了在无外网连接条件下,如何通过PostgreSQL JDBC驱动的漏洞实现命令执行的“不出网利用”方法。文章首先介绍了漏洞背景,指出该漏洞源于SnakeYAML反序列化问题,攻击者可通过构造恶意YAML配置,在目标服务器上执行任意代码。核心利用链条包括:利用Hertzbeat的后台功能触发YAML解析,通过JDBC驱动的特定URL格式(如jdbc:postgresql://...)加载恶意类,从而绕过网络限制完成攻击。文中详细演示了从漏洞发现、Payload构造到最终命令执行的全过程,强调了此类漏洞在受限网络环境下的危害性与隐蔽性。最后,作者结合审计实践,总结了防御此类反序列化漏洞的建议,包括严格校验输入、更新依赖库以及加强网络策略管理。

本机暂存
IT 2026-06-03 09:03:23 / 累计浏览 11

ClassPathXmlApplicationContext的不出网利用

ClassPathXmlApplicationContext是Spring框架中用于加载XML配置文件的核心类,其默认行为会从类路径加载资源。本文深入探讨了在无外部网络连接的环境下,如何利用该类的特性实现漏洞利用,聚焦于反序列化攻击向量。文章以Springboot Code-Breaking挑战为例,分析了在受限网络条件下,通过精心构造的XML配置文件触发反序列化过程,从而执行任意代码的技术细节。关键点包括:利用Spring的资源加载机制绕过网络限制,结合SnakeYAML等库的反序列化漏洞,实现在不出网的情况下完成攻击链。这不仅揭示了Spring应用在安全配置上的潜在风险,还提供了针对此类场景的防御建议,强调了代码审计中对于类路径处理和序列化安全的重视。

本机暂存
IT 2026-06-03 09:03:23 / 累计浏览 10

Typecho 多用户二次认证插件

该插件为Typecho 1.2.0+版本提供基于OTP的多用户二次认证功能。作者因现有扩展不支持多用户而开发此方案,插件具有界面简洁、支持多用户的特点。核心功能是在登录页面集成动态码输入框,实现账户密码与OTP验证码的双重校验。 用户需在个人设置页面扫描二维码或手动绑定OTP密钥,绑定后密钥固定,未绑定时页面会随机生成密钥。插件允许用户验证并解绑已有OTP认证。登录时,已绑定用户必须输入正确动态码,未绑定用户则可直接登录。安装时需将文件夹上传至插件目录并启用。 配置选项包括时间窗口期设置(用于处理时间戳差异)和防呆设计(需确认卸载以防止误操作导致密钥丢失)。更新记录显示插件已修复PHP 8.2语法不兼容及表单错误挂载问题。

本机暂存
IT 2026-06-03 09:03:23 / 累计浏览 13

当Nashorn失去括号:非典型Java命令执行绕过

针对Java Nashorn脚本环境中禁止使用小括号与中括号时执行任意命令的挑战,本文探讨了一种非常规的绕过思路。文章指出,Nashorn本质上是JavaScript引擎,而浏览器JavaScript中已存在无括号的XSS Payload技术,其核心在于避免直接调用函数时所需的括号。在此基础上,文章深入分析了如何将这一技术思路迁移到Nashorn的受限环境中,通过巧妙构造字符串并利用JavaScript隐式的函数调用机制(如通过运算符或属性访问触发),在无需显式编写括号的情况下,最终实现对如`java.lang.Runtime`等类方法的调用,从而达到执行系统命令的目的。该探讨为特定限制条件下的代码审计与安全防御提供了有价值的思路。

本机暂存
IT 2026-05-10 18:36:52 / 累计浏览 292

Postmortem: 关于 xzutil 后门事件的一些事后复盘

这篇讲的是2024年3月震惊开源社区的xzutil后门事件的一次深度复盘。与许多聚焦于“漏洞如何被发现”的文章不同,作者以非事件第一发现者的社区成员视角,梳理了从攻击者潜伏、到恶意代码合入、直至被偶然揭露的完整时间线。 文章的核心在于拆解攻击者的精密手法:攻击者如何通过长期经营信任、利用维护者精力有限的空隙,将恶意代码巧妙伪装成性能优化提交。复盘特别指出了这次供应链攻击的深远影响,它暴露了关键基础设施软件维护的脆弱性,以及一个“单点”维护者可能带来的系统性风险。 作者并非止步于描述事件,而是从技术社区协作模式的角度给出了思考:当项目的健康度与少数关键人物深度绑定时,我们该如何建立更健壮的防线?这种基于具体事件、指向系统层面的反思,让这次复盘超越了单纯的事件记录,为每一位开源参与者提供了审视自身所处生态安全的实用视角。

本机暂存
IT 2022-06-19 22:51:51 / 累计浏览 4,199

洋葱式信息安全观察:信息安全与业务浪涌

这篇从信息安全三属性中的“可用性”切入,聚焦电商大促、春运抢票、核酸扫码等场景下频繁出现的“业务浪涌”现象。作者借用电气工程中的“浪涌”概念,将其映射到互联网系统中瞬间爆发的业务压力。 文章系统分析了导致可用性瓶颈的几种典型系统依赖模式,包括纵向扩展、集群、分布式计算及跨云外部依赖。核心在于,面对几乎不可避免的流量高峰,如何进行系统性防御。作者提出的解决思路涵盖四个层面:顶层的架构设计(需考虑全链路扩展性)、底层的资源设计(强调云资源的弹性冗余与调度)、面向服务的QoS与SLA设计(为流量分级和资源调配提供依据),以及具体的缓存、队列、读写隔离、降级限流等技术手段。 最后,文章点明其核心观点:业务浪涌是可预测和可预防的,通过架构、资源、服务与技术的协同设计,能够有效构建系统的“防浪涌”能力,避免雪崩效应,保障关键业务在极端流量下的稳定运行。

本机暂存
IT 2022-06-19 18:15:01 / 累计浏览 4,671

一句话crontab实现防ssh暴力破解

这篇讲的是如何用一条crontab命令,为公网VPS搭建一道自动化的SSH暴力破解防火墙。 针对公网VPS即便更换非标准端口也难免被扫描和试探的问题,作者提出了一种轻量却高效的解决方案:将一条Bash命令放入crontab定时任务,实现自动监控与封禁。这条命令会通过`journalctl`查询最近24小时内的SSH登录日志,用`awk`统计出失败次数超过5次的来源IP,最后自动将这些“坏人”IP追加到`/etc/hosts.deny`黑名单中。 文章最巧妙的地方在于,用短短三个管道符串联起日志查询、统计分析与访问控制,既利用了系统原生日志工具,又结合了简单的文本处理,最终实现了从发现到封禁的全自动闭环。作者还贴心地指出,命令可根据是否使用systemd系统灵活调整日志来源,增强了实用性。 对于运维人员或个人站长而言,这提供了一个零成本、即刻生效的防护思路,无需依赖额外软件,用系统自带工具就能构筑起第一道安全防线。

本机暂存
IT 2021-06-13 22:50:21 / 累计浏览 2,948

互联网企业安全团队建设

这篇讲的是企业安全团队从无到有的建设心法,作者从安全负责人(CSO)的视角出发,分享了“招、管、培”三个关键阶段的实战经验。 文章开篇点明,一支有想法且能持续战斗的安全团队,是企业安全体系落地的根本前提。在招聘上,作者强调不能简单看技术,核心逻辑是以企业安全目标和业务阶段为锚点来定需求。他提倡寻找专业过硬、真正热爱安全且志同道合的同路人,宁缺毋滥,并通过打造团队影响力和坦诚沟通来吸引人才。 团队管理方面,作者认为其目的并非约束,而是高效达成目标。他特别指出安全负责人必须以身作则,注重打造真正落地的团队文化,并力争在绩效与发展机会上公平公正,做到知人善任,避免让优秀成员沦为“工具人”。 最后在人才培养上,核心是让团队可持续发展。除了提供实践空间、鼓励创新外,作者大力倡导建立内部分享机制,以此驱动成员养成独立思考与总结的习惯。他也提醒负责人要有格局,协助成员做好职业规划,不必担心其成长后离开。 整体上,这篇文章没有空谈理论,而是紧密围绕安全管理者在实际工作中会遇到的具体问题,提供了结构化的思考和可操作的方法。

本机暂存
IT 2021-05-27 07:14:04 / 累计浏览 1,889

sudoers: 允许用户免密用root权限执行某些命令

作者从系统管理的实际需求出发,介绍了如何通过配置 sudoers 文件,让特定用户或组能在不输入密码的情况下,以 root 权限执行命令。文章提供了三种典型配置场景,各有侧重。 首先,针对个人用户,比如 felix021,可以直接在 sudoers 中添加一行,允许该用户免密 sudo 执行所有命令,这适合开发或测试环境中需要快速提权的场景。其次,对于团队协作,文章演示了如何允许整个组(如 adm)免密 sudo 执行所有命令,这便于批量管理权限,但需注意安全性。最后,文章展示了更精细的控制:通过 Cmnd_Alias 定义命令别名 APT_CMD,限定只允许 apt-get 或 apt install 相关的安装命令,然后允许所有用户免密执行这些特定命令,这在生产环境中能减少风险,确保只有必要操作被授权。 关键差异在于授权范围:第一种是用户级别的全权,适合个人便利;第二种是组级别的全权,适合团队协作;第三种是命令级别的限制,适合需要最小权限原则的场景。作者通过代码示例直观展示了这些配置,让读者能根据自身环境选择合适方案。 文章最后提醒,虽然免密 sudo 提升了效率,但需权衡安全性,避免过度授权带来的风险。

本机暂存
IT 2021-05-24 22:46:03 / 累计浏览 2,547

用 Pomerium 来实现基于身份的访问控制

这篇讲的是如何将 Google 提出的零信任安全架构 BeyondCorp 中的一个关键环节——基于用户身份的访问控制——通过开源项目 Pomerium 进行落地实施。作者从 BeyondCorp “内网不再等于安全”的核心理念出发,选择了 Pomerium 作为实现鉴权反向代理的方案。 文章没有停留在理论介绍,而是详细记录了在 FreeBSD 系统上的完整实践过程。从安装(甚至为系统制作了 port)、配置必要参数(如证书、随机密钥),到处理非特权用户使用 443 端口的系统限制,都给出了具体说明。核心部分聚焦于如何将 Pomerium 与 OAuth 2.0 认证流程、Google 或 Azure 等身份提供商集成,并根据系统规模选择 allowed_users、allowed_domains 或 allowed_groups 策略。 作者还特别指出了两个实践中的“坑”:一是身份提供商(如 G Suite)对服务账户权限的特殊要求,二是需防止后端服务器在重定向时陷入循环。整篇文章像是一份扎实的部署笔记,不仅分享了工具的使用,更传递了将一个安全理念转化为实际配置时需要注意的细节和经验。对于想尝试零信任方案或寻找身份感知代理工具的读者,这提供了可操作的参考路径。

本机暂存