- 博客(410)
- 资源 (19)
- 收藏
- 关注

原创 我的说明
1、一般有人看了我的文章,并且提问的话,不出意外我都会回答。但是您要给我提问题,请务必写清楚问题。有的问题,我真的是看不懂,虽然我不愿意说,但是大家真的去看看《提问的智慧》。其实很多时候,你连自己怎么犯错的不清楚,或者说你知道你的错误在哪,你就能解决。有的人问我,不好意思,我的电脑蓝屏了,请问我该怎么办。这个我怎么回答,因为电脑蓝屏有上千万种可能,你不说出前因后果,我怎么帮你解答。你应该说你...
2019-06-02 10:18:29
1311
29

原创 Ubuntu下常用但是我容易忘记的命令总结(未完待续)
写在前面的话这个主要是写给自己看的,还是用的少了,哎,弱啊。1.文件的归档处理1.1 zip命令和unzip命令zip 命令: $ zip test.zip test.txt 它会将 test.txt 文件压缩为 test.zip ,当然也可以指定压缩包的目录,例如 /root/test.zip # unzip test.zip 它会默认将文件解压到当前目录,如果要解压到指定目录,可以加上 -d 选
2016-10-10 17:49:47
1341
4

原创 Python中常用的一些操作总结(未完待续)update @ 2017-5-18
写在前面的话其实也没有什么可以写的,或者说完全没有价值。因为你只要动一动手指就可以在Google上找到我要写的这些东西。只是我还不习惯好久没有碰我的blog,但是我又不想写没有价值的东西。或许有价值,只是在我一年两不编程的情况下,我会忘记那些我以前很熟悉的操作是怎么完成的,或许混到那个地步我的人生就开始悲剧了吧。总之,成长成我想要的样子我还是需要很长的路要走。这一篇是会持续更新的,至少为了
2014-12-14 06:03:22
5281
9
原创 【论文阅读】MOVERY:一种针对修改后开源软件组件的漏洞代码克隆精确发现方法
第三方开源软件(OSS)组件继承的漏洞可能威胁整个软件系统的安全性。然而,由于开源软件在演化过程中会经历各类修改(具体表现为内部修改如OSS版本更新,以及外部修改如OSS复用过程中的代码变更),导致漏洞代码会以不同语法形式扩散传播,这使得追踪传播性漏洞代码极具挑战性。本文提出MOVERY方法,该技术能够从修改后的OSS组件中精确发现漏洞代码克隆(VCC)。通过定位最原始的漏洞函数,并从安全补丁中提取核心漏洞代码行和补丁代码行,MOVERY构建的漏洞特征和补丁特征能有效应对OSS的各类修改。
2025-04-27 11:08:15
562
1
原创 【论文阅读】Generalization-Enhanced Code Vulnerability Detection via Multi-Task Instruction Fine-Tuning
今天介绍的文章来自华科的团队: 基于多任务指令微调的泛化增强代码漏洞检测, 这个文章发表在ACL2024这篇文章可以和我上一篇介绍的CMU的漏洞检测()这个文件联合起来一起阅读,两个文件都是介绍利用LLM做漏洞检测,可以发现其实标题都很像,就是技术稍微有点不同,上面一篇是大模型加GNN结合起来做的,这个只用了LLM。基于代码预训练模型的漏洞检测方法近年来取得了显著进展。然而,现有模型通常仅学习从源代码到标签的浅层映射,而未能深入理解代码漏洞的根本成因,导致其难以泛化到训练集之外的现实场景。
2025-04-25 11:28:11
710
1
原创 【论文阅读】Security Vulnerability Detection with Multitask Self-Instructed Fine-Tuning of Large Language
事实上,基于LLM的漏洞检测工具[7,8]推动了LLM与静态分析技术的融合,这类方法在现有文献中报告了最高的漏洞检测率[3]。然而,仅基于代码标记(code tokens)训练的语言模型既无法捕捉漏洞类型的解释信息,也无法获取代码的数据流结构信息,而这两者对漏洞检测都至关重要。传统方法中,基于小规模标注数据对参数量超70亿的大型语言模型进行指令微调并不可行[16],更优策略是直接提取预训练LLM的注意力状态(即模型对输入元素的上下文编码信息),再通过非注意力机制训练实现漏洞检测[3,7,10]。
2025-04-25 10:48:30
891
1
原创 【论文阅读】CodeCMR: Cross-Modal Retrieval For Function-Level Binary Source Code Matching
二进制与源代码匹配(尤其是函数级匹配)在计算机安全领域至关重要。,定位其对应源代码可提升逆向工程的准确性与效率;,检索关联的二进制代码则有助于确认已知漏洞。然而,由于源代码与二进制代码之间存在显著差异,相关研究仍较为有限。已有方法通常提取代码字面量(如字符串、整数等),再结合匈牙利算法等传统匹配策略实现代码关联,但这些方法在函数级场景中存在明显局限:其忽视了代码潜在的语义特征,且多数代码缺乏充足的字面量。此外,这些方法依赖专家经验进行特征识别与特征工程,过程耗时且成本高昂。
2025-04-09 14:55:39
832
1
原创 代码字面量
代码字面量简化了代码编写,提升可读性,是编程中表示固定值的直接方式。其形式和类型因语言而异,但核心在于无需额外构造,直接在源码中明确指定值。
2025-04-09 10:20:26
248
原创 匈牙利算法
的经典组合优化算法,由美国数学家Harold Kuhn于1955年提出,后基于匈牙利数学家Dénes Kőnig的研究改进得名。匈牙利算法通过矩阵归约与增广路径搜索,将复杂的最优匹配问题转化为可计算的数学过程,是理论严谨性与实用性的完美结合。覆盖线数=2(列1+列3),小于n=3,需调整矩阵。从每行或每列的唯一0元素中选择不冲突的边。由于上面的例子在列规约之后已经满足了。重复步骤3-4,直到覆盖线数等于n。(或最大权重匹配)。
2025-04-08 10:36:27
889
原创 【论文阅读】BinaryAI: Binary Software Composition Analysis via Intelligent Binary Source Code Matching
Embedding是机器学习中将复杂、高维数据(如文本、代码、图像)映射到低维连续向量空间的技术。这些向量能捕捉数据间的语义关系,使得相似对象在向量空间中距离更近。简言之,它是数据的“数学指纹”,用于量化抽象关系。该算法通过地址连续性与函数调用图(FCG),从embedding检索的Top-k相似源函数中筛选出最可能正确匹配的二进制-源码函数对。误匹配消除:排除孤立函数对(如跨文件的偶然相似函数)。版本干扰抑制:通过连续区间覆盖区分同一源文件的不同版本(如旧版函数片段混入新版)。编译优化鲁棒性。
2025-04-07 21:43:03
1190
1
原创 Pythia 使用说明
Pythia 是一个由非营利研究组织开发的开源语言模型套件,专注于透明性和可复现性。它是为了推动自然语言处理(NLP)领域的开放研究而设计,尤其在模型训练过程和性能分析方面提供了详尽的文档和数据。
2025-04-07 21:22:44
950
原创 【论文阅读】Chain-of-Thought Prompting of Large Language Models for Discovering 基于思维链提示的大语言模型软件漏洞发现与修复方法研究
软件安全漏洞在现代系统中呈现泛在化趋势,其引发的社会影响日益显著。尽管已有多种防御技术被提出,基于深度学习(DL)的方法因能规避传统技术瓶颈而备受关注,但面临两大核心挑战:任务专用标注数据集的规模质量不足,以及面向未知现实场景的泛化能力欠缺。最新研究表明,大语言模型(LLMs)通过思维链(CoT)提示机制展现出突破性潜力。本文创新性地将LLMs与CoT技术融合,系统解决软件漏洞分析三大核心任务:特定类型漏洞识别、泛型漏洞发现及漏洞修复。
2025-03-26 17:06:39
1515
1
原创 macro-F1(宏平均F1)和micro-F1(微平均F1)
在机器学习中,macro-F1(宏平均F1)和micro-F1(微平均F1)是两种评估多分类任务性能的指标。它们的核心区别在于对各类别的权重分配方式不同,适用于不同的场景需求。用Macro-F1:当类别不平衡(如医疗诊断中的罕见病),且需要平等评估每个类别的表现时。用Micro-F1:当类别相对平衡(如新闻分类),且更关注整体的准确率(尤其是大类样本的预测效果)。
2025-03-26 16:37:04
798
原创 【博客阅读】使用GPT-3发现了单一代码仓里的213个安全漏洞
GPT-3在该Git代码库中共发现213个安全漏洞。作为对比,某头部网络安全公司的商用扫描工具(市场上表现较好的工具之一)仅发现99个问题,尽管该工具能以更结构化的格式提供漏洞上下文。我们随机抽查了GPT-3检测出的213个漏洞中的60个进行人工核验,发现仅有4个误报。两种工具都存在大量漏报情况。
2025-03-24 14:53:16
898
原创 【论文阅读】大型语言模型能否实现软件漏洞的检测与修复?
在本研究中,作者评估了大型语言模型(LLMs),特别是OpenAI的GPT-4在检测软件漏洞方面的能力,并将其性能与Snyk、Fortify等传统静态代码分析工具进行对比。我们的分析覆盖了包括美国国家航空航天局(NASA)和国防部在内的多个代码仓库。结果显示,GPT-4发现的漏洞数量约为传统工具的4倍,且对每个漏洞均能提供可行的修复方案,同时展现出较低的误报率。实验测试了涵盖8种编程语言的129个代码样本,其中PHP和JavaScript代码的漏洞率最高。
2025-03-21 17:23:12
1346
1
原创 【论文阅读】APPATCH: Automated Adaptive Prompting LLMs for Real-World Software Vulnerability Patch
APPATCH —— 一种基于语义推理引导的自适应提示框架,用于自动化LLM漏洞修补。该框架包含以下四个核心设计要素
2025-03-19 16:55:41
992
1
原创 Plume 调用指南:Java字节码分析实战
Plume 通过 标准化JVM字节码到CPG的转换,成为Joern生态中Java安全分析的核心引擎。其 工业级扩展性 与 多数据库支持 使其既能处理小型库文件,也能应对企业级代码仓库。对于安全研究人员,Plume+Joern的组合提供了从 闭源审计 到 自动化漏洞修复 的完整技术栈,是Java生态安全分析不可或缺的利器。
2025-03-19 15:21:09
689
原创 Plume 工具深度解析——Java字节码到代码属性图(CPG)的桥梁
使其既能处理小型库文件,也能应对企业级代码仓库。建议结合动态分析工具(如Fuzzing)验证静态分析结果,构建多层次的安全防护体系。,成为Joern生态中Java安全分析的核心引擎。的完整技术栈,是Java生态安全分析不可或缺的利器。:与Joern共享CPG架构,支持多语言混合分析。:Java JNI调用本地代码(C/C++)。:直接分析字节码,无需源码或手动反编译。:支持分布式图数据库,处理TB级代码库。:每天扫描数万次提交,覆盖百万行代码。:分析未公开源码的第三方JAR文件。
2025-03-19 15:17:20
795
原创 Joern代码分析工具解析
Joern 是一款专注于代码安全分析的开源静态分析工具,旨在帮助开发者、安全研究人员自动化识别代码中的漏洞与潜在风险。其核心设计理念是通过构建代码属性图(Code Property Graph, CPG),将代码的语法、语义、数据流、控制流等多维度信息统一建模,从而支持复杂的代码逻辑推理。
2025-03-19 15:08:38
692
原创 【Excel操作】Python Pandas判断Excel单元格中数值是否为空
假设有这样一张Excel的表格。我们来识别出为空的单元格。怎么来判断这个Excel的单元格值为空,我们可以使用下面这些命令来处理。我们借助开源第三方库pandas,使用的时候需要安装一下这个库
2024-07-02 15:40:15
1641
2
原创 【实践总结】Python使用Pandas 读取Excel文件,将其中的值转换为字符串的方法
如果直接解析就会按照float字段处理,所以现在需要将他们按照字符串去读取出来。正确的做法如下说生意。简单但是为啥就是Google了很久,找了很久才解决,希望能够帮助到其他更多的人~以及astype都没有用。不知道为什么,赶进度没来得及仔细琢磨。在这里我们使用的方法就是dtype 就可以处理完。假设你的Excel的列有一行是这个样子的;
2024-07-02 11:38:34
1472
原创 HarmonyOS应用模型Stage基本介绍
HarmonyOS应用模型概况。一般来说现在的鸿蒙应用使用的模型都是stage模型,之前的FA模型,现在已经被弃用了。就在本博客中,我们将会介绍一些这个模型下的一些基本重要的概念
2024-05-13 10:23:08
1016
1
原创 鸿蒙应用开发DevEco Studio工程目录模块介绍
HarmonyOS API Version 8 ~ 9 采用 Hvigor构建工具和构建插件(hvigor-ohos-plugin)组成,该插件利用Hvigor的任务编排机制实现应用/服务构建任务流的执行,完成HAP/APP的构建打包,应用于应用/服务的构建。**build-profile.json5:**是应用的构建配置脚本,其中配置了应用签名信息、编译和适配 SDK 版本,构建产物以及多个 module 信息,在这里还可以配置不同 module 的多 target 构建信息。点这里可以跳转到教程。
2024-05-10 18:03:45
4352
原创 【学习笔记】HarmonyOS 4.0 鸿蒙Next 应用开发--安装开发环境
选择一样APP的样式,之后设置项目的名字,注意,bundle name就是发布到市场上的应用的名字,这个时候,我们取得名字不能与应用市场上的软件同名。在这里可以看到整个应用的入口是entry, 这是整个应用的主模块,整个项目中这个模块是最先被执行的。这个时候我们可以使用预览功能,或者是在我们的开发工具上安装我们的模拟器进行运行我们的应用APP。点击不同的API版本可以看到它支持的不同的语言的类型,最早的版本是支持JS 和Java的开发。这个时候会先下载需要的模拟器的SDK,完成之后就会出现下面这个画面。
2024-05-07 09:22:02
4376
原创 【错误收录】ohpm ERROR: Install failed FetchPackageInfo: @ohos/hypium failed
创建APP的时候出现这样一个错误,是的原因如果你在安装这个的过程中出现了这样的一个界面,说明一定是要配置代理的。
2024-02-08 17:06:02
4390
原创 【学习笔记】TypeScript编译选项
编译文件时,使用 -W 指令后,TS编译器会自动监视文件的变化,并在文件发生变化时对文件进行重新编译。在我们的终端输入下面的tsc命令的话,就能自动监控我们程序里面的TS文件,生成JS文件。我们写了一个TS的文件,我们需要使用如下的命令将我们的TS文件转换为JS文件。W 表示的watch,当我们TS文件发生变化时,我们的JS也会发生对应的变化。表示我们只去编译在./src/**/* 这个目录下面的所有TS文件。** 表示的是任意的目录,* 表示的是任意的文件。在这里,我们可以看到默认值是[**/*]
2024-02-06 17:31:27
692
原创 Python中的包和模块
Python中的包和模块概念解释包和模块的分类1. 标准的包和模块2. 三方包和模块3. 自定义的包和模块包和模块的位置包和模块的导入发布一个软件包README.rst文件License.txt文件MANIFEST.in 文件包的发布安装方式发布指定的目标文件参考文献Python中的包和模块概念解释模块: 为了使代码更加容易维护,提高代码重用价值,可以将一组相关功能的代码写入一个单独的py文件中供别人使用,这个.py文件就叫做做一个模块包。
2024-02-04 14:35:22
1217
原创 【问题收纳】! [remote rejected] master -> master (pre-receive hook declined)
首先我们运用 git branch 后面紧接着我们想要的分支名字, 这个命令创建我们的branch 分支。这里的 you-create-branchname代表的就是我们刚刚创建的那个分支的名字。创建之后我们需要切换到这个分支,这个时候我们需要checkout 这个命令。这个是说明我们队Master分支没有权限,需要我们自己创建一个单个分支。这个时候我们就可以在这个分支上进行一些我们想要的操作,e.g.,
2023-01-16 15:13:01
24151
原创 【错误归纳】Command `\Bbbk‘ already defined. ...ol{\Bbbk}
Latex中出现了Command `\Bbbk' already defined. ...ol{\Bbbk} {\mathord}{AMSb}{"7C} 错误的解决办法
2022-09-26 16:30:02
2105
1
原创 在markdown里面插入特殊的符号
文章目录 前言Font Awesome使用步骤 前言这篇主要写给自己便于查阅信息看的。感觉别人已经写了很多比我质量更高的,就怕之后我自己找不到,把我自己学到的一些信息总结一下放在这里。我觉得这篇就写的不错,大家可以参考一下:巧用 Font Awesome 装点 Markdown 文档Font AwesomeFont Awesome 是一个字体和图标工具包,包含人物、动物、建筑、商业、品牌等等各种主题丰富的图标符号,可以通过相应的语法添加在 Markdown 文档中,像 Emoji 一样配合
2021-10-21 10:41:05
2659
翻译 Variant Analysis(变种分析)——使用已知漏洞发掘未知漏洞
文章目录 前言 1.variant Analysis (变种分析)是什么? 从哪里开始 2.常用技术 2.1 控制流分析(Control flow analysis (CFA)) 2.2 数据流分析 (Data flow analysis) 2.3 污点跟踪 (Taint tracking )总结 前言变种分析这个概念是来自于semmle这个产品对自己技术的推广。原文的链接来自这里 https://semmle.com/variant-analysis 1.variant Analysis (
2021-10-15 21:56:33
1414
原创 python使用matplotlib, seaborn画图时候的数据加载
写在前面的话当我们使用python来画图的时候,我觉得最难的部分应该是数据加载。因为尽管官网的教程给出了怎么画出某个图片的示例,但是数据往往是随机产生的,这些数据和我们需要的数据往往是不符的。这个时候可能就需要加载我们自己的数据。但是怎么加载,其实很多网站和教材都没有说,直接搜索出来的画图教程大多都是直接搬运了官网的教程,数据都是随机产生的。而且我们很多时候都是碎片化的学习,因此我自己的感觉每次都是怎么加载这个数据,因此,针对这个问题,我们就在这里拿出一章来专门说明我们怎么处理这个问题。 数据的存.
2021-04-13 11:10:31
747
原创 使用Github进行多人协作,项目管理
文章目录写在前面的话 1. 前言 1. 将本地项目上传到Github 上 1.1 远程端的操作 1.2. 本地端的操作 2. 分支 2.1. 运用场景 2.2. 使用方法写在前面的话你想知道的有关github的内容,以及网上讲不清的东西,在这里你都可以找到。深入浅出带你玩转github 项目管理。 1. 前言个人认为,每一个程序猿都应该学会使用版本控制器来管理我们的代码,不管是个人还是团队。学会使用git, svn等工具来进行版本控制是十分必要的。就我个人而言,看着github 上的活动面板被不
2020-11-03 22:36:07
1969
原创 Ubuntu环境下docker的安装
安装docker 的具体方法,我们可以从docker 的官网得到具体的方法。链接如下:https://docs.docker.com/engine/install/ubuntu/安装的过程其实并不是很难,就是一些小的点需要我们注意一下:我选择的方式是从包安装 (install from a package)首先我们需要下载相关的文件,下载的链接如下所示https://download.docker.com/linux/ubuntu/dists/然后你会看到这个样子的文件列表,这个时候要根
2020-10-13 11:22:55
1585
原创 Latex中的表格的高级用法,设置表格的线宽,颜色
文章目录 写在前面的话正文部分Reference 写在前面的话在之前的博客中,我们写过很多关于Latex的表格的用法,今天,我们继续来分享一些表格的高级用法,就是设置表格的线宽,颜色等等,让我们的文章看起来更好看,更加的舒服。我们之前的文章可以参考一下下面的这些链接:LaTeX 表格旋转的设置Latex中的插入表格Latex中的一些表格用法总结(二)——行列式的表格,表格的切分和合并Latex中的表格用法总结(三)——表格的合并分割,字体旋转,表头语句切割正文部分如果我们想要得到下面的一
2020-09-30 00:48:53
36890
6
原创 使用python画CDF
写在前面的话看了一圈google 搜索画 CDF 的前10的中文输入,发现又到我出马的时候了。这种图片应该是不能要的吧。用很多奇奇怪怪的方法画出来的可能不太OK , 所以打算写一个个人认为画出来很美观的并且还不错的方法。个人参考的是这个链接https://stackoverflow.com/questions/39297523/plot-cdf-cumulative-histogram-using-seaborn-python 累计分布函数(CDF)累积分布函数(Cumulative Dist
2020-09-23 21:43:42
8847
6
局部敏感哈希,standford 课件
2018-05-28
目前Android恶意软件分类
2014-02-19
WOJ1313-K尾数相等
2014-02-08
effective taint analysis of web applications
2014-01-12
retrofitting android to protect data from imperious application
2014-01-12
Vision: automated security validation of mobile apps at app markets
2014-01-12
Detecting Privacy Leaks in iOS Applications
2014-01-12
A study ofAndroid security
2014-01-12
dexpler:converting android dalvik bytecode
2014-01-12
WOJ1204代码解题思路2
2014-01-12
Detecting Passive Content Leaks and Pollution in Android Applications
2014-01-06
Dissecting Android Malware: Characterization and Evolution
2014-01-06
Mobile-Sandbox: Having a Deeper Look into Android Applications
2014-01-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人