自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 资源 (3)
  • 收藏
  • 关注

原创 Syzkaller实战教程11: strace捕获种子及syzkaller适配演示

Strace是Linux系统中强大的诊断调试工具,可追踪程序系统调用。它能在无源码情况下定位问题,适用于程序运行失败、系统调用过程查看等场景。常用参数包括:-c统计调用信息、-f跟踪子进程、-e指定跟踪类型(如文件、网络等)。实践案例展示了如何通过"strace -e trace=open"命令发现域名解析失败是因libnss_dns.so.2文件缺失所致,通过重装glibc-devel包解决问题。该工具为系统运维提供了有效的故障排查手段。

2025-08-11 10:25:02 349

原创 大模型Agent小白入门:一文带你看懂Agent开发的核心—— MCP 协议​

MCP协议:智能时代的"万能翻译官"MCP协议(ModelContextProtocol)是Anthropic公司推出的智能体通信标准,旨在解决不同智能设备间的"语言不通"问题。该协议采用客户端-服务器架构,通过动态灵活的交互方式,让智能家居、自动驾驶等设备能像联合国代表一样顺畅交流。

2025-08-11 10:18:17 301

原创 Syzkaller实战教程10: MoonShine复现&Trace2syz功能演示

Moonshine是哥伦比亚大学团队开发的Syzkaller改进项目,通过静态分析系统调用依赖关系,提炼出高效测试种子以提升内核模糊测试效率。核心功能包括:1)从280万系统调用中精炼出1.4万个关键调用,保留86%覆盖率;2)使Linux内核覆盖率平均提升13%,发现17个新漏洞;3)采用Go语言开发,依赖Ragel和Goyacc进行数据解析。复现环境需配置Ubuntu 20.04、Go 1.11.13及特定版本Syzkaller,通过strace采集系统调用跟踪后,使用moonshine工具链进行种子蒸

2025-08-07 16:20:48 723

原创 Syzkaller实战教程9: 获取种子的AST-Like格式

本文详细解析了Syzkaller模糊测试工具的核心数据结构AST-Like格式及其转换流程。首先介绍了Syzkaller定义的Prog、Call和Arg三种结构体,它们分别表示程序整体、系统调用和参数。然后阐述了Trace2syz工具将strace日志转换为Syzkaller程序的步骤,包括系统调用转换、参数处理和内存分配等关键环节。重点分析了syz-db工具对corpus.db的解包过程及其输出的五种格式:人类可读的文本格式(txt)、结构化JSON格式、内部表示格式(TXT)、统计信息(target)

2025-08-07 16:06:23 829

原创 Syzkaller实战教程8:25年最新版本Syzkaller核心代码解读

本文分模块解读了syzkaller-25年最新版本代码的功能,对于初学者了解syzkaller的底层实现原理具有重要作用。以下是其核心功能的摘要: 程序表示与执行使用AST-LIKE结构描述系统调用序列(prog.go) 序列化为不可逆二进制格式(encodingexec.go)供executor执行 executor.cc负责实际执行并捕获崩溃和覆盖率 测试程序管理 corpus.go存储程序集合,包含信号和覆盖率信息种子程序管理(seed.go)和数据库操作(corpus.go)等。

2025-08-06 10:20:03 997

原创 Syzkaller实战教程7:手动采集代码覆盖率并使用

本文详细解析了syzkaller代码覆盖率收集的完整流程,介绍了关键数据结构,并通过实例演示了如何手动收集和使用覆盖率数据。掌握这些知识,有助于开发者和安全研究人员更深入地理解syzkaller的工作原理,读者可以亲自上手依据自己的思路改造syzkaller达成默认框架无法实现的效果,以验证idea的可行性。

2025-08-06 09:18:24 713

原创 Syzkaller实战教程6:[重要]初始种子加载机制剖析第二集

摘要:本文深入分析了新版syzkaller模糊测试工具的多队列任务调度机制。其核心execQueues结构包含四个优先级队列:triageCandidateQueue(高优候选程序分析)、candidateQueue(普通候选程序)、triageQueue(信号分析)和smashQueue(暴力变异)。初始种子通过AddCandidates加载到candidateQueue,执行发现新信号后转入triageCandidateQueue分析确认。

2025-08-01 21:15:12 661

原创 Syzkaller实战教程5: 初始种子加载机制剖析第一集

本文分析了Syzkaller模糊测试工具在不同版本的初始种子加载机制。25年新版本通过corpus.db加载种子后,经过稳定的优先级排序,使短程序优先执行;而旧版本通过workQueue管理候选种子。文章详细解析了manager.go、corpus.go、prio.go和seed.go等核心模块的功能,包括语料库管理、优先级调度和种子加载流程。特别比较了内存工作集和持久化corpus的区别,指出运行时的模糊测试主要基于内存中的验证种子。

2025-08-01 10:30:51 1019

原创 Syzkaller实战教程4:用官方神器Syzbot收集高价值POC

本文介绍了syzbot自动化内核模糊测试系统及其POC生成机制。syzbot是基于Google开发的syzkaller工具,能持续测试Linux内核各分支,自动报告crash并跟踪修复状态。系统通过虚拟机实例运行测试,提供详细的错误报告,包括调用栈、寄存器状态等信息,并生成精简的POC(概念验证)代码。POC在漏洞验证、定位和修复中起关键作用,具有精简性、可复现性和针对性等特点。

2025-07-31 19:57:57 980

原创 Syzkaller实战教程3: [重要]挖掘你的第一个0day漏洞

本文介绍了Syzkaller内核模糊测试工具的使用流程,主要包括三部分内容:1. 测试内核的更新与配置方法,从内核下载、编译配置到常见错误处理;2. crash结果分类流程,指导如何收集和验证潜在0day漏洞;3. crash复现技术,详细说明如何使用syz-repro工具生成复现程序,并通过syz-execprog进行验证。文章提供了完整的配置参数、实用脚本和常见问题解决方案,涵盖了从环境搭建到漏洞验证的全过程,为内核模糊测试工作提供了系统的技术参考。

2025-07-31 19:33:17 719

原创 Syzkaller实战教程2:运行环境配置+实例运行

本文详细介绍了在linux系统上搭建Syzkaller内核模糊测试环境的完整流程。 1.环境配置:通过VMware创建Ubuntu20.04虚拟机A,配置QEMU/KVM虚拟化环境,安装Go语言工具链和Syzkaller;2.内核编译:下载Linux内核源码并配置KCOV等调试选项,编译生成带覆盖率支持的bzImage内核镜像;3.测试环境构建:使用debootstrap创建Debian虚拟机镜像,通过QEMU启动嵌套虚拟机B; 实例测试:4.演示两种测试场景 - 提供完整上手教程

2025-07-30 22:12:56 794

原创 Syzkaller实战教程1:核心概念及运行机制剖析

本专栏实战教程旨在帮助读者系统性地学习Syzkaller模糊测试框架,从基础概念到实际应用,逐步掌握漏洞挖掘的核心技能。通过本教程的学习,读者将能够深入理解Syzkaller的工作原理,并具备独立开展漏洞挖掘的能力。作为教程的第一篇博客,本文详细介绍了Syzkaller的基础概念及工作机制,并对主要功能源码和许多易混淆的概念进行了具体分析,对于读者理解Syzkaller具有重要意义。

2025-07-30 21:54:38 1081

原创 基于seq2seq的机器翻译系统

本文介绍了seq2seq模型的原理,并基于seq2seq构建了一个机器翻译系统,通过代码和注释对seq2seq的实际应用进行了较为详尽的分析,对于transformer和LSTM的学习皆有一定帮助,可供读者参考。

2022-10-02 16:15:13 2206 2

原创 PySimpleGUI库创建python代码的图形窗口

本文介绍了针对python代码创建图形交互窗口的一种常用库PySimpleGUI,通过代码和实例进行了讲解

2022-10-02 16:02:49 2293

原创 Transformer模型入门详解及代码实现

本文对Transformer模型的基本原理做了入门级的介绍,意在为读者描述整体思路,而并非拘泥于细微处的原理剖析,并附上了基于PYTORCH实现的Transformer模型代码及详细讲解。

2022-08-26 12:04:42 16364 2

原创 视频会议摘要提取系统

本文构建了用以提取视频内容生成文本摘要的系统,并采用了多种摘要提取方法,供读者参考。

2022-08-10 23:17:39 1015

原创 初始网络爬虫

本文将介绍利用Python实现网络爬虫的基本思想和实现步骤。

2022-08-10 22:23:44 311

原创 基于顺承关系的事理图谱的构建

事理图谱中一般认为主要包含四种逻辑,本文主要讨论了基于顺承关系的事理图谱的构建过程。

2022-08-10 21:40:10 1354 2

原创 事理图谱入门

本文对想要学习事理图谱的学者提供了该领域的入门认知

2022-08-10 21:04:20 2434

原创 电影知识图谱和基于模板的问答系统构建

参考目前网络上开源的医疗问答系统等项目,对基于neo4j的知识图谱构建及基于人为指定模板的问答系统构建进行了整理,笔者对代码进行了较为详尽的注释,供读者参考。

2022-07-16 09:50:57 2811 3

原创 基于neo4j的知识图谱构建及Py2neo的使用总结

基于neo4j的知识图谱构建及Py2neo的使用总结

2022-07-15 10:15:15 2770

原创 什么是知识图谱?

笔者总结网上关于知识图谱的相关资料并总结了一些基本概念,对于想了解这一概念的读者提供了一个新手入门的视角。

2022-07-06 18:12:59 67598 1

原创 线性代数知识点整理

线性代数基础知识点摘要整理

2022-07-06 15:15:46 32806 4

原创 cs224n课程及NLP相关知识记录

cs224n课程提及的知识以及NLP相关知识的总结

2022-07-06 15:06:40 752

原创 conda install 和 pip install的区别

conda和pip一般被认为是几乎相同的,但这两个工具虽然功能存在部分重叠,但其设计的目的是不同的。

2022-07-03 20:47:02 10488

原创 anaconda创建虚拟环境及jupyter使用者的注意事项

网上已经有了许多关于anaconda创建虚拟环境的教程,笔者在整理了相关内容后,增加了jupyter使用者在创建虚拟环境后,无法找到新创建虚拟环境的解决方案。

2022-07-03 20:42:51 1125

原创 针对戴尔G15部分问题的解决措施

戴尔G15问题,独显直连,风扇一直转,黑屏

2022-07-01 14:35:40 11684 1

原创 numpy,pandas,matplotlib三种常用库的知识点摘要以及程序练习

内容包含numpy,pandas,matplotlib三个包的知识点摘要和程序练习

2022-06-29 20:31:14 727 1

利用python实现的matplotlib的程序练习

利用python实现的matplotlib的程序练习

2022-06-29

利用python实现的numpy的程序练习

利用python实现的numpy的程序练习

2022-06-29

利用python实现的pandas的程序练习

利用python实现的pandas的程序练习

2022-06-29

空空如也

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

TA关注的人

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