首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

LD_PRELOAD 后门 | Linux 后门系列

可以看到可执行文件 hook.so 已经完成了 设置 LD_PRELOAD ? 成功获取到反弹shell ,劫持成功。...加固后门 正常大家检查是否存在 LD_PRELOAD 后门的时候都是直接 echo $LD_PRELOAD ?...仔细看图里的东西,这都是我一不留神发现的,上一步我们设置的env 别名会出现在 set ,但是吧,需要执行一次 env 后才会出现在 set 劫持显示 ?...成功劫持显示,同时呢,因为之前劫持set 后,export这一条也不会在 set 显示,啊,我真是个天才,哈哈哈 劫持 unalias alias unalias='func(){ if [ $#...Tips: 使用 readonly 命令设置的环境变量不可修改 在有SUID,SGID存在的文件是无视 LD_PRELOAD 的,无法用 :LD_PRELOAD 劫持 这些命令的源码 git clone

7.2K20

Linux环境变量LD_LIBRARY_PATH配置

loading shared libraries:libnetsnmp.so.40:cannot open shared object file: No such file or directory.环境变量LD_LIBRARY_PATHLD_LIBRARY_PATH...是Linux环境变量名,该环境变量主要用于指定查找共享库(动态链接库)时除了默认路径之外的其他路径。...非常多的软件没有root权限安装会比较困难,主要就是因为各种系统库文件,也就是LD_LIBRARY_PATH这个环境变量里面的文件。...我们可以加到 ~/.bashrc ,在该文件的未尾,可采用如下语句来使设置生效:vim ~/.bashrcexport LD_LIBRARY_PATH=$LD_LIBRARY_PATH:....lib64:/usr/lib:/usr/lib64:/usr/local/lib重新加载换机变量source ~/.bashrc这样每次登陆和每次打开 shell 都可以读取到这个变量查看变量echo $LD_LIBRARY_PATH

11910

ld-linux-x86-64挖矿木马实战记录

内网服务器是怎么的挖矿木马?带着这些疑问,我开始逐步排查。...2、查看资源占用情况 输入top命令,其中PID为145598的进程占用大量的CPU资源,而内存占用率并不是很高,非常符合挖矿木马的特征,其中ld-linux-x86-64非常可疑。 ?...3、可疑文件定位 搜索ld-linux字符串,其中/dev/shm/.x/文件夹下的两文件可能有异常。上网搜ld-linux-x86-64关键字,发现有类似的挖矿木马的报道。 ?...后续安排 为了防止同类事件再次发生,急需对已发现问题进行整改,主要有以下几点: 由于木马会自动扫描ssh端口弱口令并自动传播,建议抽查或全面排查其他linux服务器是否有同样的挖矿木马。...用top命令查看资源占用最高的进程是否为ld-linux-x86-64,如是,说明已木马。

4.7K30

LD_PRELOAD 劫持 PWD 为什么失败了 | Linux 后门系列

这篇文章主要讲两个事情,第一个是Linux ELF文件共享库加载顺序,第二个是之前 LD_PRELOAD 劫持 pwd 失败的事情,第二件事我要大讲特讲,但对于大家帮助可能不会很大,为了解决这个问题我研究了一年...,所以别怪我话多了 Linux ELF 共享库加载顺序 LD_PRELOAD -> /etc/ld.so.preload -> DT_RPATH(编译指定) -> LD_LIBRARY_PATH ->...,2020-07-05 我写了以下这篇文章 LD_PRELOAD 后门 | Linux 后门系列 在这篇文章的最后,我遗憾得告诉大家,劫持 whoami 命令很顺利,但是劫持 pwd 却失败,到最后都没有解决...,实际上我做了很多的尝试,问了一些人,也没有得到解决 为此呢,我去学习了 Linux C语言,Linux 汇编,Linux 链接装载等相关知识,终于在快一年的时候,我把这个问题解决了 它就像一座小山,挡在我前面...也不是,其实是 bash 怕像cd pwd 这种命令 /bin 目录下的二进制文件在不同系统存在差异,所以自己集成了cd pwd 等命令 bash 内置命令一般有两个原因,一种是为了兼容性,为了不被外部程序干扰

1.9K40

LD衰减图绘制--PopLDdecay

LD衰减图,可以形象的查看群体LD衰减的情况。...LD衰减是由于连锁不平衡所致,LD衰减速度在不同物种或者不同亚种差异不同,通常用LD衰减到一般的距离来作为群体的衰减距离(还有其它计算方法),如果LD衰减很快,则在进行GWAS分析时需要更多的位点才能达到一定的精度...(计算群体GWAS分析所需要的最少SNP个数) 另外,LD衰减也可以反应群体受选择的情况,一般来说,野生群体比驯化改良群体LD衰减快,异花授粉比自花授粉植物LD衰减快。...LD图分为单个群体和多个群体的图,今天使用软件PopLDdecay来实现一下。这个软件需要Linux系统。 目标图: 1. 数据 基因型数据是vcf数据,plink格式的数据可以转化为vcf数据。...多品种绘制LD图 如果要运行A,B,C三个品种的LD图,先要把ID整理为三个文件: A.txt B.txt C.txt 文件: $ ls *txt A.txt B.txt C.txt total_name.txt

1.3K40

linux 动态链接库查找方法;查找动态链接库位置; LIBRARY_PATH 和 LD_LIBRARY_PATH 的区别;LD_LIBRARY_PATH and LD_RUN_PATH的区别;MAC

今天配置之前项目的时候,发现有些动态链接库变了,想看看现在应用在使用哪些动态链接库的时候,进一步查了点资料; 下面针对linux动态链接库查找方法和动态链接库位置配置的过程进行记录: LIBRARY_PATH...LD_LIBRARY_PATH and LD_RUN_PATH 的区别: (参考链接) LD_RUN_PATH is used for the link time resolution of libraries...可以使用 /etc/ld.so.conf 全局配置文件,配置动态链接库运行时的搜索路径; 然后使用ldconfig命令,进行将/etc/ld.so.conf加载到ld.so.cache之中(需要root.../etc/ld.so.conf.d/x86_64-linux-gnu.conf,多体系结构支持配置,以x86_64为例: # Multiarch support /usr/local/lib/x86_64...-linux-gnu /lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu 保持更新; otool -L pk # macos 使用此方法进行查看;

1.7K10

CTFHub:web-LD_PRELOAD-WP

passthru(),偏僻的 popen()、proc_open()、pcntl_exec(),逐一尝试,或许有漏网之鱼 mod_cgi 模式,尝试修改 .htaccess,调整请求访问路由,绕过 php.ini 的任何限制...(让特定扩展名的文件直接和php-cgi通信); 利用环境变量 LD_PRELOAD 劫持系统函数,让外部程序加载恶意 *.so,达到执行系统命令的效果。...LD_PRELOAD是Linux系统的一个环境变量,它可以影响程序的运行时的链接(Runtime linker),它允许你定义在程序运行前优先加载的动态链接库。...这个功能主要就是用来有选择性的载入不同动态链接库的相同函数。通过这个环境变量,我们可以在主程序和其动态链接库的中间加载别的动态链接库,甚至覆盖正常的函数库。...php putenv("LD_PRELOAD=/tmp/hack.so"); mail("", "", "", ""); ?> 然后去GET请求包含sunian.php url/?

10310

Linux gcc链接动态库出错:LIBRARY_PATH和LD_LIBRARY_PATH的区别

collect2: error: ld returned 1 exit status 1 gcc链接动态库时的搜索路径 自以为在当前工程设置好了环境变量LD_LIBRARY_PATH包含了工程的lib...库路径,并且还在/etc/ld.so.conf/apphome.conf配置了lib库的路径。...后来猜想是不是在CentOs7LD_LIBRARY_PATH不起作用的缘故,但是也不应该,因为自己用的GCC(version 4.8.3)跟操作系统没关系。...3 关于Linux gcc的LIBRARY_PATH和LD_LIBRARY_PATH参数说明 下面摘取了两篇较权威的说明资料: 1、GNU上关于LIBRARY_PATH的说明: LIBRARY_PATH...其中,Linux GCC默认的动态库搜索路径可以通过ld --verbose命令查看: [root@typecodes tcpmsg]# ld --verbose ............

19710

LD_PRELOAD 后门 | bypass disable_functions

只要劫持系统命令调用的一个函数就可以在劫持函数任意执行其它函数从而绕过disable_functions 劫持命令调用函数的步骤: 在内部重写函数,将原有的函数覆盖 将原函数指针赋值给一个变量 触发重写的函数 在重写函数执行原函数...照常返回正常值(保证命令的正常执行) 漏洞原理 Linux ELF 共享库加载顺序: LD_PRELOAD -> /etc/ld.so.preload -> DT_RPATH(编译指定) ->...strcmp函数 which的运行过程开启了一个新进程执行其他命令,而这个命令就调用了strcmp 后门加固(使用alias) 通过使用alias给命令定义别名,重新定义命令的执行,将暴露后门的内容给过滤掉再输出即可...c代码的命令执行payload(原因已经在下面pwd劫持失败原因埋坑了) whoami和pwd都执行了puts()函数,但whoami会执行payload而pwd命令就不会执行payload whoami...pwd 这些内置命令执行的时候不会加载外部共享库,也就是不会去加载我们的 hook.so ,更不会劫持 puts 函数 其实 bash 怕像cd pwd 这种命令 /bin 目录下的二进制文件在不同系统存在差异

73440

【一站式解惑】Linux.a、.so和.o文件以及-I,-L,LIBRARY_PATH,LD_LIBRARY_PATH等

本文由博主Vincent乐提供,主要介绍linux的.o,.a,.so文件是什么,怎么生成,如何使用等内容,通俗易懂,示例丰富。...在Linux下,共享库的加载是由/lib/ld.so完成的,ld.so加载共享库时,会从ld.so.cache查找。 创建函数库示例 我们通常把一些公用函数制作成函数库,供其它程序使用。...本节主要通过举例来说明如何在Linux创建静态库和动态库,以及使用它们。 在创建函数库前,我们先来准备举例用的源程序,并将函数库的源程序编译成.o文件。...程序照常运行,静态库的公用函数已经链接到目标文件中了。 我们继续看看如何在Linux创建动态库。我们还是从.o文件开始。...静态库链接时搜索路径顺序 1. ld(GNU linker)会去找GCC命令的参数-L。

3.6K52
领券