V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
freelancher
V2EX  ›  Linux

shell 也可以加密吗?想起之前下了一个阿里云的脚本。结果除了前面几行。后面都是乱码。跑又跑得起来。是不是加密过了?

  •  
  •   freelancher · 2020-07-24 06:56:04 +08:00 · 2685 次点击
    这是一个创建于 1608 天前的主题,其中的信息可能已经有所发展或是发生改变。
    14 条回复    2020-08-17 16:41:16 +08:00
    yanqiyu
        1
    yanqiyu  
       2020-07-24 11:27:55 +08:00 via Android
    乱码是什么形式,要么是类似于 base64 的编码(解码运行),要么是直接把后面的东西单独拿出来干活

    记得很早之前 AMD 驱动 fglrx 就是这种形式,本体看起来是 sh,但是实际上里面有一堆二进制(实际上是压缩包),运行的时候会解压压缩包然后运行里面的程序(我愿称之为自解压 sh )
    Yut
        2
    Yut  
       2020-07-24 16:44:15 +08:00
    @yanqiyu 为什么会有这种操作,这也太怪了吧
    freelancher
        3
    freelancher  
    OP
       2020-07-24 19:33:19 +08:00
    @yanqiyu 好像就是二进制的文字。因为是很久之前了。突然想起才问一下的。因为我满想看一下阿里云他们写的代码规范之类的。
    Yadomin
        4
    Yadomin  
       2020-07-25 12:37:22 +08:00 via Android
    可能后面是 bin
    panzhc
        5
    panzhc  
       2020-07-25 17:49:27 +08:00
    类似 gzexe ?需要解释执行的最终都会还原成脚本,只是增加读取的难度
    ungrown
        6
    ungrown  
       2020-07-27 11:27:00 +08:00   ❤️ 1
    @Yut #2
    保护代码,或者减少发布的文件数量
    sh 可以加密、混淆
    https://www.thegeekstuff.com/2012/05/encrypt-bash-shell-script/
    https://stackoverflow.com/questions/9907200/how-to-minify-obfuscate-a-bash-script
    windows 的命令行批处理也可以内部集成二进制可执行文件,然后在同一个批处理内调用这些内置程序
    实现方式可以用 certuril,或者 powershell 指令,或者其他工具
    https://gist.github.com/mo-han/5bc4ae2e544bd73288b175b3d7669d1e
    freelancher
        7
    freelancher  
    OP
       2020-07-27 15:00:25 +08:00
    @ungrown 谢谢。但是当时运行的时候。sh 后面没有跟着 X.应该不是这种加密方式吧。
    freelancher
        8
    freelancher  
    OP
       2020-07-27 15:01:01 +08:00
    就是普通的 sh 文件。然后我打开看。下面的到结尾的大段全部都是乱码。太奇怪 了。
    saytesnake
        9
    saytesnake  
       2020-07-29 17:10:57 +08:00
    当然可以加密,一般涉及到敏感信息的脚本比方说啥备份的,都用 shc 加密一下。
    Yut
        10
    Yut  
       2020-07-29 22:21:15 +08:00
    @ungrown 谢谢老哥,但是这样的话完全放弃了修改吧,只适合那种永远不会改的小工具什么的?
    ungrown
        11
    ungrown  
       2020-07-29 23:08:42 +08:00
    @Yut #10 我自己没写过,我猜也是,但是有解码就有编码,文件变了应该也能一键更新
    zanelee
        12
    zanelee  
       2020-08-02 10:06:46 +08:00
    win10 上打开过了,字符集有问题了?
    freelancher
        13
    freelancher  
    OP
       2020-08-02 12:02:44 +08:00
    @zanelee LINUX 下也看过。就是不行才想到是加密的。
    qbqbqbqb
        14
    qbqbqbqb  
       2020-08-17 16:41:16 +08:00
    @freelancher 那种其实就相当于自解压包,上面是脚本,脚本结束部分有个 exit,后面放置一个分隔符和二进制内容,前面脚本部分里包含了将后面的二进制内容抽取解压执行的代码。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5387 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 06:53 · PVG 14:53 · LAX 22:53 · JFK 01:53
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.