近期在项目中常常接触ActiveX控件,对于这个名词相信仅仅要是上网看视频的用户一定都会遇到adobe更新或者载入的提示,这就是一个ActiveX控件。一直以为Active控件是处理复杂的页面逻辑提供视频动画展现的和本地环境没有交互的;这两天通过一个简单地<input type="file"/>加深了对他的认识,更加深刻的认识到了他的巨大作用的同一时候无时无刻不感觉到一把达摩克勒斯剑悬在了头上。

起因:

项目中须要在原有的表单中实现一个图片上传功能B。挺简单的逻辑,可是因为原有的页面也有选择文件上传的buttonA,A是调用还有一个第三方控件选择图片。然后在线预览选中的图片可是此控件并不会上传选中的图片,因为不可能让用户选择两次图片,因此须要增加功能B在用户调用A功能的时候就把图片上传上去,第一个想法尝试使用jquery将<input
type="file" id="imgPath"> 中的value进行动态赋值。用户调用A的时候就将图片上传,多次尝试后发现这样的方法是无法给input 域赋值的。原因是这个类型是仅仅读的,不能赋值,即使给他value设置值也是无效的。

原因能够试想一下,假设这个域能够赋值。那么我能够任意赋值一个路径。将用户的数据在未经用户允许的情况下直接上传,多么可怕。难道就没有一个赋值一个路径在未经用户许可的情况下就上传到的方法么?答案是有的,能够通过ActiveX插件,此处以某公司的XX签章产品中的一个功能为例:

var path="D://那个谁.jpg";

obj.putFiles(path,"艳照");

简简单单两句话就能悄悄的将电脑的文件上传到server了。试想假设有人刻意将你引诱到某个网页,提示你要载入一个控件,然后让你看半小时的电影,他就能够在后台循环遍历你的电脑 C、D、E各种盘找到敏感的文件进行上传,是不是非常恐怖。

为了防止这样的情况的发生。浏览器本身有非常多限制AxtiveX控件执行的方法,最简单的就是在Internet选项中设置是否启用等信息。更为安全的方法是将须要使用控件的可信站点增加可信站点里面,对于不明白来源的控件不要安装。

ActiveX 暴漏你全部信息的可怕的插件!的更多相关文章

  1. Android内存管理(5)*官方教程:Logcat内存日志各字段含义,查看当前内存快照,跟踪记录内存分配,用adb查看内存情况时各行列的含义,捕获内存快照的3种方法,如何让程序暴漏内存泄漏的方法

    Investigating Your RAM Usage In this document Interpreting Log Messages                 内存分析日志中各消息的含 ...

  2. [k8s]如何处理dockerfile无expose情况下在k8s里暴漏访问

    做镜像时候忘记expose端口了, 或者要做一个通用的镜像, expose端口不固定, 又要在k8s环境里跑并暴漏服务访问,怎么破? 实际上: yaml的 ports: - containerPort ...

  3. Android端生成META-INF信息文件的Gradle插件 RapidMetaInfPlugin

    来源博客:Wang Jie's Blog 本文链接:<http://blog.wangjiegulu.com/2018/02/05/Android端生成META-INF信息文件的Gradle插件 ...

  4. Yii2:避免文件路径暴漏,代理访问文件

    制作背景:公司要做第三方文件管理系统,客户有时候需要直接访问文件,但是我们又不想暴露文件路径,才有这代理访问 基本功能介绍:读取txt文档.读取图片,如果有需要,可以通过插件读取doc.pdf文档, ...

  5. 内网穿透+VS2015自带IIS express实现本地调试(微信等需要将开发环境暴漏到外网的情况使用)

    今天一个兼职结束了,又要开始寻找新的兼职公司了 ,为了贴补家用啊,为了给儿子更好的生活加油! 抒情完毕进入正题,本篇文章要解决的问题是其实在开发微信支付,微信公众号等回调地址必须是外网可访问的80端口 ...

  6. WorldWind源码剖析系列:插件类Plugin、插件信息类PluginInfo和插件编译器类PluginCompiler

    插件类Plugin是所有由插件编译器加载的插件子类的抽象父类,提供对插件的轻量级的访问控制功能. 插件信息类PluginInfo用来存储关于某个插件的信息的类,可以理解为对插件类Plugin类的进一步 ...

  7. Sublime Text 自动生成文件头部注释(版权信息):FileHeader 插件的使用

    (一)安装步骤 1.先安装一个 Package Control 插件.相信大家使用 Sublime 的话都有安装这个了2.Preference -> Package Control -> ...

  8. Cross-Origin跨域问题

    为什么会跨域,要先了解浏览器的同源策略SOP(Same Orign Policy)  https://segmentfault.com/a/1190000015597029 同源: 如果两个页面的协议 ...

  9. Nginx隐藏主机信息,proxy_hide_header 与fastcgi_hide_header

    Nginx中proxy_hide_header 与fastcgi_hide_header都可以隐藏主机头信息,两者在具体使用时还是有着一定的区别的.刚好业务使用的nginx反向代理在显示响应头时将后端 ...

随机推荐

  1. Introduction to the Build Lifecycle

    Introduction to the Build Lifecycle Table Of Contents Build Lifecycle Basics Setting Up Your Project ...

  2. (SQL SERVER) (ORACLE) (ACCESS)(POSTGRE SQL)四种数据库操作C#代码

    将对这四种数据库的操作封装到了2个类中可以拷贝过去直接使用. public sealed class OleDbClass { #region private utility methods & ...

  3. Javascript面向对象研究心得

    这段时间正好公司项目须要,须要改动fullcalendar日历插件,有机会深入插件源代码.正好利用这个机会,我也大致学习了下面JS的面向对象编程,感觉收获还是比較多的. 所以写了以下这篇文章希望跟大家 ...

  4. linux c setitimer使用方法说明

    在linux c编程中.setitimer是一个比較经常使用的函数.可用来实现延时和定时的功能,网上有各种零零散散的使用方法说明,都仅仅提到了个别使用方法,今天抽出时间实践整理了一份比較具体的: 使用 ...

  5. delphi如何加上spliter分割条,任意调整大小

    如题1:如何把一个panel分割成四个小的panle 2:也就是如何加上spliter,分割条,任意调整大小 3.如何有独立的handle使用多个总共5个为什么呢,你放4个panel 然后放split ...

  6. perl $d = encode_utf8($r); $f = decode_json($d)

    [root@dr-mysql01 ~]# cat a1.pl my $url="http://192.168.32.101:3000/api/getcode?env=zj&phone ...

  7. HDU 1599 find the mincost route (无向图floyd最小环详解)

    转载请注明出处:http://blog.csdn.net/a1dark 分析:终于弄懂了floyd的原理.以前的理解一直肤浅.所以一做到floyd应用的题.就拙计了.其实floyd的本质DP.利用前K ...

  8. [Java][activiti]Activiti这个过程委托功能[getAssignee()与getOwner()差异]

    一.流程图: 二.流程定义文件: AssigneeUserAndGroup.bpmn 三.单元測试: ProcessTestDelegateTask.java 四.主要运行语句 // 签收 taskS ...

  9. 配置rhel 6.4(64位)安装使用syslog-ng 3.5

    我基本的博客地址是:www.cppblog.com/zdhsoft 相应的CentOS 6.x也就可能使用. 下载地址: 第一步:安装 wget http://www.balabit.com/down ...

  10. 零积分下载,2014年辛星mysql教程秋季版第一本已经完工,期待您的支持

    经过一段时间的不懈努力.终于,2014年辛星mysql教程秋季版的第一本,即夯实基础已经完工,在csdn的下载地址为:去下载地址 ,假设左边地址跪了,能够去http://download.csdn.n ...