当前位置: 首页 > wzjs >正文

邯郸网站设计怎么用百度搜索网页版

邯郸网站设计怎么用,百度搜索网页版,做全景效果图的网站,今日特大军事新闻未经许可,不得转载。 文章目录 漏洞代码防范措施 文件写入功能不同于上文的文件下载、读取、删除功能。 漏洞代码 String filename request.getParameter("filename"); // 获取文件名 String content request.getParameter("content"); …

未经许可,不得转载。

文章目录

    • 漏洞代码
    • 防范措施

在这里插入图片描述

文件写入功能不同于上文的文件下载、读取、删除功能。

漏洞代码

String filename = request.getParameter("filename");  // 获取文件名
String content = request.getParameter("content");   // 获取文件内容File file = new File(filename);  // 创建文件对象
try (FileWriter writer = new FileWriter(file)) {writer.write(content);  // 写入文件内容response.getWriter().println("文件写入成功");
} catch (IOException e) {response.getWriter().println("文件写入失败");
}

漏洞分析:
1、如果文件内容被直接写入 HTML 文件且未进行转义,攻击者可以注入恶意脚本(如 <script>alert('XSS')</script>),导致 XSS 攻击。
2、如果文件名未经过滤,攻击者可以通过构造恶意路径(如 ../../etc/passwd)覆盖系统文件。
3、如果文件内容未经过滤,攻击者可以写入恶意代码(如 JSP 脚本、SQL 语句等),导致服务器被攻击。

防范措施

1、对文件内容进行 HTML 编码

import org.apache.commons.text.StringEscapeUtils;String content = request.getParameter("content");  // 获取文件内容
content = StringEscapeUtils.escapeHtml4(content);  // 对内容进行 HTML 编码try (FileWriter writer = new FileWriter(file)) {writer.write(content);  // 写入编码后的内容
} catch (IOException e) {e.printStackTrace();
}

2、对文件名进行过滤

String filename = request.getParameter("filename");  // 获取文件名// 过滤非法字符(如 ../、<、> 等)
if (filename.contains("..") || filename.contains("<") || filename.contains(">")) {throw new SecurityException("非法文件名");
}// 限制文件后缀
Set<String> allowedExtensions = new HashSet<>(Arrays.asList("txt", "log", "csv"));
String fileExtension = filename.substring(filename.lastIndexOf(".") + 1).toLowerCase();
if (!allowedExtensions.contains(fileExtension)) {throw new SecurityException("非法文件类型");
}File file = new File("/safe/directory/", filename);  // 将文件限制在安全目录中

3、对写入内容做黑名单过滤

List<String> blackContents = Arrays.asList("<%@page", "<%!", "<?php", "SELECT", "INSERT", "DELETE");String content = request.getParameter("content");  // 获取文件内容// 检查是否包含黑名单内容
for (String blackContent : blackContents) {if (content.contains(blackContent)) {throw new SecurityException("非法文件内容");}
}try (FileWriter writer = new FileWriter(file)) {writer.write(content);  // 写入过滤后的内容
} catch (IOException e) {e.printStackTrace();
}

4、限制文件写入目录
将文件写入操作限制在特定的安全目录中,防止攻击者通过路径遍历覆盖系统文件。

String basePath = "/safe/directory/";  // 安全目录
String filename = request.getParameter("filename");  // 获取文件名File file = new File(basePath, filename);  // 将文件限制在安全目录中
if (!file.getCanonicalPath().startsWith(new File(basePath).getCanonicalPath())) {throw new SecurityException("非法文件路径");
}
http://www.dtcms.com/wzjs/477678.html

相关文章:

  • 中国建设银行网站首页公司机构刷关键词排名
  • 广西玉林疫情最新消息seo如何进行优化
  • 前端怎么做电商网站网站怎么优化推荐
  • 苏州企业网站设计方案八宿县网站seo优化排名
  • 怎么制作网站模版seo排名点击
  • 自已建外贸网站关键词分布中对seo有危害的
  • 广告设计专业认知报告优化网站排名茂名厂商
  • 网页怎么做网站地图seo网站快速整站优化技术
  • 网站建设需求量大网络优化器下载
  • 杭州网站建设费用商丘seo博客
  • dedecms购物网站模板下载前端seo优化
  • 响应式手机网站怎么做中山seo排名
  • 济南做网站公司有哪些抖音推广合作方式
  • 手机网站模版整合营销传播最基础的形式是
  • 关于网站建设的新闻杭州企业seo
  • 弧度网站建设湖南专业seo推广
  • 推荐常州网站建设快手秒赞秒评网站推广
  • 微信营销的方式有哪些东莞百度seo排名
  • 专做洗衣柜的网站免费建网站哪家好
  • 用个人电脑做网站的步骤线上推广策划方案范文
  • 网站长尾词挖掘佛山seo技术
  • 深圳松岗网站建设广州优化疫情防控措施
  • 阜新网站建设单位上海全网营销推广
  • 赚钱做任务的网站员工培训
  • 网站建设文化代理商人工智能培训机构排名
  • 网站的内容策略seo薪酬
  • 转 如何用java做网站百度指数查询官方下载
  • 商务网站的特点关键词com
  • 专注于上海seo做网站建设网络优化培训
  • 做网站app需要懂些什么软件营销推广有哪些形式