logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

linux程序无源码调试的方法

序过段时间可能要逆向linux上的cm, 先将调试方法做个实验, 将菜谱备好.远程调试有2个方法:*GDB在linux服务器上直接调试无源码的cm,这个调试起来比较繁琐,即使没有源码,也是按照C语言代码行进行的单步。寄存器值变的太突然,不好理解。*在windows上用IDA6.8pro远程启动(或附加)调试linux服务器上的cm。这个可以直接单步反汇编代码, 可以通过单步,

gcc - 查看预处理(宏展开)之后的实际代码

前言有些使用模板或复杂宏的程序,如果想知道最终的预处理代码是啥。最好的方法就是用编译器的预处理命令,先将实现文件进行预处理,另存成实现文件,先看看。在看AT&T汇编的书时,讲了用gcc怎样看预处理文件,很实用。实验测试用的源码lostspeed@debian8:/home/dev/old_linux/gcc_flat_binary$ cat ./test.c// @file t..

You have loaded library .so which might have disabled stack guard

前言给web同事写了so, 人家找来了,说运行java程序时报错.报错信息如下:[root@localhost src_linux_fedora22]# ./run_java_prj.sh run java prj begin, please wait a moment... Java HotSpot(TM) Server VM warning: You have loaded...

mysql-installer-community-5.7.18.1

前言今天同事在linux服务器上的mysql连不上,正好要调试bug, 看看sql哪写错了.就去csdn下了一个人家说好用的mysql5.x版本, 在win10x64下不好使啊.安装完,服务启动不起来, 要想能用还要找资料,手工安装启动mysql, 记得在win7下不是这么麻烦啊。去官网下载了一个x64版本的mysql5.7.18.1x64版本, 在win10x64下好使.

linux C : 子进程监听父进程使用的socket端口问题

前言在cm中,有个服务程序,收到socket命令后,启动一个子进程。即使子进程没有任何socket操作,用lsof -i :port 来查看,也会看到子进程在监听父进程开的socket端口。如果父进程由于某种原因退出了(假设是崩溃,调试或收到了web系统的命令退出),再重启父进程,端口被子进程监听,导致bind失败。因为没想到问题原因,看代码也看不出来,就搁了一段时间。...

openssl3.2 - 在VS2019下源码调试openssl.exe

openssl.exe运行时, 是带环境变量的.用VS2019调试时, 只带命令行参数是不行的.

文章图片
cJSON指定内存分配函数

前言在STM32F407的MDK工程中使用cJSON,挺好用的。无奈json文件载入后,RAM用的有点狠,放弃治疗。自己写个简单的json分析,只针对自己特定的工程。在使用cJSON过程中,普通用法看官方demo就行。只是cJSON中使用自己的内存分配函数(如果内存不够或自己管理内存,一定要指定内存分配函数),好像官方文旦中没有特意说。cJSON代码要砍掉了,将指定内存分配函数的函数摘出...

openssl命令行整理

将资料上的openssl命令行整理一下。

文章图片
openssl3.2 - crypto-mdebug被弃用后, 内存泄漏检查的替代方法

调用openssl接口后, 如果用到了openssl对象, 需要释放, 否则会发生内存泄漏.即使不是新手, 也不能保证释放函数都调用了. 想想我们自己写程序, new后, 没有delete的情况就知道, 可以理解.谁能保证自己手搓的应用实现100%没内存泄漏呢?看资料时, 发现openssl本身有这个检查库本身发生内存泄漏的特性, 大概就是申请内存时, openssl自己记录了一下, free内存

文章图片
openssl3.2 - exp - AES-256-GCM

工程中要用到对称加密, 没得选, 要用AES256.在openssl3.2中, AES256加解密的种类有好多种.查了资料, 用AE-S256-GCM不错. 如果密文被修改, 就无法解密成功. 不用再另外传HASH给解密一方(让对方自己算是否密文被修改).

文章图片
    共 45 条
  • 1
  • 2
  • 3
  • 4
  • 5
  • 请选择