C 使用共享库:自定义myfopen(),myfrwrite()
您好,我已经创建了一个名为C 使用共享库:自定义myfopen(),myfrwrite(),c,bash,shared-libraries,fopen,fwrite,C,Bash,Shared Libraries,Fopen,Fwrite,您好,我已经创建了一个名为logger.so的共享库。此库是我的自定义fopen()和fwrite()。它收集一些数据并用这些数据生成一个文件 现在我正在编写一个bash脚本,我也想使用这个库。生成txt文件我将能够看到生成自定义fopen()的额外文件。因此,当我在c文件中使用命令fopen()时,会生成这个额外的文件 我的问题是,在bash中,哪些命令正在使用fopen()和fwrite()函数 我已经预装了我的共享库,但它不工作。可能这些命令不使用fopen(),fwrite() expo
logger.so
的共享库。此库是我的自定义fopen()
和fwrite()
。它收集一些数据并用这些数据生成一个文件
现在我正在编写一个bash脚本,我也想使用这个库。生成txt文件我将能够看到生成自定义fopen()
的额外文件。因此,当我在c文件中使用命令fopen()
时,会生成这个额外的文件
我的问题是,在bash中,哪些命令正在使用fopen()
和fwrite()
函数
我已经预装了我的共享库,但它不工作。可能这些命令不使用fopen()
,fwrite()
export LD_PRELOAD=./logger.so
read-p'输入要创建的文件编号:[输入]:'文件编号
对于((i=1;i“file_${i}”
完成
这可能需要一些尝试和错误。我认为有两种方法可以做到这一点。一种是运行处理bash
中文件的潜在命令,并查看它们在跟踪时是否调用fopen
:
strace bash -c "read a < /dev/null"`
您需要取消对整个包的归档,并逐个搜索.c文件,例如:
curl https://mirrors.tripadvisor.com/gnu/bash/bash-5.1-rc3.tar.gz|tar -z -v -x --wildcards \*.c
如果没有curl
(wget
也可以工作),您还可以通过FTP将文件传送或通过浏览器保存,并独立执行tar
)
希望您可以跟踪相关命令,但这可能并不容易。这可能需要一些尝试和错误。我看到两种方法可以做到这一点。一种是运行处理
bash
中文件的潜在命令,并查看跟踪时它们是否调用fopen
:
strace bash -c "read a < /dev/null"`
您需要取消对整个包的归档,并逐个搜索.c文件,例如:
curl https://mirrors.tripadvisor.com/gnu/bash/bash-5.1-rc3.tar.gz|tar -z -v -x --wildcards \*.c
如果没有curl
(wget
也可以工作),您还可以通过FTP将文件传送或通过浏览器保存,并独立执行tar
)
希望您可以跟踪相关命令,但这可能并不容易。并非每个程序都使用C标准库stdio函数
fopen
和fwrite
但是每个程序都使用open
和write
系统调用来打开和写入文件,您可以插入/monkey补丁
使用
输入法的现代程序需要不同的插入方法。不一定每个程序都使用C标准库标准函数fopen
和fwrite
但是每个程序都使用open
和write
系统调用来打开和写入文件,您可以插入/monkey补丁
使用
输入法的现代程序需要不同的插入方法。你为什么不检查一下源代码,自己看看呢?你能建议我在哪里做研究吗?给你,你为什么不检查一下源代码,自己看看呢?你能建议我在哪里做研究吗研究?,给你
curl https://mirrors.tripadvisor.com/gnu/bash/bash-5.1-rc3.tar.gz|tar -z -v -x --wildcards \*.c