自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(405)
  • 资源 (1)
  • 收藏
  • 关注

原创 隐形的内核后门:无模块Linux内核植入技术详解

在聊具体技术之前,我们先搞清楚核心概念——所谓“无Linux内核模块植入后门”,本质上是一种绕开常规内核模块加载流程的恶意技术,和传统内核后门有着本质区别。传统的Linux内核后门,大多会打包成.ko格式的内核模块文件,通过`insmod`、`modprobe`等系统命令加载到内核中运行。这种方式的痕迹很明显,会在`/proc/modules`(内核模块列表)、`/sys/module/`(模块文件目录)中留下清晰记录,很容易被安全工具检测到。而无模块内核植入后门,完全抛弃了.ko模块载体,直接将恶

2026-01-05 21:31:43 500

原创 揭秘Telnet暴力破解工具:原理、实现与核心技术解析(C/C++代码实现)

在网络运维与网络安全领域,Telnet协议作为一款经典的远程登录协议,曾广泛应用于设备远程管理,但因其明文传输的致命缺陷,如今成为了网络安全的薄弱环节。而Telnet暴力破解工具,正是依托这一协议的漏洞实现功能的特殊程序,接下来我们将从含义、原理、设计思路到相关知识点,全面拆解这款工具。

2025-12-30 21:57:30 915

原创 手动清理 TCP TIME-WAIT 套接字:Linux 内核模块的实现与原理

日常运维Linux服务器时,你可能会遇到一个头疼的问题:服务器上堆积了大量处于TIME-WAIT状态的TCP连接,导致可用端口被占满,新的连接建立失败,服务响应变慢。常规的系统参数调整(比如修改`net.ipv4.tcp_tw_reuse`、`tcp_tw_recycle`)虽然能缓解,但有时我们需要更精准的方式——直接手动终止指定的TIME-WAIT连接。今天我们就聊聊如何通过一个Linux内核模块,实现对TCP连接(尤其是TIME-WAIT套接字)的精准“清理”。

2025-12-26 21:52:44 884

原创 恶意软件分析必备:提取shellcode快速调试指南(C/C++代码实现)

在恶意软件分析过程中,我们经常会从样本里提取出一段“散装代码”——它没有完整的程序结构,却藏着恶意操作的核心逻辑,这就是shellcode。直接调试这段代码特别麻烦,没有上下文、找不到入口,就像拿着一堆零件想修机器却不知道从哪下手。今天就给大家讲清楚,怎么快速调试这些提取出来的shellcode,以及背后的实现原理,全程用大白话,不堆砌专业术语。

2025-12-25 21:52:44 581

原创 轻量高效的HTTP/HTTPS代理:SSL拦截与流量管控核心解析

咱们先从最基础的问题入手:轻量级HTTP/HTTPS代理到底是个啥?简单说,它就是个“轻量级中间人”——夹在你的设备(比如电脑、手机)和目标网站之间,一边接收你的访问请求,一边把请求转发给网站,再把网站的响应回传给你。关键在于“轻量”:体积小、占内存少、CPU消耗低,不会拖慢设备运行;同时还能搞定HTTPS的加密流量,甚至能对流量做捕获、修改、重定向这些操作,不管是做网络分析、安全测试,还是绕过部分网络限制,都能用得上。

2025-12-22 22:40:44 940 1

原创 手把手搞懂TFTP:简易服务器与客户端实现全解析(C/C++代码实现)

在嵌入式开发、局域网小文件传输场景中,你大概率听过「TFTP」这个词——它不像FTP那么复杂,没有认证、没有连接管理,却能快速完成小文件的传输。今天我们就结合一份极简的TFTP服务器/客户端代码,用大白话讲透TFTP的核心原理、代码设计思路,以及背后的网络编程知识点。

2025-12-16 22:14:47 875

原创 看门狗守护进程:给Linux系统装个“救命闹钟”(C/C++代码实现)

在嵌入式开发、服务器运维这些场景里,最头疼的事儿莫过于系统“卡死”——CPU负载飙到满格、进程僵死、甚至整个系统失去响应,没人手动干预的话,设备就彻底“趴窝”了。这时候,“看门狗守护进程(watchdogd)”就成了系统的“贴身保镖”:它盯着系统状态,定期给硬件看门狗“喂饭”,一旦系统出问题没法喂饭,看门狗就会触发硬件重启,把系统从死机状态拉回来。今天我们就拆解这款轻量的watchdogd实现,聊聊它是怎么守护系统稳定的。

2025-12-15 22:41:24 573

原创 Linux内核模块实现TCP连接强制断开机制

在Linux服务器运维或网络调试场景中,我们经常会遇到需要手动终止某个TCP连接的情况——比如异常的TIME_WAIT连接堆积占用端口、有问题的ESTABLISHED连接导致资源泄漏,或是调试时需要快速断开特定客户端的连接。常规的用户态工具(如iptables、sskill)往往有局限性,而直接通过内核模块实现TCP连接的精准销毁,能更高效、底层地解决这类问题。本文就围绕“在运行中的Linux系统里精准丢弃指定TCP套接字”这一需求,拆解其实现思路、核心技术要点和代码逻辑。

2025-12-10 23:30:13 638

原创 用 C++ 玩转字符级 Transformer 语言模型:从原理到实现

日常刷到的 AI 续写故事、自动写文案,背后都是语言模型在发力。很多人觉得这类模型是 Python 的“专属领域”,但其实用 C++ 也能从零搭建一个基于 Transformer 的字符级语言模型——既能吃透底层原理,又能体验更贴近硬件的高效实现。今天就用大白话聊透:从核心原理到代码落地,怎么用 C++ + LibTorch 玩转这个模型。

2025-12-09 22:31:49 877 1

原创 恶意软件分析工具:ELF二进制文件的感染与分析原理(C/C++代码实现)

在网络安全领域,分析恶意软件的行为、理解其感染机制是防御工作的重要环节。针对Linux系统中常见的ELF(可执行与可链接格式)二进制文件,有一类工具专门用于静态分析、动态监控以及模拟感染过程,帮助安全人员摸清恶意软件的"套路"。这类工具的设计思路融合了文件格式解析、系统监控、二进制操作等多种技术,今天我们就来聊聊它的核心原理。

2025-12-04 22:55:08 682

原创 PRINCE算法的密码生成器:原理与设计思路(C/C++代码实现)

想象一下你有一堆密码碎片(比如单词表中的单词),PRINCE算法就像是一个智能的"密码拼图大师",它能用各种方式把这些碎片组合起来,生成大量可能的密码组合。今天咱们就扒开princeprocessor(简称 pp)的代码,看看这个 “拼词高手” 到底怎么干活,以及它背后的设计巧思。

2025-11-27 22:50:22 735

原创 吃透多线程协同:C++11暴力目录列表工具的入门指南

做网站安全测试时,经常会遇到一个问题:怎么找到那些藏在网站深处、没对外公开的目录?比如管理员后台 `/admin`、数据库备份 `/backup.sql` 这类关键路径。其实靠的就是“暴力目录列表工具”——说白了就是拿着一份“目录名字典”,挨个拼到目标网址上试,看哪个能打通。今天咱们就聊聊怎么用C++11做一款多线程版的这类工具,不纠结复杂代码,重点扒一扒“为什么这么设计”“背后的逻辑是什么”,用大白话把核心原理讲透,看完你也能get到多线程工具的设计精髓~

2025-11-25 22:16:49 951

原创 从零开始造轮子:用C++实现大语言模型推理的核心逻辑

在大语言模型(LLM)普及的当下,亲手搭建一个高效的推理框架,能让我们更透彻地理解AI生成内容的底层逻辑。C++凭借其贴近硬件、低开销的特性,成为实现轻量LLM推理的优选语言。这篇文章将整合框架的核心设计思路与代码落地细节,用大白话拆解从原理到实现的完整路径,让你既能懂“为什么这么设计”,也能明白“代码里怎么实现”。

2025-11-16 21:14:37 1197

原创 用C++从零开始实现的小型深度学习训练框架

是一个基于 C++ 从零实现的轻量级深度学习训练框架,具有 PyTorch 风格的 API,支持 CPU 和 CUDA 运行,可用于神经网络训练与推理,还支持 LLM(如 llama/qwen/mistral 模型)的推理。抓本质:聚焦深度学习的核心流程——数据输入→模型计算→梯度更新→参数迭代,所有模块都围绕这个流程展开,不做无关功能。做减法:去掉冗余依赖和复杂封装,用最简洁的结构实现核心功能,让底层逻辑一目了然。

2025-11-05 22:29:27 879

原创 Linux 文件变动监控工具:原理、设计与实用指南(C/C++代码实现)

日常工作里,我们经常需要盯着某些文件或文件夹——比如看日志有没有新内容、配置文件有没有被改动。手动刷新查看既麻烦又容易错过关键变动,这时候一个自动监控工具就很实用了。今天要聊的,就是一款基于 Linux 系统特性开发的文件监控工具,它能实时捕捉文件的创建、删除、读写等操作,还能触发自定义命令,帮我们省不少事。

2025-10-29 21:37:51 1096

原创 揭秘随机数生成器:从原理到随机性检测(C/C++代码实现)

在现代科技的各个角落,随机数生成器都扮演着不可或缺的角色。从保障信息安全的密码学,到模拟复杂系统行为的仿真技术,再到为玩家带来惊喜与挑战的游戏开发,随机数生成器的身影无处不在。在密码学领域,随机数用于生成加密密钥、初始化向量等关键元素。以常见的 AES 加密算法为例,密钥的随机性直接决定了加密的强度。如果密钥可预测,攻击者就有可能通过分析密钥规律来破解加密信息,导致数据泄露。而一个高质量的随机数生成器能够生成不可预测的密钥,大大增加了破解的难度,为信息安全保驾护航。模拟仿真也是随机数生成器的重要应用

2025-10-28 23:56:15 1103

原创 轻量级却实用:sigtrace 如何靠 ptrace 实现 Linux 信号的捕获与阻断(C/C++代码实现)

在 Linux 系统中,信号是进程间通信和系统通知的重要机制。理解进程间的信号交互对于调试程序、分析系统行为至关重要。sigtrace 是一款基于 ptrace 机制的信号跟踪工具,能够捕获目标进程接收的信号并分析信号发送方的信息,为开发者提供了深入了解进程间信号交互的能力。

2025-10-22 21:58:46 461

原创 基于SSH的网络性能测试工具深度解析(C/C++代码实现)

在网络性能测试领域,`ping`(基于ICMP协议)是最常用的工具之一,但它仅能衡量数据包往返时间(RTT),无法反映应用层(尤其是SSH协议)的实际性能。而`sshping`作为一款基于SSH协议的性能测试工具,填补了这一空白——它不仅能测量SSH会话的连接与登录延迟,还能精准评估交互式字符回显 latency(延迟)和文件传输吞吐量,为运维人员、开发者优化SSH服务性能提供关键数据支撑。

2025-10-19 21:55:17 1141

原创 SSH 流量深度学习细分类系统设计与实现(C/C++代码实现)

在网络通信中,SSH(Secure Shell)协议是保障远程操作与数据传输安全的 “基石”,广泛用于服务器运维、文件传输等场景。但传统技术仅能识别 “这是 SSH 流量”,却无法区分其具体承载的业务 —— 实际上,SSH 流量下隐藏着三类核心应用:用于文件传输的 SFTP、高效复制文件的 SCP,以及实现远程命令交互的 SHELL。这三类应用的安全风险与资源需求差异显著:SHELL 涉及命令执行,风险最高;SFTP/SCP 侧重文件传输,需合理分配带宽。

2025-10-12 19:56:12 1153

原创 搞懂 TUN 虚拟接口:这款工具如何做到 IPv4/IPv6 双栈响应(C/C++代码实现)

在网络测试、虚拟网关构建或协议验证场景中,常需要一种能灵活处理IP数据包的工具——它无需依赖真实硬件设备,就能模拟网络节点生成响应。本文解析的这款工具,正是通过Linux TUN虚拟接口实现IP数据包的接收、规则化处理与响应回写,同时支持IPv4/IPv6双栈与多线程并发,其设计思路与实现原理对理解网络工具开发具有典型参考价值。

2025-09-22 22:59:22 743

原创 QUIC 协议域名封堵:核心原理、关键技术与实现路径(C/C++代码实现)

随着 QUIC 协议在互联网领域的广泛应用,其基于 UDP 的传输特性与加密设计,打破了传统 TCP 协议下的域名封堵逻辑,给网络合规管理与安全防护带来新的技术难题。本文将脱离具体代码实现,聚焦 QUIC 协议域名封堵的核心原理、关键技术环节与实际落地路径,从协议特性本质出发,解析如何在遵循 RFC 9000、RFC 9001 等规范的前提下,实现对 QUIC 流量的精准域名封堵。

2025-09-16 21:33:50 1198 1

原创 基于 Linux 内核模块的字符设备 FIFO 驱动设计与实现解析(C/C++代码实现)

在Linux操作系统中,FIFO(命名管道)是一种经典的进程间通信(IPC)机制,它通过文件系统接口提供了可靠的字节流传输能力。本文将深入解析一个基于Linux内核模块实现的字符设备FIFO驱动,探讨其设计思路、核心原理、涉及的内核知识点,以及如何通过内核级编程模拟FIFO的核心功能。

2025-09-14 22:00:01 1082 1

原创 Linux 应用崩溃捕获工具:设计原理与实现思路解析(C/C++代码实现)

在 Linux 环境中,应用程序崩溃往往是开发者与用户都不愿面对的场景。传统崩溃机制仅能在终端输出简短提示(如“Segmentation fault”),对于图形化桌面环境(KDE、GNOME 等)中的应用,甚至会直接“无征兆退出”,既无法让用户理解原因,也给开发者排查问题带来极大障碍。**Crash Catcher** 作为一套面向 Linux 的崩溃处理解决方案,通过“共享库+辅助程序”的设计,为这一问题提供了轻量、通用的解决思路,本文将从设计背景、核心原理、实现思路及相关技术知识点展开解析。

2025-09-07 20:01:38 1003

原创 内存隐身的Linux ELF注入技术解析(C/C++代码实现)

在Linux系统安全领域,进程注入技术是渗透测试、恶意代码分析与系统防护的核心研究方向之一。**ELF-Injector** 作为一款针对x86_64架构的ELF共享对象注入工具,通过精巧的设计实现了“隐蔽注入+独立线程运行”的核心目标,既能在目标进程中加载恶意共享库,又能通过伪装名称规避常规检测。本文将从技术原理、设计思路、核心知识点等维度,全面解析ELF-Injector的工作机制。

2025-08-31 21:28:20 933

原创 Linux内核ELF文件签名验证机制的设计与实现(C/C++代码实现)

在Linux系统中,ELF(Executable and Linkable Format)是最核心的可执行文件与共享库格式。默认情况下,内核仅校验ELF文件的格式合法性(如魔数、架构匹配),**不验证文件的完整性与来源合法性**——这意味着攻击者可通过篡改ELF文件(如修改代码段)、植入恶意代码,或运行未授权的ELF程序,突破系统安全防线。为解决这一问题,本文解析的**ELF签名验证内核模块**(`binfmt_elf_signature_verification`),通过内核层的“前置拦截+签名校验”

2025-08-24 22:21:14 1037

原创 Linux ELF二进制文件数字签名工具:原理与设计思路(C/C++代码实现)

在软件安全领域,确保二进制文件的完整性与真实性是防御恶意篡改的关键环节。本文将介绍一款名为`elf-sign`的工具,它通过给Linux ELF(Executable and Linkable Format)二进制文件添加数字签名,实现对文件完整性的保护。我们将从工具的核心功能、实现原理、设计思路及相关领域知识展开分析,揭示其在软件安全体系中的作用。

2025-08-21 21:44:56 1206

原创 嵌入式系统中的签名验证:设计与原理解析(C/C++代码实现)

在嵌入式系统中,固件的完整性和合法性至关重要。例如,智能设备的 bootloader 若加载了被篡改的固件,可能导致系统崩溃甚至被植入恶意代码。Chrome OS 的 "vboot" 系统提供了一套轻量高效的签名验证方案,其核心逻辑可被抽离并应用于各类嵌入式场景。本文将从设计思路、实现原理和相关技术知识点展开,解析这套基于 RSA 和 SHA256 的签名验证机制。

2025-08-17 22:25:47 883

原创 基于LLVM的memcpy静态分析工具:设计思路与原理解析(C/C++代码实现)

在程序开发中,内存复制操作(如`memcpy`)往往是性能瓶颈的关键来源——尤其是大型内存块的复制,可能导致缓存失效、带宽占用过高等问题。为了精准定位这些潜在的性能热点,开发者需要一种能自动识别程序中`memcpy`调用,并提取其关键信息(如复制大小、所在位置)的工具。本文将解析一款基于LLVM的`memcpy`静态分析工具,探讨其设计思路、实现原理及相关技术背景。

2025-08-12 22:15:05 1377

原创 二进制签名查找器(Aho-Corasick 自动机):设计思路与实现原理(C/C++代码实现)

在逆向工程、恶意软件分析和二进制文件解析领域,快速准确地识别特定字节模式(即“签名”)是一项核心任务。本文将围绕一款基于PE-bear工具的二进制签名查找器,深入解析其设计思路、实现原理及相关技术背景,揭示其如何高效解决带通配符的多模式匹配问题。

2025-08-06 20:04:48 2382

原创 “影子插桩”:利用 LLVM 在二进制层面对 dlsym 调用做无痕监控(C/C++实现)

在软件安全分析、逆向工程和漏洞研究中,监控程序对关键函数的调用(如 dlsym)是获取程序行为信息的重要手段。然而,目标程序可能部署了反调试技术来阻止这类监控。本文介绍一种基于 LLVM 中间表示(IR)进行静态插桩的技术,其核心思路是在程序编译的中间环节注入监控代码,实现对 dlsym 函数获取的地址进行记录,并最终生成一个能绕过部分反调试检查的可执行文件。

2025-07-29 19:22:53 1690

原创 基于 Linux inotify 机制的事件驱动型文件监控工具(C/C++代码实现)

my_adhocify 是一个基于 Linux inotify 机制的事件驱动型文件监控工具,其核心功能是监控文件系统事件并自动触发指定命令。简单来说,它能 “盯着” 你指定的文件或目录,当发生特定操作(如文件修改、创建、删除、打开等)时,自动执行你设定的脚本或程序。例如,你可以用它监控/tmp目录,当有新文件写入并关闭时,自动运行日志分析脚本;也可以监控代码目录,当文件被修改时,自动触发编译命令。这种 “事件 - 响应” 模式让文件系统操作与自动化任务无缝衔接,极大简化了重复手动操作的场景。

2025-07-27 08:48:17 1963

原创 SSL 中间人攻击:原理、实现与防御(C/C++代码实现)

SSL中间人攻击(SSL Man-in-the-Middle Attack,简称SSL MITM)是一种针对加密通信(尤其是SSL/TLS协议)的网络攻击手段。攻击者通过在客户端与服务器之间插入“中间人”角色,伪装成“合法”的中转节点,从而拦截、篡改或窃取原本加密的通信数据。与普通中间人攻击不同,SSL MITM的核心挑战在于突破SSL/TLS的加密保护——正常情况下,SSL/TLS通过证书验证和密钥协商确保通信双方身份可信,且数据传输加密。而攻击者的目标就是绕过这一机制,让客户端误认为中间人是“真实服

2025-07-23 22:16:05 2249

原创 802.11无线网络密码嗅探技术:从原理到设计与实现(C/C++代码实现)

随着Wi-Fi技术的普及,802.11协议构建的无线网络已成为现代通信的核心载体。但无线信号的广播特性,也使得其数据传输过程可能被第三方捕获——这既是网络安全审计的重要手段,也潜藏着隐私泄露风险。在众多无线嗅探工具中,80211_sniff以其针对无线环境的优化设计,成为分析无线网络密码与流量的实用工具。它基于dsniff的解码框架,专门解决了无线场景中数据包丢失导致的解析失效问题,为理解无线网络通信安全提供了独特视角。

2025-07-20 19:34:13 2035

原创 写个 Mini Shell 当毕业设计,面试官直接聊了 1 小时

Minishell 把 Bash 的核心工作流(readline → parse → fork/exec or builtin → wait → 历史)压缩到最小可用集,省略了脚本语言、作业控制、复杂扩展,但保留了进程、文件描述符、环境变量、信号等“操作系统接口”的本质。读懂这些原理后,再看 Bash 的几十万行源码,会发现它不过是把同一条主线无限扩展、加功能和兼容层而已。

2025-07-15 20:18:37 861

原创 深入理解WiFi链路层的探测利器(C/C++代码实现)

在网络诊断和设备探测领域,“ping”是一个广为人知的工具——它通过发送ICMP回声请求,检测目标设备是否在线。但在WiFi网络中,传统ping往往受限于IP地址、防火墙、网络关联状态等因素,难以满足复杂场景的需求。而80211ping作为一款工作在链路层的工具,为WiFi设备探测提供了全新的思路。本文将深入解析其原理、应用与技术细节,带你理解这款工具如何突破传统网络层的限制。

2025-07-13 20:25:34 1381

原创 全能进程注入器技术解析与应用防范(C/C++代码实现)

在Windows系统中,不同架构进程(x86、x64、Wow64)的内存空间与API调用机制存在天然壁垒,而全能进程注入器正是为解决这一问题而生的融合工具。其核心目标是通过统一的接口抽象,消除x64、Wow64和x86进程间的操作差异,实现跨架构的进程注入与函数调用。

2025-07-06 21:33:29 1080

原创 为进程创建独立的 syslog 日志环境(C/C++代码实现)

`logcatch` 是一款用于 Linux 系统的工具,能够为指定进程创建独立的 `/dev/log` 设备,从而将进程的 syslog 消息隔离于全局 syslog 实例之外。它支持将 syslog 消息输出到指定的文件描述符,或者通过 Unix 域套接字连接到外部日志系统。本文将详细介绍 `logcatch` 的代码实现、相关原理以及其在开发中的用途。

2025-06-22 20:17:23 1819

原创 从标准输入直接执行 ELF 二进制文件的实用程序解析(C/C++实现)

本文将深入解析一个用C语言编写的实用程序,该程序能够直接从标准输入(stdin)读取ELF二进制文件,并在内存中执行它,无需将文件写入磁盘。我们将从实现原理、核心机制、用途场景和注意事项四个维度展开分析。

2025-06-07 17:57:58 1617

原创 C++11 Token Bucket (令牌桶)算法的锁无实现及应用

Token Bucket(令牌桶)算法是一种在流量控制和资源分配领域被广泛应用的技术。它通过约束数据传输速率或任务执行频率,确保系统在资源有限的情况下,能够稳定、高效地运行,避免因突发流量或任务积压而导致的性能下降甚至系统崩溃。

2025-06-07 15:11:54 1564

原创 高性能无堆分配函数包装器的设计与实现原理(C/C++代码实现)

本文探讨了C++中高性能无堆分配函数包装器的设计与实现。传统std::function使用堆分配存储闭包会带来性能开销,而本文提出的无堆分配方案通过内部缓冲区存储可调用对象,避免了动态内存分配。该实现使用类型擦除技术,通过Invoker和Manager函数指针统一操作不同类型的可调用对象,并利用placement new在内部缓冲区构造对象。性能测试显示,该方案在构造和调用开销上显著优于std::function,尤其适用于低延迟代理和线程池等对性能敏感的场景。这种设计在保持高级抽象的同时实现了接近原生代码

2025-05-25 10:41:17 1702

Sqlite.zip

本程序用sqlite3实现了增、删、改、查、还有对数据进行排序等功能。使用一个线程处理输入的字符,进行字符对比,做相应的功能处理。

2019-10-06

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除