zoukankan      html  css  js  c++  java
  • C#检测上传图片是否安全函数

    //添加引用System.Text;

    //添加引用System.IO;

    /// <summary>
                /// C#检测上传图片是否安全函数
                /// </summary>
                /// <param name="strPictureFilePath"></param>
                public void CheckPictureSafe(string strPictureFilePath)
                {
                    bool strReturn = true;
                    if (!File.Exists(strPictureFilePath))
                    {
                        StringBuilder str_Temp = new StringBuilder();
                        try
                        {
                            using (StreamReader sr = new StreamReader(strPictureFilePath))    //按文本文件方式读取图片内容
                            {
                                String line;
                                while ((line = sr.ReadLine()) != null)
                                {
                                    str_Temp.Append(line + ",");
                                }
                                //检测是否包含危险字符串
                                if (str_Temp == null)
                                {
                                    strReturn = false;
                                }
                                else
                                {
                                    str_Temp = str_Temp.Replace("'", "''");
                                    string DangerString = "script|iframe|.getfolder|.createfolder|.deletefolder|.createdirectory|.deletedirectory|.saveas|wscript.shell|script.encode|server.|.createobject|execute|activexobject|language=|include|filesystemobject|shell.application";
                                    string[] sArray = DangerString.Split('|');
                                    foreach (string i in sArray)
                                    {
                                        strReturn = true;
                                        break;
                                    }
                                }
                                sr.Close();
                            }
                            if (strReturn)
                            {
                                File.Delete(strPictureFilePath);
                            }
                        }
                        catch (Exception ex)
                        {
                            throw new Exception(ex.Message);
                        }
                    }
                }

  • 相关阅读:
    【SSM 8】spring集成Mybatis通用Mapper
    【SSM 7】Mybatis底层封装思路
    【SSM 7】Mybatis底层封装思路
    【SSM 6】Spring+SpringMVC+Mybatis框架搭建步骤
    【SSM 6】Spring+SpringMVC+Mybatis框架搭建步骤
    【SSM 5】Mybatis分页插件的使用
    【SSM 5】Mybatis分页插件的使用
    (2018干货系列十)最新android开发学习路线整合
    (2018干货系列九)最新软件测试学习路线整合
    (2018干货系列八)最新VR学习路线整合
  • 原文地址:https://www.cnblogs.com/xqf222/p/3306840.html
Copyright © 2011-2022 走看看