linux查壳命令

fiy 其他 41

回复

共3条回复 我来回复
  • fiy的头像
    fiy
    Worktile&PingCode市场小伙伴
    评论

    在Linux中查壳的命令是file。

    file命令可以用来确定一个文件的类型。当我们使用file命令查看一个可执行文件时,它会显示这个可执行文件的文件格式和所使用的壳。壳(shell)是一个解释器,它用于执行可执行文件中的命令。

    要查看一个文件的壳类型,只需在终端中输入以下命令:

    file <文件路径>

    其中,文件路径是要查看的文件的完整路径。命令执行之后,终端会显示该文件的类型和所使用的壳。

    此外,还可以使用下面的方式来查看壳的类型:

    1. 使用readelf命令:readelf命令是用于查看二进制可执行文件的工具,它可以显示出文件的头文件、节区和部分段的相关信息。要查看一个文件的壳类型,可以使用以下命令:

    readelf -a <文件路径> | grep interpreter

    其中,<文件路径>是要查看的文件的路径。

    2. 查看/proc文件系统:在Linux中,/proc是一个虚拟文件系统,用于提供关于系统和进程的信息。每个进程都有一个以其进程ID命名的文件夹,该文件夹下有一个名为”exe”的文件,它是这个进程的可执行文件的符号链接。可以使用以下命令来查看一个进程所使用的壳:

    ls -l /proc/<进程ID>/exe

    其中,<进程ID>是要查看的进程的ID。

    通过以上方式,你可以轻松地查看一个文件或进程所使用的壳类型。

    2年前 0条评论
  • worktile的头像
    worktile
    Worktile官方账号
    评论

    在Linux操作系统中,可以使用以下命令来查看当前使用的壳(即命令行界面):

    1. echo $SHELL:这个命令会打印出当前使用的壳的路径。通常,大多数Linux系统默认使用Bash作为默认壳。

    2. cat /etc/shells:这个命令会显示系统中可用的壳。该文件包含了系统中所有已安装的壳的路径。

    3. ls -l /proc/$$/exe:这个命令会显示当前正在运行的命令的路径。通常,这个路径指向当前正在使用的壳。

    4. env | grep SHELL:这个命令会显示当前用户的环境变量,并通过grep过滤出包含SHELL的行。这样就可以找到当前正在使用的壳。

    5. ps -p $$:这个命令会显示当前进程的信息,其中$$表示当前进程的PID。在这个输出中,可以找到当前壳的名称。

    6. 使用which命令:某些Linux发行版上提供了which命令,它可以用来查找给定命令的路径。你可以使用如下命令查找当前使用的壳:
    which bash

    以上是一些常用的命令来查看当前使用的壳。不同的Linux发行版可能会有一些差异,请根据你实际使用的系统来选择适合的命令来查看当前的壳。

    2年前 0条评论
  • 不及物动词的头像
    不及物动词
    这个人很懒,什么都没有留下~
    评论

    在Linux系统中,可以使用以下几种方法来查看可执行二进制文件的壳(或称为ELF文件的动态链接器):

    方法一:使用file命令
    file命令可以用来识别文件类型。在Linux终端中输入以下命令:
    “`
    file 可执行文件路径
    “`
    其中,可执行文件路径是待查找壳的可执行二进制文件的路径。执行该命令后,会输出可执行文件的相关信息,其中包含了壳的路径。例如,执行下面的命令:
    “`
    file /bin/ls
    “`
    会输出类似以下的结果:
    “`
    /bin/ls: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, stripped
    “`
    在输出结果中,interpreter 后面的路径即可看到壳的路径。上面的结果中,壳的路径为 /lib64/ld-linux-x86-64.so.2。

    方法二:使用readelf命令
    readelf命令用于读取和显示ELF文件的信息,包括壳的路径。在Linux终端中输入以下命令:
    “`
    readelf -l 可执行文件路径
    “`
    其中,可执行文件路径是待查找壳的可执行二进制文件的路径。执行该命令后,会输出ELF文件的段头信息,其中包含了壳的路径。例如,执行下面的命令:
    “`
    readelf -l /bin/ls
    “`
    会输出类似以下的结果:
    “`
    Elf file type is ET_EXEC
    Entry point 0x401280
    There are 10 program headers, starting at offset 64

    Program Headers:
    Type Offset VirtAddr PhysAddr
    FileSiz MemSiz Flags Align
    PHDR 0x0000000000000040 0x0000000000400040 0x0000000000400040
    “`
    在输出结果的Program Headers部分,可以找到”interpreter”项,它即为壳的路径。上面的结果中,壳的路径为 /lib64/ld-linux-x86-64.so.2。

    方法三:使用objdump命令
    objdump命令用于显示可执行文件或者目标文件的详细信息,包括壳的路径。在Linux终端中输入以下命令:
    “`
    objdump -p 可执行文件路径
    “`
    其中,可执行文件路径是待查找壳的可执行二进制文件的路径。执行该命令后,会输出可执行文件的详细信息,其中包含了壳的路径。例如,执行下面的命令:
    “`
    objdump -p /bin/ls
    “`
    会输出类似以下的结果:
    “`
    /bin/ls: file format elf64-x86-64
    architecture: i386:x86-64, flags 0x00000112:
    EXEC_P, HAS_SYMS, D_PAGED
    start address 0x0000000000401180

    Program Header:
    PHDR off 0x0000000000000040 vaddr 0x0000000000400040 paddr 0x0000000000400040 align 2**3
    filesz 0x00000000000001f8 memsz 0x00000000000001f8 flags r-x
    INTERP off 0x0000000000000238 vaddr 0x0000000000400238 paddr 0x0000000000400238 align 2**0
    filesz 0x000000000000001c memsz 0x000000000000001c flags r–
    “`
    在输出结果的Program Header部分,可以找到”INTERP”项,它即为壳的路径。上面的结果中,壳的路径为 /lib64/ld-linux-x86-64.so.2。

    综上所述,通过file命令、readelf命令和objdump命令,我们可以在Linux系统中查看可执行二进制文件的壳。

    2年前 0条评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部