文件上传

selenium 文件上传

房东的猫 提交于 2020-02-12 11:45:23
一般分两个场景:一种是input标签,这种可以用selenium提供的send_keys()方法轻松解决; 另外一种非input标签实现起来比较困难,可以借助autoit工具或者SendKeys第三方库。 本篇以博客园的上传图片为案例,通过send_keys()方法解决文件上传问题 一、识别上传按钮 1.点开博客园编辑器里的图片上传按钮,弹出”上传本地图片”框。 2.用firebug查看按钮属性,这种上传图片按钮有个很明显的标识,它是一个input标签,并且type属性的值为file。 只要找到这两个标识,我们就可以直接用send_keys()方法上传文件了。 1 from selenium import webdriver 2 import time 3 profile_directory = r'C:\Users\ct-wyl\AppData\Roaming\Mozilla\Firefox\Profiles\lt6n8ynh.default' 4 profile = webdriver.FirefoxProfile(profile_directory) 5 driver = webdriver.Firefox(profile) 6 driver.get('https://www.cnblogs.com/FlyToDream') 7 time .sleep(2) 8 driver

Struts2文件上传下载

泄露秘密 提交于 2020-02-12 04:28:16
Struts2文件上传   Struts2提供 FileUpload拦截器,用于解析 multipart/form-data 编码格式请求,解析上传文件的内容,fileUpload拦截器 默认在defaultStack栈中, 默认会执行的   页面:<input type="file" name="upload" />   在Action需要对上传文件内容进行接收 : private File upload; // <input type="file" name="upload" />这里变量名 和 页面表单元素 name 属性一致 private String uploadContentType;//格式 :上传表单项name属性 + ContentType 、 上传表单项name属性 + FileName private String uploadFileName; public void setUpload(File upload) {//为三个对象 提供 setter 方法   this.upload = upload; } public void setUploadContentType(String uploadContentType) {   this.uploadContentType = uploadContentType; } public void

CTF-文件上传

喜欢而已 提交于 2020-02-11 18:23:49
CTF-文件上传 写在前面: 文件上传漏洞常用于获取 webshell ,从而取得对目标网站(系统)的控制权。要获取 shell ,需要: 1.知道上传后文件所保存位置(不知道那就猜、爆破) 2.上传后文件的名字(是否被更改) 00一句话木马 <?php eval($_POST['password']);?> 一句话木马原理及不同类型: https://baike.baidu.com/item/%E4%B8%80%E5%8F%A5%E8%AF%9D%E6%9C%A8%E9%A9%AC/1845646?fr=aladdin 在文章后续会根据例子提供一句话木马的变式 01 毫无过滤 直接上传即可获取 webshell 02 前端过滤 2.1绕过js过滤 例: function checkFile() { var file = document.getElementsByName('upload_file')[0].value; if (file == null || file == "") { alert("请选择要上传的文件!"); return false; } //定义允许上传的文件类型 var allow_ext = ".jpg|.png|.gif"; //提取上传文件的类型 var ext_name = file.substring(file.lastIndexOf(".")

commons-fileupload实现文件上传

五迷三道 提交于 2020-02-10 20:33:09
版权声明:本文为 小异常 原创文章,非商用自由转载-保持署名-注明出处,谢谢! 本文网址: https://blog.csdn.net/sun8112133/article/details/79968573   文件上传在 WEB 开发中应用的十分广泛,是我们每个 web 开发者应知应会的技术!本篇以实例讲解如何使用 commons-fileupload 工具包实现文件上传,并带你领略 commons-fileupload 中神奇的一幕!     简单说一下什么是 文件上传 ?所谓文件上传就是将我们本地的资源文件通过网络传输发送到服务器上。    文件上传 的原理其实是IO流实现的,通过二进制流的方式向服务器传输数据,服务器再通过流读取到数据,然后解析成文件,最终保存到服务器上。    commons-fileupload 工具包主要是我们用来操作文件上传的小助手,里面封装了对流操作的全过程,大大简化了我们实现文件上传的代码复杂度,只需合理的运用类中的方法就可以达到文件上传的效果。   下面我们通过一个简单的图片上传小例子带大家走进 commons-fileupload 世界,领略这个小助手给我们带来的神奇效果。       点击这里获取 commons-fileupload源码和jar包。   图片上传小实例三步走:     一、热身环节     二、精彩展示     三

DVWA-文件上传 File Upload

不打扰是莪最后的温柔 提交于 2020-02-10 19:47:06
File Upload File Upload,即文件上传漏洞,通常是由于对上传文件的类型、内容没有进行严格的过滤、检查,使得攻击者可以通过上传木马获取服务器的webshell权限,因此文件上传漏洞带来的危害常常是毁灭性的,Apache、Tomcat、Nginx等都曝出过文件上传漏洞。 LOW: 代码: <?php if( isset( $_POST[ 'Upload' ] ) ) { // Where are we going to be writing to? $target_path = DVWA_WEB_PAGE_TO_ROOT . "hackable/uploads/"; $target_path .= basename( $_FILES[ 'uploaded' ][ 'name' ] ); // Can we move the file to the upload folder? if( !move_uploaded_file( $_FILES[ 'uploaded' ][ 'tmp_name' ], $target_path ) ) { // No echo '<pre>Your image was not uploaded.</pre>'; } else { // Yes! echo "<pre>{$target_path} succesfully uploaded

SpringMVC文件上传实现

a 夏天 提交于 2020-02-08 18:25:36
文件上传的必要前提: 1.form表单的enctype取值必须是:multipart/form-data(默认值是:application/x-www-form-urlencoded) enctype:是表单请求正文的类型 2.method属性取值必须是Post 3.提供一个文件选择域 借助第三方组件实现: 需要导入的jar包: <dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.3.1</version> </dependency> <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>2.4</version> </dependency> 主要的jsp页面 <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>Title</title> </head> <body> <h3>传统方式文件上传</h3> <form action="user/fileUpload" method=

SpringMVC文件上传和下载

倖福魔咒の 提交于 2020-02-07 03:58:55
SpringMVC文件下载 一、 .访问资源时响应头如果没有设置Content-Disposition,浏览器默认安装inline进行处理 能显示就显示,不能就下载 二、 只需修改响应头Context—Disposition="attachment;filename=文件名" attachment以附件形式下载 filename=文件名,就是下载时显示的文件名 三、 .实现步骤 1、导入Apache 两个jar包 2、‘jsp中添加超链接,设置要下载的文件 <a href="download?fileName=a.txt">下载</a> 3、springMVC中放行静态资源files文件夹 4、编写控制器方法 1 //** 文件下载 2 @RequestMapping("download") 3 public void download(String fileName,HttpServletRequest req, HttpServletResponse res) throws IOException { 4 //PrintWriter out =res.getWriter();输出字符流 5 //输出二进制字节流 6 //res.setContentType(); 7 res.setHeader("Content-Disposition","attament;filename="

使用SpringMVC实现文件上传和下载

会有一股神秘感。 提交于 2020-02-07 02:59:25
    文件上传      第一步,加入jar包:     commons-fileupload-1.3.1.jar     commons-io-2.4.jar   第二步,在SpringMVC配置文件中配置CommonsMultipartResovler   <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> <property name="defaultEncoding" value="utf-8"></property>      //最大上传文件大小 <property name="maxUploadSize" value="1048576"></property> </bean>   第三步,前端表单 注意 【 POST请求,file类型,enctype="multipart/form-data" 】   <form action="${pageContext.request.contextPath }/testUpload" method="post" enctype="multipart/form-data"> File:<input type="file" name="file"><br> desc:

Ajax_iframe文件上传

ぐ巨炮叔叔 提交于 2020-02-06 16:27:30
Ajax_iframe文件上传 2015-02-01 12:00 js 无法实现 文件的上传几种伪装 iframe伪装,jquery.uploaded-file swf插件 html5 前两种只是一种模拟无刷新的效果 第一种:Iframe实现文件上传 IframeFileUp.php: <?php if ( empty ( $_FILES )){ exit ( 'no file' ); } $error = $_FILES [ 'pic' ][ 'error' ] == 0 ? ' 文件上传成功 ' : ' 文件上传失败 ' ; // 上传成功 echo "<script>parent.document.getElementsByTagName('h2')[0].innerHTML = ' $error '</script>" ; ?> IframeFileUp.html: <html> <head> <title> iframe 文件上传 </title> <script type = "text/javascript" src = "./jquery.min.js" ></script> <script type = "text/javascript" > /* 分析: 1. 捕捉表单提交的动作 2. 创建一个 iframe 3 。把表单的 target 指向该 iframe

PHP文件上传

情到浓时终转凉″ 提交于 2020-02-06 14:36:36
本篇博客的行文思路 1. 分析文件上传的需求 2.实现基本的文件上传 3.封装文件上传 4.知识点总结 一、文件上传的需求   1. 文件上传三要素 type=file method=post enctype=multipart/form-data  2. 文件上传的需求   # 判断是否是POST协议上传的   # 判断文件大小   # 判断文件类型   # 设置唯一文件名   # 设置存储目录 二、文件上传代码                       来源: https://www.cnblogs.com/ningCaiChen/p/12268322.html