游戏电视苹果数码历史美丽
投稿投诉
美丽时装
彩妆资讯
历史明星
乐活安卓
数码常识
驾车健康
苹果问答
网络发型
电视车载
室内电影
游戏科学
音乐整形

如何隐藏shell脚本内容

  从事Linux开发的同学,经常需要编写shell脚本,有时脚本中会涉及到一些敏感内容,比如一些IP地址,用户名以及密码等,或者脚本中有一些关键的代码,所有这些内容你都不想别人阅读或者修改,更进一步,你希望对脚本设置过期时间,超过指定时间时间之后,脚本就无法使用
  在不改变脚本内容、功能以及执行方式的情况下,有没有办法实现上面的需求呢?
  答案是:有的,在Linux下,我们可以使用shc这个工具来实现隐藏shell脚本内容以及设置过期时间的目的简介
  shc是一个通用shell脚本编译器,它将shell脚本编译可执行的二进制文件,它的功能以及执行方式和原始脚本没有区别
  和gcc编译器不同的是,shc并没有把脚本源代码转化成机器码,它只是生成了一份C语言代码,这份C语言代码中包含了加密的原始shell脚本,并为它添加了过期功能,然后,通过gcc编译器将C代码编译成可执行的二进制文件安装
  目前,大多数的Linux发行版的仓库中都已经包含了shc,只需要使用默认的包管理器就可以安装,具体的安装命令如下:yuminstallshc
  输入shcv命令,下面的输出表示安装成功〔rootecscentos7shctest〕shcvshcparse(f):NosourcefilespecifiedshcUsage:shc〔edate〕〔maddr〕〔iiopt〕〔xcmnd〕〔llopt〕〔ooutfile〕〔rvDSUHCABh〕fscript常用选项
  下面是shc常用的一些选项以及选项的描述
  选项
  描述
  f
  待编译的shell脚本文件
  o
  指定编译生成的二进制文件
  e
  设置过期时间,格式日月年
  m
  过期之后,执行脚本时的提示信息
  v
  输出编译shell脚本的过程
  r
  编译生成可再发行的二进制编译脚本
  sehll脚本编译成可执行的二进制文件之后,只需要把二进制文件提供给执行者即可,这样执行者就无法知道原始脚本代码了,从而实现别人无法阅读和修改代码的目的
  新建func。sh脚本,往其中添加如下内容:!binbash是否是有效的密码validpasswd(){if〔1123〕;thenecho1elseecho0fi}获取最大数量maxnum(){echo100}登录到远程机器login(){sshpassp123456sshtest192。168。70。20}版本号ver(){echo1。0}if〔ne0〕;thenname1shift1{name}fi
  执行下面的命令,编译func。sh脚本shcrffunc。shofunc。bin
  编译完之后,当前目录下会出现三个文件〔rootecscentos7shctest〕llrwxrwxrx1rootroot116407月100:24func。binrwrr1rootroot3737月100:19func。shrwrr1rootroot198117月100:24func。sh。x。c
  func。sh是原始的脚本文件,func。sh。x。c是生成的c语言代码,func。bin是生成可执行的二进制文件,它的使用方法和原始脚本是一样的
  注意:编译出来的二进制文件func。bin,如果想让它在其他机器也能运行的话,一定要指定r选项
  使用file命令分别查看func。bin、func。sh。x。c,结果如下:
  脚本对外提供validpasswd、maxnum、login、ver这四个接口,脚本中已经注明了每个接口的作用,使用方法是。func。bin接口名接口参数列表,下面的两个实例说明了如何使用脚本实例1
  分别执行。func。binver和。func。shver命令,结果如下
  从上图可以看出,无论是用脚本还是二进制,最终的结果都是一样的实例2
  执行。func。binlogin命令,结果如下
  当传入login参数时,就会执行func。sh脚本中的login函数,该函数的作用是使用SSH登录到远程机器,函数体中的sshpass是一个自动填充SSH登录密码的工具
  从结果可以知道,执行。func。binlogin命令之后,就登录到ip为192。168。70。20机器的hometest目录,后面再输入exit从远程机器退回到当前机器的目录
  我们把func。sh脚本编译成func。bin二进制文件的目的就是要隐藏脚本文件中一些敏感信息,比如:脚本中的SSH用户test,IP地址192。168。70。20以及密码123456设置过期时间
  shc除了将把脚本编译成二进制,还能为二进制设置过期时间,下面还是以func。sh脚本为例来说明
  执行shce2562021mThescriptisexpired,Pleasecontacttestqq。comrffunc。shofunc。bin命令把脚本的过期时间设置为2021年6月25日,执行过期后的脚本提示语设置为Thescriptisexpired,Pleasecontacttestqq。com
  然后,执行。func。binver命令进行测试,结果如下
  从上图可以看出,脚本设置过期时间之后,再次执行脚本会提示已经过期了如何引用二进制脚本
  func。sh编译成了二进制后,其他脚本引用它的方式也要调整下,原来以source。func。sh的使用方式都需要修改,因为fun。sh已经由原来的ASICII文件变成了二进制文件了,下面给出一个shell脚本引用二进制脚本func。bin的实例
  新建testfunc。sh脚本,脚本内容如下:!binbash调用validpasswd函数ret(。func。binvalidpasswd123)if〔reteq1〕;thenechopasswdokfi调用validpasswd函数ret(。func。binvalidpasswd124)if〔reteq1〕;thenechopasswdokelseechopasswdfailfi调用maxnum函数ret(。func。binmaxnum)echomaxnum:ret调用ver函数ret(。func。binver)echoversion:ret
  执行。testfunc。sh命令,结果如下
  从上图可以看出,testfunc。sh脚本分别调用了二进制文件fun。bin中的validpasswd、maxnum、ver函数,根据func。sh脚本内容,可以确定结果输出都是正确的
  从这个实例可以得出,普通脚本也可以正常使用二进制的脚本安全性
  shc使用的加密类型是叫做RC4流密码的一个变体,目前它已经被证实存在弱点,存在被破解的可能,尤其在shc中,密钥被携带到加密脚本本身中,所以,是存在通过反汇编破解出密钥,进而通过密钥还原原始脚本的可能性
  因此,我们不应该依赖shc加密的安全性,而是更多的把它当作是shell脚本内容的隐藏或者混淆工具小结
  本文主要介绍了隐藏shell脚本内容的工具shc,虽然它加密的安全性不高,但是我们平常可以把它作为一个shell脚本代码隐藏和混淆工具来使用,也能达到我们的目的,更多关于shc的相关知识请参考网上其他资料
  EOF

抱歉无意轻量化,赛睿RIVAL3无线版拆解RIVAL3的市场成功和实测数据都证实了这是一款非常不错的鼠标,顺理成章它的无线版本也备受关注,尤其是近期罗技曝光GPROXSUPERLIGHT超轻量化无线游戏鼠标的同时,让我……放假安排竟遭网友抵制?2020,请善待你的工作!01、工作实苦,但比没有要好近日,2020年放假安排一出,就遭到网友抵制。很多网友表示,放假太久,现在听到放假心里就抵触,还有人表示,已经放长假了,因为公司倒闭了。……日本宣布将禁售燃油车,新能源汽车的时代要来临了吗?日前,据海外媒体报道,日本经济产业省已朝着2030年代中期在日本国内停止销售汽油车新车的方向启动调整,未来日本的新车销售将全部转变为混合动力车型和纯电动车型。预计经济产业……续航500英里,充电12分钟!特斯拉在制造石墨烯电池?电动汽车制造商特斯拉,由于特斯拉Model3的销量在全球范围内的爆炸式增长,让全世界都认识到硅谷造车的惊艳传说。众所周知,特斯拉目前采用的是锂离子电池,电池续航、性能都挺不错的……新推出的AdobePhotoshop22。3已支持M1Adobe正在推出Photoshop更新,以提供对AppleSilicon的本地支持,承诺用户的性能比通过Rosetta仿真运行该软件快1。5倍。11月,Adobe在be……跑在风口之后的丰田关注并标星电动星球News每天打卡阅读更深刻理解汽车产业变革出品:电动星球News作者:胖飞同学你问当下最大的产业风口是什么?我会毫不犹豫地回答你……520最强表白,神舟新品正式发布!7999值得拥有的RTX22020年05月20日晚19:00,神舟战神桌面级十代酷睿新品发布会如期来临。发布会以神舟战神,竞领十代为主题,公布了超级战神TX9CU5DA等多款台式机处理器游戏本新品,神舟……干货这些日常习惯等于毁车!你中招了几个?提起开车陋习,你会想到什么?开车接打电话、加塞抢行、路怒一族亦或是远光灯杀手?本期小编要来盘点一下那些常见却极易被忽略的开车陋习时间久了会对爱车产……小爱同学首次登陆电脑端!小米推出高效智能办公助理小爱鼠标!与其他鼠标不同的是,小爱鼠标单独配备了一个小爱同学语音按键,长按即可呼出小爱同学。并且还支持语音输入、语音搜索、实时翻译、划词翻译、控制智能家具、在两台电脑之间切换使用等……酷暑难耐不用慌纽恩泰降暑神器让您健康又清凉在炎热的夏季,出门5分钟,出汗2小时的感受让人备受煎熬,而营造清凉的居家环境成为消费升级的必选项。小暑节气是一年气温波动的高位阶段,各地气温陆续不断攀升,此时的解暑降温成为关乎……抢发生鲜电商第一股,生鲜域名谁厉害?【新网域名资讯】6月9日,每日优鲜、叮咚买菜分别于美国纳斯达克、纽交所递交了招股书。每日优鲜证券代码为MF,叮咚买菜股票代码为DDL,双方暂定筹资额为1亿美元。同为生鲜电……分享几款优秀的绘图工具前言一些优秀的、清晰的技术文档、技术博客、工作汇报都少不了一些流程图、框图、思维导图等辅助说明图片。大家平时在写论文、写文档、写博客、写工作汇报都用什么工具进行绘图呢?……
换手机每次都是两千以内,还能用两三年的人,应有以下特征哈喽大家好,我是你们的朋友沫然,今天我们就聊聊手机的那些事。现如今,我们的生活水平是逐渐的提高,不再是以前的温饱阶段,所以很多人在生活质量上面有着不同的追求。现如今手机成……舟山定海轻松散慢三日游怎么舒服怎么来舟山,地处浙江省东北部,舟山渔场也是我国最大渔场。定海之名由康熙二十六年五月,康熙帝以山名为舟,则动而不静,诏改舟山为定海山,并题定海山匾额而来,现在定海则是舟山一个区。……俄克拉荷马基督教大学OC视觉形象升级俄克拉荷马基督教大学(OC)由基督新教徒创办于1950年,是美国一所四年制私立基督教大学,位于美国俄克拉荷马州首府俄克拉何马城,为大约2000名学生提供本科和研究生课程。随着2……福斯中国与百顺汽车战略合作签约仪式圆满举行2021年11月2日,福斯润滑油(中国)有限公司(以下简称福斯中国)河北百顺汽车科技服务有限公司(以下简称百顺汽车)战略合作签约仪式在上海举行。福斯中国首席执行官朱庆平、福斯中……保护儿童视力健康,用Yeelight星辰智能台灯Pro养护眼小伙伴这段时间做作业时老是提示他的眼睛不舒服,作为孩子的家长分析出来的原因可能是家里灯的光线不足影响了孩子的视力,长期在光线不足的环境作业看书给他的眼睛造成了压力。虽然小伙伴不……爱威影音2021广州音响展精彩预告2021年广州音响展即将于5月2830日在东方宾馆和广州大酒店举行,爱威影音此次一共有三处展位,分别展示爱威影音旗下各款产品,欢迎广大爱好者发烧友,全国各地经销商和媒体朋友光临……中国移动副总经理赵大春强化数智基建驱动,加速数字应用创新10月15日,以数字驱动、智能发展为主题的2021世界数字经济大会暨第十一届智慧城市与智能经济博览会在浙江宁波开幕。中国移动副总经理赵大春出席大会,并在主论坛作主题为《强化数智……2021年成本下降将推动MiniLED商显大屏市场暴增2020年受疫情影响小间距LED市场上半年整体情况并不理想。其中一季度小间距LED市场销额同比下降22。0,二季度略有增长,增速约为11。6。随着新冠疫情得到控制,三、四季度市……盘点黑寡妇电影中的电子产品,不仅仅只有诺基亚手机估计很多盆友都已经看过《黑寡妇》了,相信不少人对影片开头寡妇姐拿的那个诺基亚手机印象比较深刻,让人印象深刻的不是这部手机竟然是诺基亚的,而是这部手机竟然是Windows系统,毕……电通数码团队被离职后续员工集体举报CEO张喆翔行贿广汽高层1月8日,有消息称,服务于广汽的著名广告公司电通数码广州分公司(下称电通数码)突发人事地震,该日凌晨整个团队收到dentsuXCEO张喆翔及其主力丸山博之的离职要求,集体被炒。……不到七万就能买到热门车型?网友双十一百亿补贴下乡真香虽然疫情已经基本得到了控制,人们日常生活中除了佩戴口罩之外,也基本不会再受到其他影响,但是这场疫情却深深地改变了我们的生活习惯和方式。以前,公共交通是很多年轻人喜欢的交通方式,……地摊经济方兴未艾,地摊费却悄然拦路最近地摊经济兴起,摆地摊重回大众视野,许多人计划或者准备加入摆地摊大军,从经济发展和人们丰富的生活需求的角度来讲,摆地摊是一件好事,它可以补充商铺的不足,给社会弱势群体多一条赚……
友情链接:易事利快生活快传网聚热点七猫云快好知快百科中准网快好找文好找中准网快软网