2017 年 9 月 25 日,百度在 GitHub 开源了移动端深度学习框架 mobile-deep-learning(MDL)的全部代码以及脚本,希望这个项目在社区的带动下能够更好地发展。
写在前面 深度学习技术已经在互联网的诸多方向产生影响,每天科技新闻中关于深度学习和神经网络的讨论越来越多。深度学习技术在近两年飞速发展,各种互联网产品都争相应用深度学习技术,产品对深度学习的引入也将进一步影响人们的生活。随着移动设备的广泛使用,在移动互联网产品应用深度学习和神经网络技术已经成为必然趋势。
与深度学习紧密联系在一起的图像技术同样在业界广泛应用。传统计算机视觉和深度学习的结合使图像技术得以快速发展。
GitHub 地址:https://github.com/baidu/mobile-deep-learning
移动端深度学习技术应用 百度应用案例
在移动端应用深度学习技术比较典型的就是 CNN(Convolutional Neural Network)技术,即常被人提起的卷积神经网络。mobile-deep-learning(MDL)是一个基于卷积神经网络实现的移动端框架。
MDL 在移动端主要有哪些应用场景呢?比较常见的如分辨出一张图片中的物体是什么,也就是 分类;或者识别出一张图片中的物体在哪、有多大,也就是 主体识别。
下面这个 App 叫拾相,可以在 Android 平台的应用宝中找到。它可以自动为用户将照片分类,对于拥有大量照片的用户来讲,这个功能很有吸引力。
另外,在手机百度搜索框右侧可以打开图像搜索,打开图像搜索后的界面效果如下图。当用户在通用垂直类别下开启自动拍开关(图中下方标注)时,手停稳它就会自动找到物体进行框选,并无需拍照直接发起图像搜索。整个过程可以给用户带来流畅的体验,无需用户手动拍照。图片中的框体应用的就是典型的深度学习主体识别技术,使用的就是 mobile-deep-learning(MDL)框架。MDL 目前在手机百度中稳定运行了多个版本,经过数次迭代后可靠性大幅提升。
业界其他案例
互联网行业在移动端应用神经网络的案例已经越来越多。
目前的流派主要有两种,其一是完全在客户端运行神经网络,这种方式的优点显而易见,那就是不需要经过网络,如果能保证运行速度,用户体验会非常流畅。如果能保证移动端高效运行神经网络,可以使用户感觉不到加载过程。使用完全脱离互联网网络在移动端运算神经网络的 App 已经举例,如前述拾相和手机百度中的图像搜索。
其二是另一种,运算神经网络过程依赖互联网网络,客户端只负责 UI 展示。在客户端神经网络落地之前,绝大部分 App 都使用了这种运算在服务端、展示在客户端的方式。这种方式的优点是实现相对容易,开发成本更低。
为了更好理解上述两种神经网络的实现方法,下面展示两个识别植物花卉的例子,分别用到了识花和形色两个 App。这两款 App 都使用了典型分类方法,都可以在 iOS 平台的 App Store 中找到。下图是一张莲花图片,这张图片使用识花和形色两个 App 分类都能得到较好的分类结果。你可以尝试安装这两款 App 并根据使用效果来判断它们分别使用了上述哪一种方法。
识花
近一年来涌现出很多花卉识别的 App。微软「识花」是微软亚洲研究院推出的一款用于识别花卉的 App,用户可以在拍摄后选择花卉,App 会给出该类花卉的相关信息。精准的花卉分类是其对外宣传的一大亮点。
形色
这款「形色」App,只需要对准植物 (花、草、树) 拍照,就能快速给出植物的名字,还有不少有趣的植物知识,如这个植物还有什么别名、植物的花语、相关古诗词、植物文化、趣味故事以及养护方法,看完收获不少。
移动端应用深度学习的难点 一直以来由于技术门槛和硬件条件的限制,在移动端应用深度学习的成功案例不多。传统移动端 UI 工程师在编写神经网络代码时,可以查阅到的移动端深度学习资料也很少。另一方面,时下的互联网竞争又颇为激烈,先入咸阳者王,可以率先将深度学习技术在移动端应用起来,就可以更早地把握时代先机。
移动端设备的运算能力相对 PC 端非常弱小。由于移动端的 CPU 要将功耗指标维持在很低的水平,制约了性能指标的提升。在 App 中做神经网络运算会使 CPU 运算量猛增。如何协调好用户功耗指标和性能指标就显得至关重要。
在早几年, 很多网站都用明文来存用户的密码, 结果被拖库了, 裤子脱了, 用户密码被泄漏, 然后就洗库、撞库, 黑产富得流油。 呵呵哒。
后来, 开发人员学学乖了, 传输和存储都不用密码的额明文, 而采用md5值, 这样似乎就解决了问题。 网站后台也不知道用户的密码。
可是, 有一种表, 叫彩虹表, 能根据md5的值反解密码, 于是, 开发人员又学乖了, 采用加盐方式, 让彩虹表几乎无法破解。 这里必须要用随机盐! 在如上方式下, 网站的开发人员也没有办法知道密码, good
但是呢? 有的网站想了另外一个方法: 传输的时候, 还是用明文密码, 不过用https进行传输, 然后在后台服务端仍然能获取用户的明文密码, 然后对这个密码进行哈希或者加密, 存储在数据库中。 我就问一句: 不怕内部人员泄密吗? 不怕内外勾结吗?
所以, 我还是那个观点:如果一个网站后台能有机会接触到用户的明文密码,那就是流氓行为!
不说了。
这次是做个测试,看看材质通用性
为了方便使用的是untiy 5.6 + shaderforge 1.38
下面是最后的效果(当然比起ue4里面还添加了一些,用的线性空间和deferred模式)
下面是ue4原本的
因为主要是法线上的效果,unity在法线和光照效果上还是差挺多的
连节点中还发现深度信息和ue4略有不同这个要注意
而且在测试中还发现了shaderforge的bug
当然depth相关节点最终连接到normal节点的话会报下面的错
Shader error in ‘Shader Forge/test’: undeclared identifier ‘partZ’ at line 106 (on d3d11)
但是只需要改源码,把partZ声明放在使用之前就可以了
下面是第一个版本的shaderforge节点
基本和ue4那个很像,需要注意的是某些节点虽然和ue4很像,但是略有不同
预览是错误,因为需要改源码,但每次改过后,shaderforge打开又会开回来
这个bug其实挺多见的,节点连多了,各种bug就出现了
效果如下
但是这个缺少放入物体虚化的效果,于是又改了下
效果就是第一幅图的了,注意这个需要开启透明,使用的时候只能是不透明的物体放入水中,否则会有深度问题
节点如下
预览也是这个问题,shader文件里直接改
放上改好的shader下载地址(注意只有shader文件)
http://download.csdn.net/download/shenmifangke/9991699
Eclipse Color Themes
一个eclipse插件,可以简单方便地实现eclipse下的代码配色。另外插件作者还专门为此插件做了一个eclipse配色网站,有很多开发者在此网站分享了自己的配色方案。当然,你也可以在网站配置自己想要的颜色和风格。 官网:http://eclipsecolorthemes.org/
原文链接:
https://yq.aliyun.com/articles/220340 本文讲的是
隐匿的攻击之-Tor Fronting, 0x01 简介 学习完Domain Fronting之后,又从@vysecurity的文章里学会了一个新的姿势–Tor Fronting,使用Tor Fronting ,同样能在攻击中隐藏自己,并且更加容易实现,此文就来介绍一下这个新的姿势。
0x02 Tor Hidden Services
Tor是互联网上用于保护您隐私最有力的工具之一,而Tor Hidden Services则是为了隐藏自己的网站或者其他服务的一个服务。通过此服务,我们可以获取到一个通过Tor Browser来访问的Hostname,此Hostname唯一且匿名,所以我们完全可以使用这个Hostname来为我们转发流量从而达到隐匿的目的。
怎样搭建Tor Hidden Services可以参考此wiki,下面介绍一下我测试环境的搭建过程。 环境为:Ubuntu 12.04 搭建过程如下: 查看系统信息:
lsb_release -a 可以看到Codename为precise,所以在这里选择deb类型如下:
之后按照官方wiki修改更新源,我的源路径为/etc/apt/sources.list,有的系统更新源路径可能在/etc/apt/sources.list.d/,在源中添加以下条目:
deb http://deb.torproject.org/torproject.org precise main deb-src http://deb.torproject.org/torproject.org precise main 之后执行以下命令:
gpg --keyserver keys.gnupg.net --recv A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-key add - 安装:
$ sudo apt-get update $ sudo apt-get install tor deb.torproject.org-keyring 执行完成以后,就成功安装了,如果出现问题,可以查看一下wiki。
之后要对tor进行一下配置,编辑配置文件/etc/tor/torrc,将以下两个参数前的注释去掉。
HiddenServiceDir /var/lib/tor/hidden_service/ HiddenServicePort 80 127.
原文链接:
https://yq.aliyun.com/articles/220025 本文讲的是
Proton RAT利用0day漏洞升级新变种,最低1200美元可出售,
近日,Sixgill安全公司的研究人员发现了一种新型的macOS Proton RAT(远程访问工具),该工具目前已在俄罗斯地下黑市出售。 暗网向来是寻找各种非法产品和服务的好地方,恶意软件(如银行木马以及间谍软件等)都是地下黑市中最流行的产品。
最近,一款专门针对macOS系统的远程访问工具 (RAT)——名为“Proton”正在俄罗斯地下黑市上出售。Sixgill安全公司的研究人员在犯罪论坛以及一个定制网站中都发现了该产品的广告宣传,该工具的开发者甚至还在YouTube上上传了一个简短的演示视频。
而就在Sixgill安全专家发表了这份报告之后,Proton的主页就关闭了。Sixgill发表的报告写道,
Sixgill安全研究人员曾在一个封闭的俄语网络犯罪消息留言板上发现一款RAT,其开发者称其为“Proton”,专门针对macOS系统安全。开发者将其“在最顶级的网络犯罪地下黑市”上出售。
去年,Proton RAT第一次出现在威胁景观中,而最新出现在黑客论坛上的新变体拥有很多特性,如执行控制台命令、访问用户的网络摄像头、记录击键信息、获取截图以及开启SSH/VNC远程连接等能力。该恶意软件还能在用户浏览器中注入恶意代码,进而弹出窗口询问受害者相关信息,如信用卡号码、登录凭证等等。
报告继续写道:
恶意软件包含跟访问特权,允许攻击者完全控制受害者的设备。它的具体功能包括:运行实时控制台命令和文件管理器、监控键盘输入、SSH/VNC连接、获取屏幕截图或摄像头图像、获取更新等能力。此外,它还能显示一个自定义本机窗口询问用户个人信息如信用卡、驾照等。另外该恶意软件还具有iCloud访问功能,即使是在双因素验证已启动的情况下也是如此。
根据该木马作者所言,这款工具是用Objective-C编写而成的,而且现有的macOS防病毒解决方案都无法检测到。研究人员表示,Objective-C语言提供了一个巨大的优势即恶意软件无需依赖关系。
以下为广告宣传中的功能列表:
Proton RAT具有跟访问权限且能够逃避标准macOS安全特性,同时,它还能绕过双因素验证访问iCloud账户。
研究人员推测,macOS Proton RAT利用了macOS系统中的零日漏洞,但是该恶意软件最有趣的特征是,该恶意代码是真正的苹果代码签名证书签署的。恶意软件作者可能为第三方软件开发人员诱骗了苹果的过滤进程,要么是通过用虚假ID注册了苹果的开发者计划,要么是利用了被盗的开发者凭证从而获取必要的证书。
据悉,macOS Proton RAT整个项目的售价范围从1200美元到83万美元(一个荒谬的价格)之间不等。以下为Proton网站上宣传的版本:
标准版
控制一台远程设备:未签名版——1比特币(约合1250美元);签名版——2比特币(约合2500美元); 控制20台远程设备:未签名版——10比特币;签名版——11比特币; 控制无限台远程设备:未签名版——66比特币;签名版——76比特币; 升级版
控制无限台远程设备:未签名版——166比特币;签名版——200比特币; 在你自己的服务器上控制无限台设备:没有源代码——366比特币;完整源代码——666比特币; 研究人员还注意到,该恶意软件的作者试图将其间谍软件伪装成合法的监控软件。
原文发布时间为:2017年3月15日 本文作者:小二郎 本文来自云栖社区合作伙伴嘶吼,了解相关信息可以关注嘶吼网站。 原文链接
Shader Shader在计算机图形领域叫做着色器,是一组提供给GPU的绘图指令,用于告诉GPU在绘图时应该怎么绘制并对绘制的物体进行色彩渲染。
Android中定义了几种Shader给Paint使用,在Paint绘制图像时对其设置不同的Shader,绘制出来的物体就会使用Shader提供的信息进行着色。
Shader的子类有:BitmapShader、LinearGradient、ComposeShader、RadialGradient、SweepGradient
BitmapShader BitmapShader是使用一张指定的图片给Paint进行着色,在绘制的时候会根据设置的TileMode(平铺模式)和图像来形成不同的效果,其中TileMode有
如下三种:
CLAMP 这种模式在绘制的时候如果绘制区域超出提供的图片的尺寸,超出区域会使用超出部分的边缘颜色进行着色
REPEAT 这种模式在绘制的时候如果绘制区域超出提供的图片的尺寸,超出区域会重新使用完整的图片进行着色
MIRROR 这种模式在绘制的时候如果绘制区域超出提供的图片的尺寸,超出区域会重新使用完整的图片进行着色,并且呈镜面反转效果
BitmapShader构造函数:
/** * 唯一的一个构造函数,调用这个构造函数构造一个新的BitmapShader * * @param bitmap 用于着色的bitmap对象 * @param tileX 水平方向的平铺模式. * @param tileY 垂直方向的平铺模式. */ public BitmapShader(@NonNull Bitmap bitmap, TileMode tileX, TileMode tileY) { BitmapShader实例 public class BitmapShaderView extends View { private Paint mPaint; private Shader mShader; /** * 用于给Paint着色的图片 */ private Bitmap mBitmap; public BitmapShaderView(Context context, @Nullable AttributeSet attrs) { super(context, attrs); initial(); } private void initial(){ mPaint = new Paint(); mPaint.
本文讲的是
一个Tor浏览器0day漏洞价值100万美元,其中的隐情是……, 据外媒报道称,Zerodium(一家专门购买和转售零日漏洞的公司)近日刚刚宣布,它愿意为Tails Linux和Windows操作系统上流行的Tor浏览器可用零日漏洞支付高达100万美元的赏金。
Tor浏览器用户应该将该消息作为一个早期预警,尤其是那些使用Tails操作系统来保护其隐私的用户。此外,该零日漏洞收购平台也在其网站上发布了一些规则和支付细节,宣布其对“未使用JavaScript”的Tor漏洞的收购价格将是“使用了JavaScript”的Tor漏洞的两倍。
该公司还清楚地提出,漏洞利用必须是远程代码执行漏洞,初始攻击向量应该是一个网页,且它应该适用于最新版本的Tor浏览器。此外,该Tor零日漏洞的运作除了受害者访问网页之外,必须无需任何用户交互。其它攻击向量,例如通过恶意文件传输并不适用于此次漏洞收购计划,但是Zerodium公司可能也会针对该情况,酌情定制收购价格。
Zerodium将向执法机构出售Tor浏览器零日漏洞
尽管对私营企业而言,零日漏洞市场长期以来一直都是一块有利可图的业务,它们经常会为争夺一些尚未公开的零日漏洞,支付比大型技术公司更高的价格,但是Zerodium表示,它希望将Tor浏览器的漏洞转售给执法部门,用来打击犯罪活动。
在一个提问环节中,Zerodium公司已经证实称,它将向执法机构出售自己购买的Tor 浏览器零日漏洞,而且可能也会将其出售给为政府机构提供间谍软件的商业恶意软件开发公司。
Zerodium公司表示,
“在很多情况下,Tor浏览器会被一些恶意人士用于进行贩卖毒品或虐待儿童等非法活动,我们如今为Tor浏览器推出了这个特别的零日漏洞奖励计划,目的就是为了帮助我们的政府客户打击犯罪活动,使世界变得更美好,更安全。”
为了回应Zerodium的漏洞赏金计划,Tor项目组表示,破坏其匿名软件的安全性可能会危及很多用户的生命安全,包括维权人士、活动家、律师以及研究人员等依赖该匿名软件的用户。
该非营利性基金会还敦促研究人员以及黑客可以通过其最近推出的漏洞奖励计划负责任地披露Tor浏览器中的安全漏洞。
Tor项目组发言人在接受采访时表示,
“我们认为,这笔奖金是对我们所提供的安全性的证明。我们认为,通过我们自己的漏洞奖励计划披露所有漏洞,这一做法将实现所有Tor用户(包括政府机构在内)的最大利益。每天有超过150万人依靠Tor来保证他们自身的网络隐私安全,而且对于一些人来说,甚至是涉及生死的大问题。参与Zerodium公司的计划会使我们风险最大的用户的生命受到威胁。” Tor 浏览器零日漏洞利用价目表 以下是Zerodium公司为Tor浏览器漏洞利用提供的价格清单:
未使用JavaScript的Tails 3.x (64位)和Windows 10 RS3/RS2 (64位)Tor浏览器Root/系统远程代码执行漏洞(RCE)和本地提权漏洞(LPE):价值25万美元; 未使用JavaScript的Tails 3.x (64位)或Windows 10 RS3/RS2 (64位)Tor浏览器Root/系统远程代码执行漏洞(RCE)和本地提权漏洞(LPE):价值20万美元; 使用JavaScript的Tails 3.x (64位)和Windows 10 RS3/RS2 (64位)Tor浏览器Root/系统远程代码执行漏洞(RCE)和本地提权漏洞(LPE):价值12.5万美元; 使用JavaScript的Tails 3.x (64位)或Windows 10 RS3/RS2 (64位)Tor浏览器Root/系统远程代码执行漏洞(RCE)和本地提权漏洞(LPE):价值10万美元; 未使用JavaScript的Tails 3.x (64位)和Windows 10 RS3/RS2 (64位)Tor浏览器远程代码执行漏洞(RCE):价值18.5万美元; 未使用JavaScript的Tails 3.x (64位)或Windows 10 RS3/RS2 (64位)Tor浏览器远程代码执行漏洞(RCE):价值17.5万美元; 使用JavaScript的Tails 3.x (64位)和Windows 10 RS3/RS2 (64位)Tor浏览器远程代码执行漏洞(RCE):价值8.5万美元; 使用JavaScript的Tails 3.x (64位)或Windows 10 RS3/RS2 (64位)Tor浏览器远程代码执行漏洞(RCE):价值7.5万美元; 对此漏洞悬赏计划感兴趣的人士可以在2017年11月30日下午6点前(东部夏令时,EDT)提交自己的零日漏洞。此外,该公司还指出,如果支付给研究人员的总支出达到100万美元,那么该漏洞奖励计划可能会在有效期结束前提前终止。
原文发布时间为:2017年9月18日 本文作者:小二郎 本文来自云栖社区合作伙伴嘶吼,了解相关信息可以关注嘶吼网站。 原文链接 点赞 收藏 分享 文章举报 weixin_34390105 发布了142 篇原创文章 ·
本文讲的是
真相浮出:法国警方截获6个涉及WannaCry案件的Tor中继服务器, 法国警方截获6个Tor中继服务器
上个月,WannaCry勒索软件在全球范围内爆发,短短72个小时内就成功感染了150多个国家的30多万台计算机设备,造成了极大的影响。
世界各地的政府组织、情报机构以及执法机构已经着手开始调查,并与受影响的企业进行密切合作,共同追踪5月12日星期五对全球网络发起攻击事件的幕后黑手。
一些研究人员将WannaCry攻击事件追溯为朝鲜政府支持的黑客团体所为,而另外一些人则认为幕后黑手可能是中国人。如果你一直关注关于WannaCry案件的报道,你应该知道,WannaCry勒索软件是使用Tor隐藏服务器来与其命令和控制服务器(C2)进行通信的。
而就在近日,我们得知法国当局在勒索攻击爆发后两天,对WannaCry案件进行调查时已经截获了至少6个托管在法国托管服务提供商处的Tor入口保护节点服务器(entry guard node servers)。
5月15日,一名法国黑客化名为“Aeris”通知Tor 社区称,中央打击信息通信技术犯罪事务办公室(OCLCTIC)的官员突击搜查了Online.net托管服务提供商,并于5月14日扣押了他的“kitten1”和“kitten2”(torguard/fallback directory)服务器。
Aeris对外媒The Hacker News表示,
警方根据法国雷诺公司(WannaCry感染案件的受害者之一)提出的投诉,突击检查了OVH、Online.net以及FirstHeberg托管服务提供商。目前,法庭拒绝提供任何相关信息,甚至提供商也受到了‘禁言令(gag order)’限制,不得对外透漏任何信息。
Aeris还告诉The Hacker News称,他知道这总共6个Tor中继服务器由5名运营商负责运营。
Tor-中继-wannacry
Relay(中继,Relay Node)是指基站或用户不直接将信号发送给彼此,而是通过中继节点,经过信号放大或再生处理进行转发。
Aeris还声称,法国当局是在一家受害公司(可能是雷诺公司——一家位于法国的跨国汽车制造商)主动联系到他们寻求帮助,并为其提供网络流量记录以协助其进行调查后,采取了这一针对托管服务提供商的突击检查行动。
由于Tor节点具备很好的安全性来保护Tor用户的隐私,且没有保留任何实际的数据,所以执法当局也很难找到与WannaCry团伙有关的任何证据。
Aeris还警告称,
虽然私钥是加密且可能受到保护的,但请立即撤销kitten1和kitten2 tor节点。因为这些节点也是fallback directory。
WannaCry,这种全球范围内的流行病毒正在使用自我传播功能来感染易受攻击的Windows计算机,特别是使用旧版本操作系统的Windows计算机。虽然目前大多数受影响的组织已经恢复正常,但世界各地的执法机构仍在继续追捕工作,试图捕获幕后黑手。
原文发布时间为:2017年6月12日 本文作者:小二郎 本文来自云栖社区合作伙伴嘶吼,了解相关信息可以关注嘶吼网站。 原文链接 点赞 收藏 分享 文章举报 weixin_34008784 发布了163 篇原创文章 ·
获赞 53 ·
访问量 25万+ 私信 关注
这涉及到我们平时学以致用的问题,从小到大总听老师说起举一反三,但有多少次的举一反三真正被我们应用到了呢?
某日看了一个综艺节目名叫中餐厅,内容是明星在泰国开中餐馆子创业的。其中做饭时有个小细节,赵薇对黄晓明说大蒜的剥法:用刀横切去头去尾。这样大蒜就可以很完整的剥完,之前我只会去尾,但没想过去头,因此看到之后觉得新技能get,还很开心的去试了试,果然很方便。于是此后每次剥大蒜都会怪自己,为什么我离这种方法就只差一步,却在每次做饭的时候浪费那么多时间在大蒜的身上(要知道大蒜会有很多薄的皮黏在上面很难处理,PS:这里不讨论用刀直接拍碎的那种剥法,想要完整的大蒜)。然而昨天做土豆咖喱牛肉处理洋葱时,我很自然顺手的把洋葱的头、尾去掉,轻轻一撕最外层的皮,一个干净完整的洋葱就剥好了,可事后一想这不是和大蒜的剥法一模一样吗,原来我早就掌握这种方法了,可以前从来没用过。
细思极恐,学习和技术上不也一样吗,其实很多方法或者技能我们已经掌握了,可因为不能够活学活用,又要从头再来花时间学一遍。
点赞 收藏 分享 文章举报 Coder包子哥 发布了62 篇原创文章 ·
获赞 58 ·
访问量 27万+ 私信 关注