病毒处理的代码   html病毒_html/css_WEB-ITnose

WBOY
Release: 2016-06-21 08:47:33
Original
1663 people have browsed it

病毒描述

在本地的html文件中以js在文件末尾添加一定字符 以达到占用内存的影响

http://anquan.baidu.com/bbs/forum.php?mod=viewthread&tid=395007&page=1#pid2178566

然后呢 

这样处理的病毒感染的文件

java重新写新文件到txt

 import java.io.BufferedReader;import java.io.File;import java.io.FileReader;import java.io.IOException;import java.io.PrintWriter;public class wz { public static void main(String[] args) { String s1 = "C:\\Users\\Administrator\\Desktop\\ZM\\C++课件--V2"; String s2 = "C:\\Users\\Administrator\\Desktop\\ZM\\newc";		// CopyFile();		File file = new File(s1);		File file2 = new File(s2);		if (!file2.exists()) {			file2.mkdir();		}		if (file.isDirectory()) {			File[] files = file.listFiles();			for (File f : files) {				CopyFile(s1 + "\\" + f.getName(), s2 + "\\" + f.getName()+".txt");			}		}	}	private static void CopyFile(String name1, String name2) {		BufferedReader br = null;		PrintWriter pw = null;		try {			br = new BufferedReader(new FileReader(name1));			pw = new PrintWriter(name2);			String s = null;			while ((s = br.readLine()) != null) {				int a = s.indexOf("</HTML>");				if (a != -1) {					String sub = s.substring(0, a + 7);					pw.write(sub);					break;				}				pw.write(s);				pw.write("\r\n");			}		} catch (Exception e) {			e.printStackTrace();		} finally {			if (br != null) {				try {					br.close();				} catch (IOException e) {					e.printStackTrace();				}			}			if (pw != null) {				pw.close();			}		}	}}
Copy after login

居然文件大小没有改变大小 html 清除了wcripst.EXE的病毒(vbs干扰了微软的文件)

于是动用c语言

发现一样的是不行的

最后找到改变文件大小的函数是可以搞定的

#include<io.h>#include<fcntl.h>//#include<syspes.h>#include<sys/stat.h>#include<stdio.h>#include<iostream>#include<fstream>using namespace std;void fun(char *name,int n ){	int fh, result;	unsigned int nbytes = BUFSIZ; 	if( (fh = open(name,std::ios::in)))	{		cout<<"File length before:"<<filelength( fh )<<endl;		if( ( result = chsize( fh, n) ) == 0 )			cout<<"Size successfully changed"<<endl;		else			cout<<"Problem in changing the size"<<endl;		cout<<"File length after:"<<filelength( fh )<<endl;		close( fh );	}}   int main(){	char name[128] ="C:\\Users\\Administrator\\Desktop\\ZM\\newc\\1.txt";	FILE* fr = fopen(name,"rb");	int size = 0;	int flag = 0;	char a='c';	int ct=1;	int n=50;	while(n--)	{	fgets(fr);	}	while((a = fgetc(fr))!= EOF)	{		if(a == '<')		{			flag = 1;			continue;		}		if(a == '/' && flag == 1)		{			continue;		}		if(flag == 1 && (a=='H'|| a== 'h'))		{			fgetc(fr);			fgetc(fr);			fgetc(fr);			fgetc(fr);			size = ftell(fr);			break;			 		}		flag = 0;	}	fclose(fr);	fun(name,size);	return 0;}
Copy after login

但 还是不行,,,,

注意在普通的页面中不能以/html判断终结   因为txt/html字段可能在其中

指定文件大小统一改为80kb能省点空间 后面有附件 一份txt


source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template