【告别Bug】
文章平均质量分 52
本专栏主要包含了工程实践中修复漏洞bug的相关记录。当前本专栏中已经包含了一些高质量和深度的文章,后面会一直更新。
特别说明:
(1)订阅博主就能看博主全部的付费专栏和1000+篇文章。
(2)专栏总结文章全都来自博主多年工作经验总结和心血,绝对干货!
飞翔的鲲
一名音视频领域coder,喜欢深入钻研各种新技术(编解码、图像处理、算法优化等),擅长Matlab,Python,C编程。
CSDN明星博主,认证博客专家,视频、Matlab领域优质创作者。目前专注于音视频编解码和AI技术领域,开源分享,不忘初心,追求卓越!
欢迎订阅我的付费专栏,每篇都是博主的多年工作经验总结和呕心之作,任何问题都可以私信博主,必给您答疑解惑!希望我的博文可以帮助到你~
展开
-
【Debug系列】检测程序句柄泄露的方法(windbg !htrace)
DATE: 2020.2.91、参考2、何为句柄?3、句柄泄露是什么?4、Linux 检测句柄的方法5、windbg !htrace跟踪句柄用法原创 2020-02-09 14:00:10 · 715 阅读 · 0 评论 -
【Bugs系列】之error-subscripted-value-is-neither-array-nor-pointer-nor-vector
DATE: 2019-3-71、参考https://stackoverflow.com/questions/33059877/error-subscripted-value-is-neither-array-nor-pointer-nor-vectorhttps://blog.csdn.net/jjzhoujun2010/article/details/65345352、问题描述err...原创 2019-03-07 20:27:48 · 20944 阅读 · 0 评论 -
Windows平台下内存泄露分析:WinDbg
http://blog.csdn.net/chenyujing1234/article/details/11918987http://blog.csdn.net/listener51/article/details/78106185原创 2017-10-09 19:52:42 · 976 阅读 · 0 评论 -
【Bugs系列】利用反汇编帮助查找段错误
DATE: 2019-5-23【Bugs系列】利用反汇编帮助查找段错误原创 2019-05-23 19:47:08 · 992 阅读 · 0 评论 -
【告别bug】已解决:Python: name ‘reload’ is not defined
Python版本的更替,以上代码已经被删除或者替换了。原创 2024-03-30 22:32:59 · 99 阅读 · 0 评论 -
【linux系列】Ubuntu安装gcc提示错误
将更新一栏中的重要安全更新(bionic-security)和推荐更新(bionic-updates)两者勾选上。检查其他软件中更新源,我的更新源中包含了Ubuntu16.04LTS等官方支持的更新源,遂将其取消掉。关闭软件和更新窗口后,在终端中输入sudo apt-get update。最后即可安装成功gcc了。原创 2023-05-21 13:15:24 · 2367 阅读 · 0 评论 -
【Bugfix系列】Someone could be eavesdropping on you right now (man-in-the-middle attack)!
由于远程机器或者重组或者更新了ssh server导致本地记录的验证信息过时了。原创 2023-04-01 18:44:50 · 106 阅读 · 0 评论 -
【Bugfix系列】通过工具定位corrupted double-linked list: 0xxxxxxxx
在遇到内存问题的时候,gdb调试的报错位置可能并不是真正的内存泄漏点,需要借助内存检查工具比如valgrind进一步定位具体的泄漏点位置,进而分析出问题所在。原创 2023-01-31 17:35:11 · 1280 阅读 · 0 评论 -
【Bugfix系列】虚拟机中PXE-MOF:Exiting intel PXE ROM.Operating system not found解决方法
虚拟机常见问题-PXE-MOF:Exiting intel PXE ROM.Operating system not found解决方法。1.点击安装的系统,选择正在使用的CD/DVD。注意:原因是没有选择系统镜像导致。2.选择自己下载的镜像即可。转载 2022-12-21 09:54:01 · 7940 阅读 · 2 评论 -
【工程化系列】汇编代码中无法链接的外部符号的几个原因分析
在汇编编译和链接时,有时会遇到无法链接的外部符号这样的bug。这里给出几个可能的原因。一个最主要的原因是函数有声明但没有定义。原创 2022-11-16 11:26:28 · 489 阅读 · 0 评论 -
【Bugfix系列】error while loading shared libraries的解决方案
DATE: 2021.12.20文章目录1、问题描述2、问题分析3、解决方案3.1、LD_LIBRARY_PATH3.2、ld.so.conf1、问题描述在运行可执行文件时,报错如下:./test: error while loading shared libraries: xxx.so.0:cannot open shared object file: No such file or directory2、问题分析从问题描述来看,是找不到依赖的动态库。在编译可执行文件时,需要指定需要链接的原创 2021-12-20 18:09:26 · 408 阅读 · 0 评论 -
【Git/Bugfix系列】fatal: in unpopulated submodule的分析和解决方案
DATA: 2021.11.26文章目录1、参考1、参考git学习 - git add出现 "in unpopulated submodule ‘A’ " 问题fatal: in unpopulated submodulegit add出现 “fatal: in unpopulated submodule XXX” 错误原创 2021-11-28 16:42:50 · 1946 阅读 · 0 评论 -
【Debug系列】SIGILL(Illegal instruction)问题定位
DATE: 2021.10.25文章目录1、问题描述2、问题原因2.1、错误修改代码段2.2、指令集演进2.3 工具链Bug2.4、内存访问对齐或浮点格式问题3、错误排查指南4、示例分析1、问题描述进程在运行过程中会收到SIGILL信号,此类错误是由操作系统发送给进程的。SIGILL是某个进程中的某一句不能被CPU识别指令,这些指令可能是一些形式错误、未知或者特权指令。2、问题原因2.1、错误修改代码段进程代码段中数据是作为指令运行的,如果不小心代码段被错误覆盖,那么CPU可能无法识别对应的原创 2021-10-25 16:07:53 · 2142 阅读 · 0 评论 -
【Bugfix系列】/usr/bin/ld: cannot find -lxxx 的解决办法
DATE:2021.9.23文章目录1、前言2、参考3、解决方案3.1、安装此库文件和相关软件3.2、将库文件所在路径添加到gcc的搜索路径3.2.1、使用 /etc/ld.so.conf 配置文件3.2.2、修改环境变量1、前言在使用FFmpeg的过程中,遇到了找不到xxx库的问题,现将解决方案整理如下。2、参考makefile gcc优先链接静态库、指定链接静态库的几种方法/usr/bin/ld: cannot find -lxxx 的解决办法3、解决方案3.1、安装此库文件和相关软件原创 2021-09-28 09:58:41 · 247 阅读 · 0 评论 -
【Bugfix系列】库和头文件不对应引起的运行异常(典型)
DATE: 2021.8.20文章目录1、前言2、问题3、原因分析1、前言最近在调试一个编码问题时,发现一些奇怪的现象:比如动态码率更新不生效,但同步更新平均码率后就生效了;在测试过程中,也发现了一些奇怪的现象,感觉很不科学,后面才发现问题,排查的过程甚是困难。2、问题H.264编码动态码率更新不生效3、原因分析库编译使用的头文件与上层调用使用的头文件不一致,两个宏开关不同!====> 头文件和库不对应导致的问题!!!详细分析:库中结构体的内存是按照库中头文件中结构体的声明进行分配原创 2021-08-23 22:50:02 · 785 阅读 · 0 评论 -
【Debug系列】ImportError: No module named ‘_tkinter‘
DATE: 2021.7.30文章目录1、前言2、问题描述和分析3、解决方案1、前言在ubuntu系统上,使用Python 2.7导入matplotlib模块时,遇到了下面报错的问题:ImportError: No module named '_tkinter'2、问题描述和分析在一个Python脚本中需要使用pyplot模块绘图,如下代码:import matplotlib.pyplot as plt发现导入报错。通常原因是tkinter和tk-devel模块的缺失导致的。3、解决原创 2021-07-30 10:21:35 · 411 阅读 · 0 评论 -
【Debug系列】float point support not loaded
Date: 2017/05/05Author: Soaringlee 今天在写一个简单的程序时,printf输出浮点数,报错float point support not loaded,其实原因很简单:printf格式化输出中的格式虽然为%6.1f,但是输出的却是int类型的,不能匹配,导致runtime error。...原创 2017-05-05 19:50:12 · 1562 阅读 · 0 评论 -
【Debug系列】Debug运行正常但是Release出现错误的原因
目录一、Debug和Release编译方式的本质区别 二、哪些情况下Release版会出错三、怎样“调试”Release版的程序一、Debug和Release编译方式的本质区别 Debug通常称为调试版本,它包含调试信息,并且不作任何优化,便于程序员调试程序。Release称为发布版本,它往往是进行了各种优化,使得程序在代码大小和运行速度上都是最优的,以便用户很好地使用。...转载 2020-10-09 20:32:19 · 10947 阅读 · 1 评论 -
【Debug系列】aarch64下unrecognized command line option ‘-mfpu=neon‘
DATE:2020.9.16文章目录项目场景:问题描述:原因分析:解决方案:参考链接项目场景:在编译ARM64位NEON Intrinsic代码时遇到这个问题。问题描述:aarch64-linux-android-gcc -c ../../demo/os_time_sdk.c -Wall -std=c99 -O3 -I./../../demo -march=armv8-a -mfloat-abi=softfp -mfpu=neon -DARCH_AARCH64=1 -DHAVE_NEO原创 2020-09-16 14:00:58 · 1908 阅读 · 2 评论 -
【Debug系列】munmap_chunk(): invalid pointer
DATE: 2020.8.28文章目录1、项目场景2、问题描述3、原因分析4、解决方案1、项目场景在编写一个简单的内存开辟和释放程序时,遇到这个内存问题。2、问题描述munmap_chunk(): invalid pointer3、原因分析出现这个问题的主要原因在于内存读取或写入越界导致释放已经释放了的内存。4、解决方案参考: https://stackoverflow.com/questions/32118545/munmap-chunk-invalid-pointer------原创 2020-08-28 19:35:51 · 9041 阅读 · 0 评论 -
【Github系列】gitalk评论报错出现 Error: Validation Failed. #102
DATE: 2020.7.11文章目录1、参考2、问题原因3、解决方案1、参考gittalk报错Error如何通过Gitalk评论插件,5分钟为你的博客快速集成评论功能Hexo添加gitalk评论插件gitalk Error: Validation Failed2、问题原因报错出现 Error: Validation Failed. #102这是由于 Github 限制 labal 长度不能超过 50 引起的问题。3、解决方案网上出现了很多针对这个问题的解决方案,比如采用md5处理,原创 2020-07-11 16:11:30 · 704 阅读 · 0 评论 -
【Debug系列】error: only position independent executables (PIE) are supported.
DATE: 2020.6.20文章目录一、参考网址二、问题描述三、原因分析四、解决方案一、参考网址【错误笔记】error: only position independent executables (PIE) are supported.错误解决二、问题描述使用android NDK编译armeabi-v7a的程序,编译通过,在android设备上运行出现该错误。error: only position independent executables (PIE) are supported.原创 2020-06-19 15:46:29 · 809 阅读 · 0 评论 -
【Debug系列】一个int变量引起的随机数异常问题
DATE: 2020.3.14 圆周率日1、问题描述在调试一个程序时,在linux64位系统下出现返回较大负数返回值的现象。2、问题复现#include <stdio.h>#include <stdlib.h>typedef struct _handle_s{ unsigned char* srcbuf; unsigned char* dstbuf...原创 2020-03-14 20:05:58 · 378 阅读 · 0 评论 -
【Debug系列】Alignment trap
DATE: 2020.3.41、参考内存越界问题Alignment trap 解决方法ARMLinux下Alignment trap的一些测试2、问题描述Alignment trap: not handling instruction e1942f9f at [<2bbe7bdc>] Unhandled fault: alignment exception (0x001) at 0x4fe64c11ing… 3、问题分析这个问题的出现主要是由于内存对齐或者内存越界导致的,主要排查原创 2020-03-04 11:26:08 · 797 阅读 · 0 评论 -
【Debug系列】cpp文件调用c文件时报错
DATE: 2019-11-14 【Tags: Bugs,CPP, C,混合调用 】1、参考C 调用C++ 与C++调用C2、问题描述3、解决方案原创 2019-11-14 20:00:32 · 382 阅读 · 0 评论 -
【Debug系列】Core dumped “corrupted size vs. prev_size”
DATE: 2019-11-51、参考Understanding “corrupted size vs. prev_size” glibc error堆相关漏洞利用libc异常提示原因记录linux 堆溢出学习之malloc堆管理机制原理详解Linux堆溢出漏洞利用之unlink2、问题说明3、原因和解决方案4、linux 堆溢出之malloc堆管理机制原理原创 2019-11-06 13:42:42 · 19946 阅读 · 0 评论 -
【PE/Bugs系列】error LNK2038:检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项
Date: 2019-4-4【Tag: 项目经验】1、error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项;2、C与C++混合调用(C文件中调用C++文件的函数,或者C++中调用C文件中的函数)原创 2019-04-04 19:12:15 · 515 阅读 · 0 评论 -
【Bugs系列】Linking error: DSO missing from command line
Date: 2019-4-5 【Tag: Debug系列】Linking error: DSO missing from command line原创 2019-04-04 22:15:37 · 257 阅读 · 0 评论 -
【Bugs系列】gcc canaries : undefined reference to __stack_chk_guard
Date:2019-4-15 【Tag: 工程调试】Stack Guard 是第一个使用 Canaries 探测的堆栈保护实现,它于 1997 年作为 GCC 的一个扩展发布。最初版本的 Stack Guard 使用 0x00000000 作为 canary word。原创 2019-04-15 19:25:34 · 616 阅读 · 0 评论 -
【Bugs系列】SIGILL(Illegal instruction)剖析
Date: 2019-4-15【Tag:工程调试】前言 最近在ARM板子上运行一个demo可执行文件时,出现了Illegal instruction的错误。一脸懵逼,不知道什么原因造成的,分析如下。原创 2019-04-15 19:57:23 · 9087 阅读 · 2 评论 -
【Bugs系列】一个未知Bug引起的思考
Date: 2019-4-22【Tag:问题调试】Author: SoaringLee前言 今天在调试一个程序的时候,由于在封装过程中,有些细节没有注意到,突然遇到了如问题描述中的Bug,百思不得其解。因此只能通过删减代码逐一确定引起Bug的位置和原因。在排查过程中,发现是由于在出现问题的c文件中的头文件中一个函数声明漏掉了一个分号(;)。是的,这就是一个分号引起的Bug!!!所以,程序员必须要细心啦!原创 2019-04-22 20:27:08 · 398 阅读 · 0 评论 -
【Bugs系列】lvalue required as unary ‘&’ operand
Date: 2019-5-7【Tag:项目经验】【Bugs】lvalue required as unary ‘&’ operand 1、参考 2、问题描述 3、原因分析4、解决方案原创 2019-04-29 17:13:17 · 3854 阅读 · 0 评论 -
【Debug系列】static declaration of follows non-static declaration
DATE: 2019-9-5前言在代码移植过程中,遇到下面的问题,特记录在此,以备后面注意。1、参考https://blog.csdn.net/H_O_W_E/article/details/244589012、问题描述static declaration of follows non-static declaration3、解决方案造成这个问题的原因:调用的静态函数没有先声...原创 2019-09-05 21:58:32 · 7067 阅读 · 0 评论 -
【Complier】error C2371: 重定义;不同的基类型
http://muchong.com/html/201404/7248529.htmlhttps://www.cnblogs.com/argenbarbie/p/6297426.html原创 2017-12-19 14:11:49 · 11234 阅读 · 0 评论 -
【complier】fatal error: too many errors emitted, stopping now [-ferror-limit=]
DATE: 2018.12.12背景:在利用c99toc89转换工具编译c99源代码的库时,遇到该问题。问题:fatal error: too many errors emitted, stopping now [-ferror-limit=]解决方案:尚未解决!...原创 2018-12-12 11:50:11 · 1532 阅读 · 2 评论 -
【Bugs】 error LNK2026: 模块对于 SAFESEH 映像是不安全的
DATE: 2018.12.211、参考http://www.cnblogs.com/hanxi/archive/2012/06/10/2544230.html2、问题描述在使用VS2013编译一个工厂时,遇到如下问题:error LNK2026: 模块对于 SAFESEH 映像是不安全的fatal error LNK1281: 无法生成SAFESEH映像。3、解决方案这种方案...原创 2018-12-21 15:20:25 · 407 阅读 · 0 评论 -
【Debug系列】当前不会命中断点,源代码与原始版本不同
Date: 2018.4.1目录问题: 解决方法:问题: 在调试程序过程中,遇到“当前不会命中断点。源代码与原始版本不同”的问题”,无法在程序中命中断点,根据VS的调试,解决方法: 按照VS的提示,将属性---->工具---->选项----->调试----->将“要求源文件与原始版本完成匹配”去掉勾。问题解决! 遇到“当前不会命中断点。源代码与原始版本不同”的问题。 在网上查的类似:一般studio会提示将“工具”,“选项”,...原创 2018-04-01 21:10:19 · 950 阅读 · 0 评论 -
【Complier】Makefile error make (e=2): The system cannot find the file specified
###Date: 2018-3-20____________________________________________________________________________________ 在编译某库过程中,突然出现如下编译错误:Makefile error make (e=2): The system cannot find the file specified原因:经过...原创 2018-03-20 20:13:06 · 2959 阅读 · 0 评论 -
【Debug系列】error C2275:将此类型用作表达式非法
Date: 2018.3.24问题及原因: 这个错误主要是C和C++之间的编程规范有所区别造成的。 在移植c++代码到c的时候,经常会出现一个奇怪的错误, error C2275: “XXX”: 将此类型用作表达式非法, 这个错误是由于c的编译器要求将变量的声明放在所有函数调用语句之前,而c++没有这样的要求造成的。解决的办法就是把变量的声明全部放在变量的生存块的开始。C2275: “size_t”: 将此类型用作表达式非法,同时还导致一堆变量未定义...原创 2018-03-24 09:23:43 · 4021 阅读 · 1 评论 -
【Bug】解决"应用程序配置不正确,程序无法启动"
###Date:2017-2-27转载自:http://blog.csdn.net/jehnjehn/article/details/69379041、问题“D:\Program Files\Tencent\QQ\Bin\QQ.exe”的激活上下文生成失败。 找不到从属程序集 Microsoft.VC80.CRT,processorArchitecture="x86",转载 2018-02-27 19:54:33 · 1384 阅读 · 0 评论