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

政协网站建设方案建筑行业网站开发

政协网站建设方案,建筑行业网站开发,网站建设情况的汇报,网站优化标题不超过多少个字符前言#xff1a; 堕落了三个月#xff0c;现在因为被找实习而困扰#xff0c;着实自己能力不足#xff0c;从今天开始 每天沉淀一点点 #xff0c;准备秋招 加油 注意#xff1a; 本文章参考qax的网络安全java代码审计#xff0c;记录自己的学习过程#xff0c;还希望各…前言 堕落了三个月现在因为被找实习而困扰着实自己能力不足从今天开始 每天沉淀一点点 准备秋招 加油 注意 本文章参考qax的网络安全java代码审计记录自己的学习过程还希望各位博主 师傅 大佬 勿喷还希望大家指出错误 SSRF漏洞  SSRF(Server-side Request Forge, 服务端请求伪造)。 由攻击者构造的攻击链接传给服务端执行造成的漏洞一般用来在外网探测或攻击内网服务。 危害 1.获取内网主机、端口、banner信息 2.对内网的应用程序 进行攻击例如Redis、jboos 3.file等伪协议读取文件 4.造成内网程序的溢出 SSRF审计函数  SSRF漏洞一般位于远程图片加载与下载、图片或文章收藏功能、URL分享、通过URL在线翻译、转码等功能点处。当然SSRF是由发起网络请求的方法造成。代码审计时需要关注的发起HTTP请求的类及函数部分如下 HttpURLConnection. getInputStream URLConnection. getInputStream Request.Get. execute Request.Post. execute URL.openStream ImageIO.read OkHttpClient.newCall.execute HttpClients. execute HttpClient.execute …… Java里面SSRF支持的协议 https,https,file,ftp等  所以使得JAVA并不能像PHP中一样使用gopher 协议来拓展攻击面gopher 协议在jdk8 中就被移除了 gopher协议在SSRF中使用可以看下面这篇文章 gopher 协议在SSRF 中的一些利用 我们直接进入Webgoat的靶场进行测试 点击第二关得到 根据提示我们输入 jerry 这时候就说明 传入的参数可控产生了SSRF漏洞 我们看一下源代码 RestController AssignmentHints({ssrf.hint1, ssrf.hint2}) public class SSRFTask1 extends AssignmentEndpoint {PostMapping(/SSRF/task1)ResponseBodypublic AttackResult completed(RequestParam String url) {return stealTheCheese(url);}protected AttackResult stealTheCheese(String url) {try {StringBuilder html new StringBuilder();if (url.matches(images/tom\\.png)) {html.append(img class\image\ alt\Tom\ src\images/tom.png\ width\25%\ height\25%\);return failed(this).feedback(ssrf.tom).output(html.toString()).build();} else if (url.matches(images/jerry\\.png)) {html.append(img class\image\ alt\Jerry\ src\images/jerry.png\ width\25%\ height\25%\);return success(this).feedback(ssrf.success).output(html.toString()).build();} else {html.append(img class\image\ alt\Silly Cat\ src\images/cat.jpg\);return failed(this).feedback(ssrf.failure).output(html.toString()).build();}} catch (Exception e) {e.printStackTrace();return failed(this).output(e.getMessage()).build();}} } 主要看下面几行代码 public AttackResult completed(RequestParam String url) {return stealTheCheese(url);} // completed() 方法使用 PostMapping 注解标记表示它处理HTTP POST请求并且映射到路径 /SSRF/task1。该方法接受一个名为 url 的请求参数类型为字符串。 意思就是接受url的参数 并映射到到路径 /SSRF/task1 然后看下一句 protected AttackResult stealTheCheese(String url) {try {StringBuilder html new StringBuilder(); //stealTheCheese() 方法是一个受保护的方法用于处理传入的URL并返回相应的结果。它接受一个名为 url 的字符串参数。方法逻辑stealTheCheese() 方法首先创建了一个 StringBuilder 对象 html用于构建HTML响应。 就是很明显没有对这个url进行过滤处理等然后 就直接进入下面的url匹配 这段代码是一个简单的SSRF攻击任务处理器。它接受一个URL作为输入并根据URL的不同返回不同的HTML响应。然而代码中存在一些潜在的安全风险因为它没有对传入的URL进行充分的验证和过滤可能导致安全漏洞如SSRF攻击。 我们接着看下一关 我们先点击看看会是啥样 我们还是根据提示进行输入 urlhttp://ifconfig.pro 验证成功 说明url参数可控可以通过恶意语句进行对内网主机信息的获取  我们分析源代码 RestController AssignmentHints({ssrf.hint3}) public class SSRFTask2 extends AssignmentEndpoint {PostMapping(/SSRF/task2)ResponseBodypublic AttackResult completed(RequestParam String url) {return furBall(url);}protected AttackResult furBall(String url) {if (url.matches(http://ifconfig\\.pro)) {String html;try (InputStream in new URL(url).openStream()) {html new String(in.readAllBytes(), StandardCharsets.UTF_8).replaceAll(\n, br); // Otherwise the \n gets escaped in the response} catch (MalformedURLException e) {return getFailedResult(e.getMessage());} catch (IOException e) {// in case the external site is down, the test and lesson should still be okhtml htmlbodyAlthough the http://ifconfig.pro site is down, you still managed to solve this exercise the right way!/body/html;}return success(this).feedback(ssrf.success).output(html).build();}var html img class\image\ alt\image post\ src\images/cat.jpg\;return getFailedResult(html);}private AttackResult getFailedResult(String errorMsg) {return failed(this).feedback(ssrf.failure).output(errorMsg).build();} } 咱们主要关注下面两行代码 public AttackResult completed(RequestParam String url) {return furBall(url);}completed() 方法使用 PostMapping 注解标记表示它处理HTTP POST请求并且映射到路径 /SSRF/task2。该方法接受一个名为 url 的请求参数类型为字符串。protected AttackResult furBall(String url) {//furBall() 方法是一个受保护的方法用于处理传入的URL并返回相应的结果。它接受一个名为 url 的字符串参数。 下面就是常规的正则匹配总体而言这段代码是另一个简单的SSRF攻击任务处理器。它接受一个URL作为输入并尝试访问该URL获取HTML内容并根据结果返回相应的响应。如果访问成功则返回包含HTML内容的成功响应如果访问失败则返回一个包含特定错误消息的失败响应。 具体的JAVA中 SSRF漏洞可以访问 https://www.freebuf.com/vuls/293473.html SSRF修复  1,过滤返回信息验证远程服务器对请求的响应是比较容易的方法。如果web应用是去获取某一种类型的文件。那么在把返回结果展示给用户之前先验证返回的信息是否符合标准。 2, 统一错误信息避免用户可以根据错误信息来判断远端服务器的端口状态。 3,限制请求的端口为http常用的端口比如80,443,8080,8090。 4,黑名单内网ip正确判断内网IP正确获取host 5,禁用不需要的协议。仅仅允许http和https请求。可以防止类似于file:///,gopher://,ftp:// 等引起的问题。 6.正确处理302跳转
http://www.hkea.cn/news/14366458/

相关文章:

  • 无锡营销型网站建设公共网络建设指导书
  • 网站开发方式有汕头百姓网二手车交易市场
  • 厦门网站外包敦化市住房和城乡建设局网站
  • 买了云服务器怎么做网站网站开发建设兼职
  • 英文网站建设运营企业网站建设报价单
  • 做网站的哪里好网站后端架构如何做
  • 用vue做网站一般用什么组件库深圳微信网站公司
  • 温州免费建站网站备案编号查询
  • 网站模板 单页做微商必会的软件网站
  • 抄袭网站后台会侵权吗外包做网站需要多少钱
  • 咪豆建站建立官网需要多少钱
  • 网站模板 jsp做网站的销售团队
  • 宿迁专业网站建设公司网站建设潮州
  • 游戏网站建设论文如何将域名和网站绑定
  • 网站界面友好免费微信小程序商城官网
  • 怎么买域名建网站九台网络推广
  • 网站空格 教程网站建设功能图
  • 一些房产网站是怎么做的江干区网站建设
  • 网站建设与管理提纲建设网站有哪些方法
  • 网站服务器维护技术WordPress干什么的
  • php完整电商网站开发源码网站建设需要的职位
  • 易语言编程可以做网站么阿里+wordpress
  • 营销型网站建设申请域名时公司类型的域名后缀一般是网站 建设网站
  • 上海好的高端网站建北京十大教育培训机构排名
  • 网站建设与网页设计可行性分析报告梅县区住房和城乡规划建设局网站
  • 建立网站定制招聘网页制作软件
  • 建设茶网站目的wordpress如何配置文件
  • flash网站开发教程跨境电商营销
  • 网站开发 验收周期美容美发网站源码
  • 个人备案网站百度收录网站建设需准备什么