首页 文章 精选 留言 我的

精选列表

搜索[渲染问题],共10000篇文章
优秀的个人博客,低调大师

媒体处理 MTS-截图问题

案例: 传入的截图时间无效,无论传多少值,都只截取视频的第一帧 排查: 如果选则是关键帧截图,需要看好关键帧的间隔设置,。可以参考下官网的 java 代码,测试是过是可以生成多张的。 package com.aliyun.mts; import java.io.UnsupportedEncodingException; import java.net.URLEncoder; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.aliyuncs.profile.DefaultProfile; import com.aliyuncs.DefaultAcsClient; import com.aliyuncs.IAcs

优秀的个人博客,低调大师

Java之关于JSTL引入问题

错误信息:Can not find the tag library descriptor for “http://java.sun.com/jstl/core”JSTL taglib需要jstl.jar来支持。在1.0和1.1版本的时候,还需要standard.jar来配合。但从1.2版本开始,jar文件名字变成了jstl-1.2.jar,也不再需要standard.jar了。另外,servlet 版本需要2.4以上。所以正确的做法是把jstl-1.2.jar放到WEB-INF/lib里面就可以了。或者通过maven来配置, <dependency> <groupId>jstl</groupId> <artifactId>jstl</artifactId> <version>1.2</version> </dependency> jstl版本低于1.2记得在maven依赖配置这个 不过一般情况都会使用高版本的jst <groupId>taglibs</groupId> <artifactId>standard</artifactId> <version>1.1.2</version> 在用到jstl的页面上增加下面一段话。 <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>

优秀的个人博客,低调大师

PHP mail()可能导致的问题

参考文献:https://xz.aliyun.com/t/2501 题目网址:https://www.ripstech.com/php-security-calendar-2017/ 环境: php version < 5.2.0 phpmailer < 5.2.18 php 没有安装 pcre(no default) safe_mode = false(default) 题目 class Mailer { private function sanitize($email) { if (!filter_var($email, FILTER_VALIDATE_EMAIL)) { return ''; } return escapeshellarg($email); } public function send($data) { if (!isset($data['to'])) { $data['to'] = 'none@ripstech.com'; } else { $data['to'] = $this->sanitize($data['to']); } if (!isset($data['from'])) { $data['from'] = 'none@ripstech.com'; } else { $data['from'] = $this->sanitize($data['from']); } if (!isset($data['subject'])) { $data['subject'] = 'No Subject'; } if (!isset($data['message'])) { $data['message'] = ''; } mail($data['to'], $data['subject'], $data['message'], '', "-f" . $data['from']); } } $mailer = new Mailer(); $mailer->send($_POST); ①mail()函数 整体来看此题目是发送邮件的,先看下mail()函数的用法 mail(to,subject,message,headers,parameters) to 必需。规定邮件的接收者。 subject 必需。规定邮件的主题。该参数不能包含任何换行字符。 message 必需。规定要发送的消息。 headers 必需。规定额外的报头,比如 From, Cc 以及 Bcc。 parameters 必需。规定 sendmail 程序的额外参数。 ②filter_var()函数 filter_var($email, FILTER_VALIDATE_EMAIL)//邮件过滤器,确保在第5个参数中仅使用有效的电子邮件地址mail() filter_var(variable, filter, options)函数通过指定的过滤器过滤变量。如果成功,则返回已过滤的数据,如果失败,则返回 false variable 必需。规定要过滤的变量。 filter 可选。规定要使用的过滤器的 ID。 options 规定包含标志/选项的数组。检查每个过滤器可能的标志和选项。 此函数在双引号中嵌套转义空格仍然能够通过检测。同时由于底层正则表达式的原因,通过重叠单引号和双引号,欺骗 filter_var(),这样就可以绕过检测。 一个简单的例子: <?php var_dump(filter_var('\'is."\'\ not\ allowed"@123.com',FILTER_VALIDATE_EMAIL)); var_dump(filter_var('"is.\ not\ allowed"@123.com',FILTER_VALIDATE_EMAIL)); var_dump(filter_var('"is.""\ not\ allowed"@123.com',FILTER_VALIDATE_EMAIL)); ?> 1.png ③escapeshellcmd()函数 引入的特殊符号,虽然绕过了filter_var()的检测,但PHP的mail()在底层调用了 escapeshellcmd() ,对用户输入的邮箱地址进行检测,即使存在特殊符号,也会被 escapeshellcmd()处理转义,这样就没办法达到命令执行的目的了。 但还调用了escapeshellarg()//把字符串转码为可以在 shell 命令里使用的参数,此函数将给字符串增加一个单引号并且能引用或者转码任何已经存在的单引号,确保能够直接将一个字符串传入 shell 函数(含 exec(),system(),反引号) 一个例子 <?php $a="127.0.0.1' -v -d a=1"; $b=escapeshellarg($a); $c=escapeshellcmd($b); $cmd="curl ".$c; var_dump($b)."\n"; var_dump($c)."\n"; var_dump($cmd)."\n"; system($cmd); ?> 传入的参数是127.0.0.1' -v -d a=1 escapeshellarg()先对单引号转义,再用单引号将左右两部分括起来从而起到连接的作用。处理之后为:'127.0.0.1'\'' -v -d a=1' 接着escapeshellcmd()对第二步处理后字符串中的 \以及 a=1'中的单引号进行转义处理,结果为:'127.0.0.1'\\'' -v -d a=1\' 第三步处理之后的payload中的\\被解释成了\而不再是转义字符,所以单引号配对连接之后将payload分割为三个部分:'127.0.0.1'\ \'' -v -da=1\' 所以这个payload可以简化为curl 127.0.0.1\ -v -d a=1',即向 127.0.0.1\发起请求,POST 数据为 a=1' 。 根据此漏洞有两个实例: CVE-2016-10033payload:a( -OQueueDirectory=/tmp -X/var/www/html/x.php )@a.com然后通过 linux 自身的 sendmail 写log的方式,把log写到web根目录下。将日志文件后缀定义为 .php ,即可成功写入webshell。 CVE-2016-10045payload: a'( -OQueueDirectory=/tmp -X/var/www/html/x.php )@a.com

资源下载

更多资源
Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册