导航:首页 > 万维百科 > 帝国cms防止图片木马上传

帝国cms防止图片木马上传

发布时间:2020-08-27 05:57:57

1、入侵时,一句话木马图片上传不了,该怎么办啊??在管理员后台只能上传正常图片!伪装的图片上传不了,求

......无语!我也遇到过这种情况!后来我抓包明小子上传成功后去到那个目录!发现他备份成功的所谓的ASA后缀根本没有!。比如:我备份成2010-11-6.asa!可我入侵成功在shell看到的后缀是2010-11-6.asa。根本就没.ASA。后来我又把备份名字改成aa.asp。他备份成功说是aa.asp.asa。除去.asa就是asp木马了!可我再次打开的时候这次不是404.而是以图片方式打开!说了这么多尼明白了吧

2、如何防止上传图片木马

目前无组件上传类都存在此类漏洞——即黑客利用“抓包嗅探伪造IP包,突破服务器端对上传文件名、路径的判断,巧妙上传ASP、ASA、CGI、CDX、CER、ASPX类型的木马。

防范方法:删除后台管理中的恢复/备份数据库功能。

检查您的网页是否有备份数据的功能..或者能把文件重新命名的功能.
数据备份建议使用绝对路径.

黑客应该是先把网马shell 改成jpg 然后上传后.利用备份功能...改为asp.

通用防范上传漏洞入侵秘笈:将服务器端的组件改名

将FileSystemObject组件、WScript.Shell组件、Shell.Application组件改名,然后禁用Cmd.exe,就可以预防漏洞上传攻击。

3、如何在asp中防止图片木马上传

对于ASP程序的网站,木马注入最常见的方法之一就是上传图片木马。那么,如何防止图片木马上传呢?利用下面的代码,也许可以帮你实现。

const adTypeBinary=1

dim jpg(1):jpg(0)=CByte(&HFF;):jpg(1)=CByte(&HD8;)
dim bmp(1):bmp(0)=CByte(&H42;):bmp(1)=CByte(&H4D;)
dim png(3):png(0)=CByte(&H89;):png(1)=CByte(&H50;):png(2)=CByte(&H4E;):png(3)=CByte(&H47;)
dim
gif(5):gif(0)=CByte(&H47;):gif(1)=CByte(&H49;):gif(2)=CByte(&H46;):gif(3)=CByte(&H39;):gif(4)=CByte(&H38;):gif(5)=CByte(&H61;)
Response.Write CheckFileType(Server.MapPath("2.gif"))

function CheckFileType(filename)
on error resume next
CheckFileType=false
dim fstream,fileExt,stamp,i
fileExt=mid(filename,InStrRev(filename,".")+1)
set fstream=Server.createobject("ADODB.Stream")
fstream.Open
fstream.Type=adTypeBinary
fstream.LoadFromFile filename
fstream.position=0
select case fileExt
case "jpg","jpeg"
stamp=fstream.read(2)
for i=0 to 1
if ascB(MidB(stamp,i+1,1))=jpg(i) then CheckFileType=true else CheckFileType=false
next
case "gif"
stamp=fstream.read(6)
for i=0 to 5
if ascB(MidB(stamp,i+1,1))=gif(i) then CheckFileType=true else CheckFileType=false
next
case "png"
stamp=fstream.read(4)
for i=0 to 3
if ascB(MidB(stamp,i+1,1))=png(i) then CheckFileType=true else CheckFileType=false
next
case "bmp"
stamp=fstream.read(2)
for i=0 to 1
if ascB(MidB(stamp,i+1,1))=bmp(i) then CheckFileType=true else CheckFileType=false
next
end select
fstream.Close
set fseteam=nothing
if err.number<>0 then CheckFileType=false
end function
%>

4、c#判断上传文件是否是图片,防止木马上传

可以安装一些杀毒软件在电脑上
如电脑管家一类的,然后一直保持开启
这样就可以预防病毒进入到电脑当中了

5、如何防止上传特定图片导致的入侵?

iis当年的一个漏洞,在win2000(大概)下任何类似xxx.asp的文件夹下的文件均可被当作asp文件运行。具体的记不太清了,大概就是这样:某些网页程序会生成以注册用户名为名的文件夹,并把许多与该用户相关的文件放在此文件夹下。所以,注册一个名为xxx.asp的用户,然后把网页木马改为图片格式作为头像或空间背景上传,找到上传路径,访问一下就可以得到一个webshell了
求采纳

6、上传图片如何防一句话木马

你是网站防护人员还是玩渗透的

7、php 上传文件但可以防图片木马

楼上的真厉害...包含PHP的就判断是病毒...我也是服了....

图片木马只是外行人的称呼,试问就算你上传了一个病毒,可是它会自运行吗?它运行的前提是必须经过事件机制触发它才能运行。你用鼠标双机打开就是一个事件机制。

而web上所说的木马其实是一个PHP或asp。。之类的文件,触发它的前提是php解释器执行该文件。
这里以apache为例,判断用户请求的页面mine是php 就调用php去编译执行该文件,如果是jpg就直接返回给用户下载。
所以你只要判断文件的後缀是否图片格式(jpg,png,gif...)的就可以了,然後上传成功就把它改名,最後再添加(.jpg,png,gif)的後缀

8、建站的时候如何设置可以防止给别人挂马 帝国cms

应该好好检查下网站程序有无隐藏后门 是否被经常篡改

核心的操作点在于服务器端以及网站本身的安全设置,其方法包括但不限于以下几种:

1:服务器日志的定期查看,主要看是否有可疑的针对网站页面的访问。

2:通过ftp查看网站文件的修改时间,看时间上是否有异常。

3:核查网站程序是否需要更新,如果有,可第一时间更新到最新版本。

4:如果网站使用第三方插件,请确认其来源,同时评估这些插件的安全性能。

5:修改建站程序重要的文件名称,修改默认的后台登录地址,防止黑客利用软件自动扫描特定文件以获取相应权限。

6:将ftp,域名,空间,网站后台登录的用户名以及密码设置得尽可能复杂,万不可使用弱口令。

7:选择口碑好,技术强的服务器空间服务商如万网。

8:如有可能,尽可能关闭不需要的端口,限制不必要的上传功能。

9:服务器端设置防火墙等,通常需要与空间服务商沟通,让其代为设置。

建议找专业的安全公司来解决,国内也就Sinesafe和绿盟等安全公司 比较专业.

我们需要做的就是让网站自身的安全性更高,防止黑客获取我们网站相关的权限。

9、C#判断上传文件是否是图片,防止木马上传

/// <summary
/// 判断文件是否为图片
/// </summary
/// <param name="path"文件的完整路径</param
/// <returns返回结果</returns
public Boolean IsImage(string path){try{System.Drawing.Image img = System.Drawing.Image.FromFile(path);
return true;}catch (Exception e){return false;}}方法二,判断文件头
/// <summary
/// 根据文件头判断上传的文件类型
/// </summary
/// <param name="filePath"filePath是文件的完整路径 </param
/// <returns返回true或false</returns
private bool IsPicture(string filePath){try{FileStream fs = new FileStream(filePath, FileMode.Open, FileAccess.Read);
BinaryReader reader = new BinaryReader(fs);
string fileClass;
byte buffer;
buffer = reader.ReadByte();
fileClass = buffer.ToString();
buffer = reader.ReadByte();
fileClass += buffer.ToString();
reader.Close();
fs.Close();
//255216是jpg;7173是gif;6677是BMP,13780是PNG;7790是exe,8297是rar{return true;}else{return false;}}catch{return false;}}据说方法二针对常规修改的木马有效,也就是直接修改扩展名的,比如把.asp改成.jpg这种。但是对于那种用工具生成的jpg木马没有效果。推荐大家用第一种好了。

10、.net 如何防止上传图片木马

可以防止,第一种就是用文件头的方式验证,代码如下:
private bool IsAllowedExtension(HttpPostedFile hifile)
{
bool result = false;
FileStream strFile = new FileStream(hifile.FileName, System.IO.FileMode.Open, System.IO.FileAccess.Read);
BinaryReader bReader = new BinaryReader(strFile);
string fileclass = "";
byte buffer;
try
{
buffer = bReader.ReadByte();
fileclass = buffer.ToString();
buffer = bReader.ReadByte();
fileclass += buffer.ToString();
}
catch
{
return false;
}
bReader.Close();
strFile.Close();
/*文件扩展名说明
*4946/104116 txt
*7173 gif
*255216 jpg
*13780 png
*6677 bmp
*239187 txt,aspx,asp,sql
*208207 xls.doc.ppt
*6063 xml
*6033 htm,html
*4742 js
*8075 xlsx,zip,pptx,mmap,zip
*8297 rar
*01 accdb,mdb
*/
//纯图片
String[] fileType = {
"7173", //gif
"255216", //jpg
"13780" //png
};

for (int i = 0; i < fileType.Length; i++)
{
if (fileclass == fileType[i])
{
result = true;
break;
}
}
Response.Write(fileclass);
return result;
}

protected void btnOk_Click(object sender, EventArgs e)
{
if (IsAllowedExtension(uFile.PostedFile))
{
Response.Write("<script>alert('OK')</script>");
}
}
第二种用文件流的方式验证
/// <summary>
/// 验证流
/// </summary>
/// <param name="UpFile">上传控件(HttpPostedFile 或 HtmlInputFile)</param>
/// <param name="_extensions">扩展名(数组)</param>
/// <param name="SavePath">保存路径(绝对路径)</param>
/// <param name="size">文件大小单位(KB)</param>
/// <param name="err">错误信息</param>
/// <param name="SourcePage">源页面</param>
/// <returns>返回新文件名</returns>
public static string UpLoadFileImg(HtmlInputFile UpFile, string[] _extensions, string SavePath, int size,
out string err, System.Web.UI.Page SourcePage)
{
//锁定页面
SourcePage.Application.Lock();
string error = String.Empty;//错误信息
string Img = UpFile.PostedFile.FileName.Trim();//获取文件名
string Exten = Path.GetExtension(UpFile.PostedFile.FileName).ToLower();//获取文件的扩展名
bool IsExtension = false;//是否存在该扩展名
string FileType = UpFile.PostedFile.ContentType.ToLower();//获取文件的类型

if (Img != "")
{
//判断图片扩展名和类型验证
for (int i = 0; i < _extensions.Length; i++)
{
if (Exten == _extensions[i].ToString())
{
IsExtension = true;
break;
}
}
if (!IsExtension && (FileType != "image/gif" || FileType != "image/x-png" || FileType != "image/pjpeg"
|| FileType != "image/bmp"))
{
error = "对不起,您不能上传该类型的文件!";
err = error;
return Img;
}
if (UpFile.PostedFile.ContentLength > (size * 1024))
{
error = "对不起,文件大小不能大于" + size + "KB!";
err = error;
return Img;
}
try
{
Img = DateTime.Now.Ticks + Exten;//重新给文件命名
//上传文件
UpFile.PostedFile.SaveAs(SavePath + Img);

//最后一步高级验证,图片上传后的操作,判断是否存在危险
StreamReader sr = new StreamReader(SavePath + Img, Encoding.Default);
string strContent = sr.ReadToEnd();
sr.Close();
string str = "request|.getfolder|.createfolder|.deletefolder|.createdirectory|.deletedirectory|.saveas";
str+="|wscript.shell|script.encode|server.|.createobject|execute|activexobject|language=";
foreach (string s in str.Split('|'))
{
if (strContent.IndexOf(s) != -1)
{
File.Delete(SavePath + Img);
error = "对不起,该文件内容存在风险,禁止上传!";
err = error;
return Img;
}
}
}
catch
{
error = "系统错误,上传失败!";
}
}
else
error = "对不起,请选择要上传的文件!";

//取消锁定页面
SourcePage.Application.UnLock();
err = error;
return Img;
}

与帝国cms防止图片木马上传相关的知识