Quantcast
Channel: CodeSection,代码区,网络安全 - CodeSec
Viewing all 12749 articles
Browse latest View live

Apple security expert moves to ACLU as ‘public interest tech’ builds

$
0
0

“A senior Apple Inc security expert left for a much lower-paying job at the American Civil Liberties Union this week, the latest sign of increasing activity on policy issues by Silicon Valley privacy specialists and other engineers,” Joseph Menn reports for Reuters. “Jon Callas, who led a team of hackers breaking into pre-release Apple products to test their security, started Monday in a two-year role as technology fellow at the ACLU. Prior to his latest stint at Apple, Callas designed an encryption system to protect data on Macs and co-founded communications companies Silent Circle, Blackphone and PGP Corp.”

“Past tech fellows at ACLU joined earlier in their careers, but the ACLU wants seasoned experts. ‘It’s critical for organizations like the ACLU to address the asymmetry of expertise between entities like the National Security Agency and Silicon Valley corporations and those of us who are trying to rein them in,’ [Ben Wizner, director of the ACLU’s Speech, Privacy and Technology Project] said,” Menn reports. “Callas’ move comes after a year of unprecedented activism by rank and file engineers at Alphabet Inc’s Google, Facebook Inc and other technology powerhouses under fire for enabling the spread of misinformation and government-led misdeeds.”

“Callas said phone makers had improved security and he wanted to see progress continue and widen without companies succumbing to pressure to install back doors,” Menn reports. “Famed cryptography author Bruce Schneier encouraged Callas to take the ACLU post. Schneier said he was seeing a broader sense of public obligation, with a hundred applicants for a recent opening at the nonprofit Electronic Frontier Foundation.”

Read more in the full article here .

MacDailyNews Take: We’re with anyone who opposes “back doors” (which become front doors the moments after they are installed).


Is Someone Else Using Your Twilio Account? Best Practices to Protect Your Auth T ...

$
0
0

Is Someone Else Using Your Twilio Account? Best Practices to Protect Your Auth T ...

With over 5 billion mobile phone users in the world, attackers are constantly finding ways to take advantage of unsuspecting people via their connected devices. Smishing ― using SMS to socially engineer information ― is a very common attack that telecommunications carriers are working to address. Posing as a trustworthy entity, a bad actor sends text messages to request personal information such as passwords or credit card numbers. If even a few people fall for the bait the scheme can pay off, especially if the attacker is using stolen Twilio account credentials to send the messages.

At Twilio, we place an immense value on trust, which is why we want to help protect you and your users from smishing attacks. In this post, we share a few best practices for protecting your account.

Best Practices for Fraud and Phishing Prevention with Twilio

Someone who steals your Twilioauth tokencan use your account as you, doing whatever they want with no repercussions. Fraudsters canmake calls,send messages using your trusted identity, download logs, or change the URL settings of your Twilio phone numbers.

When your auth token is abused, it canvery quicklylead to massive chargestoyour Twilio account. Even worse, if your auth token falls into the wrong hands, it canirreparably damage your reputation and erode the trust between you and your customers.

To address these situations, wehave increased our detection controls for fraudulent account activity. We want to specifically emphasize precautions that customers can take to avoid unwarranted account access in the first place. Here are some basic security practices tohelp you protect your Twilio auth tokenfrom fraudulent usage.

Keepyour auth token safe

Never give out your auth token, store it on the internet, or leave it out in the open. Treat it as carefully as you do apassword―because that’s exactly what it is.

Don’t hard-code keys or tokens

Never hard-code keys or tokens in your app. It is trivialto retrieve these credentials by decompiling the app.To further avoid such exposureduring app development, make the Twilio API calls from your server and not the client.

Don’t push credentials to public repositories

Absolutely never push your tokens to public repos on GitHub.If you do so mistakenly, rotate them immediately (see next tip). Set your auth token as an environment variable and then reference the variable from your code. This protects the auth token from being exposed and prevents the code from making API calls from an unauthorized environment

Rotate your tokens regularly

Periodically change your auth tokens so that if they have been compromised they will not continue to be available for phishing or other criminal activity.A common rule of thumb is to treat credentials like a toothbrush ― rotate them every three months and don’t share them with others.

Create limited-scope tokens

Consider using time-basedAPI access tokensfor more granular authentication mechanisms instead of using the SID and auth token.

Monitor your account

Keep an eye on your account and watch for any charges you don’t recognize.

Protecting your auth token is a core part of a good general security strategy.Twilio is committed to building and maintaining trust, and we want to equip you with the right tools and advice for properly securing your apps and managing your data.For more information check out the Twilio Account Security docs.

Avoiding Fraud and Phishing by Design

Proper security in your web application starts with the simple best practices we’ve outlined here. By guarding your account credentials and remaining vigilant for any fraudulent activity, you can protect your customers, reputation, and bottom line.

For more information on avoiding fraud and protecting your account, see our anti-fraud developer’s guide .

Authors

Shelley Wu

我是如何走进黑客世界的?

$
0
0

* 本文原创作者:MyselfExplorer;翻译编辑:楼兰, 本文属CodeSec原创奖励计划,未经许可禁止转载

我想给你一把打开这扇门的钥匙,而你要做的便是静静的聆听接下来的故事。挖掘0day一般需要掌握fuzzing,IDA Pro反汇编WinDbg调试等技术。

一点小东西

我最先接触到的是fuzzing,它所带来的自动化,让我陷入痴迷。

我从网上疯狂的查询资料(因为我之前见识过浏览器0day的威力,只需要点击一下链接,那么你的机器便会被控制),我发现了这个fuzz浏览器的工具,我把这个工具包放到了 github 上,大家可以自行下载,解压密码是下面图片所展示的那个。


我是如何走进黑客世界的?

使用前先安装图片左下角的winsdk,在安装时只勾选”Debugging Tools for windows”一项,然后在command.txt文件里面配置python以及cmd的路径。


我是如何走进黑客世界的?

可以在fuzz.cmd文件里面指定你想要测试的浏览器,它会去寻找可以让浏览器崩溃的Payload。目前支持Firefox、Chrome、Edge和Mise四款浏览器。


我是如何走进黑客世界的?

下面是这个工具的效果图。


我是如何走进黑客世界的?

而相似的工作在linux平台下使用可以更加高效。


我是如何走进黑客世界的?
我是如何走进黑客世界的?

尽管今天的核心并不是上面的那些,但是仍旧感谢这些朋友的分享。

如果拿到了Crash,便可以申请CVE了,下方是一个CVE申请报告的编写样例,在申请时可以作为参考:

Report(CVE-2018-11396: https://bugzilla.gnome.org/show_bug.cgi?id=795740 )

正文

那么我将要讲述的是,我是如何学到这些的。

Twitter

首先想要说的是Twitter,它是黑客世界的好伙伴,学会并熟练使用它非常重要。

我们可以在Twitter上面搜索诸如”fuzz”、”fuzzing”、”fuzzer”等关键字;或者在关键字前面添加”#”,例如”#fuzzing”,那么将会限制为只搜索fuzzing话题。

当我搜索fuzz 1337时,则发现了这篇文章 Fuzz in sixty seconds ,它所介绍的便是最开始的那个fuzz浏览器的工具。


我是如何走进黑客世界的?

当我搜索fuzzing时,则发现了关于BFuzz这个工具的介绍,也是用来fuzz浏览器漏洞的。


我是如何走进黑客世界的?

还有很多诸如此类的关键字可以搜索,你可以自行摸索。

有时候我会去看一些视频形式的分享,因为看视频可以让我更加容易的理解。


我是如何走进黑客世界的?

如果你也想通过视频来学习的话,强烈推荐Youtube。

Youtube

向下图展示的那样,如果你想看的视频在语言问题上有一些困难,那么你可以点击右下角的按钮,它会解决一部分语言的问题。


我是如何走进黑客世界的?

当语言问题不再是问题时,此时你可以泡上一杯咖啡开始像欣赏电影一样尽情的遨游在黑客的世界里,像”Defcon”、”BlackHat”、”OWASP”、”CernerEng”、”hacktivity”等都是不错的视频选择。

还有Bugcrowd的bugcrowd university,hackerone的hacker101;他们则会教你如何挖掘web漏洞,并且获取漏洞赏金。

你感兴趣什么便搜索什么,例如我对APT非常感兴趣,于是我便会去搜索关键字APT,下面是我在Defcon里面搜索APT关键字得到的结果:


我是如何走进黑客世界的?

分享者分享了一个被称为”TGXF”、”TKXF”/”TCXF”的技术。它可以实现脱离网络传输文件的效果,只需要扫描二维码便可以在手机和电脑之间传输任意文件;更酷的是甚至还可以通过摄像头在电脑与电脑之间传输任意文件。

虽然这是15年分享的技术,但是在17年,仍旧有人在不断展示这个技术,甚至现在在我们国家也仍旧没有普及,

利用这个技术来窃取机密文件即使是现在这个时候,也丝毫不落伍。

当我搜索”how to find bug”这样的关键字时,找到了下面这一个视频:


我是如何走进黑客世界的?

作者现场演示了如何一步一步挖掘一个0day,从开始到结尾,从无到有,可以完整见证一个0day的诞生;在视频的最后,可以看到全场掌声如潮。

如果你想学习漏洞挖掘,那么推荐”Bug Bounty Public Disclosure”这个订阅号,尽管里面全都是已经修复的漏洞,但是并不影响对我们的帮助。

当然,也可以直接搜索”bug bountry”关键字,然后筛选你需要的。


我是如何走进黑客世界的?

一些建议:

我用 simplenote 这款软件进行我的简单笔记,分别是 video & paper learning, 用来记录我通过文章和视频的学习过程,”finished”表示我学习了全部,”1″表示 我进行了一次学习。


我是如何走进黑客世界的?
Write-Up

可以理解成一些经验之谈。

pentesterland :如果你是渗透测试人员,那么这个站点对你的作用将是巨大的。


我是如何走进黑客世界的?

https://pentester.land/list-of-bug-bounty-writeups.html :这里面收集了过去到现在的所有经典的挖洞过程。


我是如何走进黑客世界的?

Bug Bounty Reference :里面几乎囊括了所有与web安全相关的技术点。


我是如何走进黑客世界的?

PayloadsAllThings :不管你是红队,渗透,ctf 玩家,你都可以在里面获得你想要的资料

新闻

作为黑客,你肯定要了解最新的新闻,国内外我推荐两个:

Thehackernews: https://thehackernews.com/

CodeSec: https://www.CodeSec.Net/

它们同样能给你很多帮助,例如文章语言不是我们的母语,你感到非常吃力的时候,那么可以在 CodeSec里面寻找小编翻译好的外文文档,clound 经常翻译挖洞经验的文章,你可以直接的进行学习。

在 thehackernews 里面,我看到了”sandboxescaper”的新闻,虽然在她的 twitter 上大部分时间在骂人(哈哈,lol~),但是她仍旧分享了逆向挖掘 ALPC 0day的技巧。


我是如何走进黑客世界的?

还可以看到她分享的她学习的方法:1.在Youtube上面看视频 2. Google查询相关资料 3. 实操。


我是如何走进黑客世界的?

文章的最后还可以看到参考文章,这些都非常有价值。


我是如何走进黑客世界的?
工具

不要相信”脚本小子论”。除了尽快的学习最新的1day/nday,学会利用它们相关的工具也可以让你快速成长。

Kitploit :里面介绍了很多的黑客工具。

如果只看文章,对于工具的操作仍旧不是很明白,那么此时可以去Youtube上搜索这个工具的相关关键字。通过查看分享者,可以让你收集很多分享黑客工具的人,你可以关注他们,随时跟进。

例如搜索”RAT”时,你可以测试搜搜到的每一款工具,看是否仍旧可以绕过杀软。当然相关的关键字还有很多,如:”rat fud”跟”bypass av”都可以获取相关的搜索结果。


我是如何走进黑客世界的?

只要对自己有用的,都应该记录到自己的笔记里面,不用顾及会不会太多。

如果你想进一步提高自己,你还可以阅读这些工具的源码,他们大部分是Python、Ruby、Perl语言编写的。

还可以学习编程、计算机科学等提高自己。这些我在后面都会有提到。

而windows平台下的黑客工具包,太多了,你随便一搜便会找到很多,像:扫描、暴力破解、间谍软件、EXP等都可以找到

Connect-trojan :这是一个RAT下载器,可以找到A-Z大概几百款国外的RAT,很多APT组织都会进行大量的利用这些。里面的很多开源工具都可以进行二次开发,定制为自己的专属工具。


我是如何走进黑客世界的?

这是两个黑客论坛:

Offensive Community: http://offensivecommunity.net/

Cracking: https://cracking.org/forums/cracking-tools.16/

强烈建议:千万不要去百度上搜索”黑客”、”黑客教学”、”黑客论坛”、”黑客排行榜”、”黑客教父”等这些东西,它害了多少中国热爱 hacker 的孩子,让他们还不知道什么是 hacker 精神的时候,就迷失在了恶作剧、违法、金 钱、虚荣、交智商税的怪圈里;强烈的抨击那些混蛋们。


我是如何走进黑客世界的?
1/nday&Exploit

关于漏洞的利用Metasploit是效率最高的工具。

在这里能获得最新的漏洞利用: https://github.com/rapid7/metasploit-framework/pulls


我是如何走进黑客世界的?

Twitter跟Youtube在这里仍旧是有效的工具。

如在twitter上面搜索”#exploit”、”#0day”。


我是如何走进黑客世界的?

在Youtube上面搜索 “CVE+年份”


我是如何走进黑客世界的?

除了黑客大会上的分享,Youtube上的结果也需要筛选,不要直接搜索什么黑客教程,因为有很多傻子在黑”hacker”这个东西。

知识来自于网络世界,也服务于网络世界,因为是宝贵知识,所以需要你花费努力才能筛选出自己需要的结果,不要相信不劳而获的东西,不然你会 上当受骗。

一些其他的东西 二进制入门:

What does the Kubernetes privilege escalation flaw mean

$
0
0

RedHat has released CVE-2018-1002105 to help handle the recent privilege escalation flaw impacting Kubernetes that would allow users to gain full administrator access privileges to any compute node.

Bringing together powerful applications into containerized services that are open source can have their drawbacks, as recently discovered by the RedHat issued a critical Security Advisory and patches for CVE-2018-1002105, a privilege escalation flaw impacting Kubernetes.

Sumo Logic CSO, George Gerchow weighs in: "All Kubernetes-based services and products - including Red Hat OpenShift Container Platform, Red Hat OpenShift Online, and Red Hat OpenShift Dedicated - are affected by this vulnerability.

The Kubernetes vulnerability is a huge deal, even more so when you think about its scale of exposure. What makes Kubernetes great is its fundamental speed, orchestration, automation, and scale. All of those qualities become an instant detriment when a security issue arises as they rapidly extend the reach of the attack.

With that said, any well-versed security professional would expect this to happen, as emerging technology is notoriously known to treat security as an afterthought.

Looking at it from a bigger picture, this is another example of how development and security teams need to work together through DevSecOps to establish guardrails and best practices while maintaining agility. Most organizations lack visibility into the proper security and configuration of not just its containers, but the CI/CD pipeline as a whole.”

Moving forward, developers must pay close attention to uniquely identified logs by leveraging machine learning. This will help proactively identify these potential attacks as the requests appear in the kubelet or aggregated API server logs, that would otherwise be indistinguishable from correctly authorized and proxied requests via the Kubernetes API server. If developers - and digital organizations as a whole -- are not able to correctly identify bad behavior via logs, that is a major flaw."

RedHat has been quick to respond and offers an explanatory video to help understand the flaw, which in short, would allow any user to gain full administrator privileges on any compute node being run in a Kubernetes pod.

Read more: https://access.redhat.com/security/cve/cve-2018-10...

Securing Your Cloud: IBM z/VM Security for IBM z Systems and linuxONE

The necessary steps to secure your environment for all of the components that are involved in a z Systems cloud infrastructure that uses IBM z/VMand Linux on z Systems.

A new way to manage your development projects

Learn the best ways to organize your app development projects, and keep code straight, clients happy, and breathe a easier through launches.

The Latest Nerd Ranch Guide (3rd Edition) to Android Programming

Write and run code every step of the way, using Android Studio to create apps that integrate with other apps, download and display pictures from the web, play sounds, and more. Each chapter and app has been designed and tested to provide the knowledge and experience you need to get started in Android development.

Starting your own app business?

How to create a profitable, sustainable business developing and marketing mobile apps.

万豪国际承诺:如果发生欺诈行为将支付新护照的费用

$
0
0

新浪 美股讯 北京时间12月5日, 万豪国际 的客户将获得免费身份盗窃监控软件,以监控账户。此前,一场大规模黑客攻击曝光了逾5亿人的数据。但在周一晚上,万豪表示,将进一步帮助受此次大规模黑客攻击影响的客户。

一位发言人表示:“由于涉及护照和潜在的欺诈行为,我们正在建立一个程序,与我们的客人合作,这些客人认为,由于他们的护照卷入了这起事件,他们经历了欺诈。”

他说:“如果通过这一程序,我们确定发生了欺诈行为,那么该公司将为客人报销获得新护照的相关费用。”

周五,该机构承认,部分受黑客攻击影响的3.27亿人的护照号码可能被盗。黑客攻击始于2014年,但直到去年9月才被发现,涉及喜达屋地产的预订数据库。

这家连锁酒店似乎听取了越来越多代表消费者采取更多行动的呼声。安保公司Bitglass的产品营销经理雅各布-塞帕(Jacob Serpa)表示,万豪需要做出这一承诺,以恢复客户间的信任。

“企业有责任保护其服务对象的个人信息,”他表示。“当组织未能保护数据时,最终受损的是客户的福祉。因此,当一家公司未能为其数据辩护时,它应该采取措施帮助那些受到其缺陷影响的人。”

来自纽约的民主党参议员查克-舒默(Chuck Schumer)和其他议员曾呼吁该公司支付每位受影响的用户110美元更换护照。

舒默说:“现在,时间紧迫,要把顾客面临的风险降到最低。要做到这一点,一个办法就是申请一个新护照,这样让小偷更难描绘出完整的身份。万豪必须立即亲自通知面临最大安全风险的客户,然后为这些人支付费用,以便在他们提出申请时获得新护照和新号码。”

安全专家表示,在最坏的情况下,护照失窃可能会造成更大的安全危机,让恶意分子制造假护照进入美国。安全平台OpenVPN的首席执行官弗朗西斯-丁哈(Francis Dinha)表示,黑客可以利用从护照上获取的数据开立金融账户。

丁哈说:“一定要更改密码,设置双重身份验证,密切关注你的所有财务记录。在确定信息安全之前,你甚至可能会考虑冻结信贷。”

安全专家表示,考虑到万豪遭遇的黑客攻击和近年来发生的其他攻击的规模,大多数消费者应该考虑冻结信贷,作为一种安全防范措施,即使他们认为自己没有受到影响。

在2018年9月做出改变后,冻结信贷现在可以通过包括Equifax Experian和TransUnion在内的三大主要信贷机构免费获得。

凯维林市场营销副总裁戴维-金斯伯格(David Ginsburg)表示,万豪事件突显出,需要提供比护照和社保号码更安全的个人身份识别选项。凯维林是一家位于加州圣克拉拉的网络安全风险姿态和合规提供商。

他表示:“我们需要最终解决这样一个事实,即所有个人数据都处于风险之中,黑客将利用这些数据建立完整的个人档案,这些个人档案可能会被转化为现金。我并不是唯一一个呼吁用下一代标识符来取代大部分标识符的人。”

特朗普政府提出用一个更安全的标识符取代1936年引入的社会保险号。总统特别助理、白宫网络安全协调员罗布-乔伊斯(Rob Joyce)在2017年表示,这个社会安全号码“已经过时了”。

安全公司Balbix的马克-韦纳(Mark Weiner)表示,与此同时,任何受黑客攻击影响的人都应该尽快更改护照号码。

他说:“有了你的护照号码、姓名和出生日期,任何人都可以报失现有的护照,申请新护照,用它作为身份证明,开立新的银行账户或进入现有账户。你的护照号码,连同你的姓名和出生日期,是你身份的一个不可分割的部分,它可能会在错误的人手中造成巨大的伤害。”

东进技术贺建楠谈IoT信息安全:与其坐而论道,不如加快行动

$
0
0

“面对IoT所蕴藏的庞大机会和数十倍数百倍连接增长可能,ICT厂家与其坐而论道,不如加快行动,从初始阶段就杜绝信息安全风险,推动市场更快成熟,也使这个生态中的利益相关者在拓展业务时得以免除后顾之忧,最终普惠整个社会。”东进技术总裁贺建楠谈及IoT时如是表示。


东进技术贺建楠谈IoT信息安全:与其坐而论道,不如加快行动

图:东进技术总裁贺建楠先生

甘当绿叶,还要行动

对于IoT的提法,贺建楠旗帜鲜明地表示,“物联网”的提法不好,应该叫“万物互联网”。在他看来,1.0阶段是“互联网”,解决计算机之间的连接,2.0阶段是“移动互联网”,解决人与人的连接;3.0阶段是“万物互联网”,解决万物之间的连接,当然也包括计算机之间、人与人之间的连接,就像5G跟4G、3G的关系一样,是继承、扩展与并存的关系。

贺建楠进一步强调,泛泛的谈万物互联网是没有意义的,要针对具体的行业、具体的应用来谈。每一个具体的行业、具体的应用,都有相关的专业厂家在其中耕耘多年,ICT厂家在与各个行业结合,探索其互联网之路的时候,要有敬畏之心,以“绿叶”的心态加入其中。

在没有联网的状态下,智能机床、风力发电机、汽车、变电站这些处于相对封闭的状态下。但一旦联网,在带来巨大便利的同时,其所面临的安全风险将急剧增加。贺建楠表示,IoT与之前的互联网或移动互联网不同,一旦被攻击或劫持,不仅仅带来的是信息或数据的泄露,而是有可能造成财产损失甚至人员伤亡。

面对万物互联时代ICT厂家的新机遇、新挑战,东进已经积极行动起来。

全周期IoT安全解决方案落地生根

针对于此,贺建楠提出了“全周期IoT安全”的理念,即针对整个IoT生命周期中规划设计、开发测试、实施运营、回收销毁等不同阶段,要引起充分的重视,并有相应的对策。这是一种主动防范的信息安全观,让信息安全不再事后被动应对。

贺建楠一直坚信,行动大于理念。为此,东进针对全周期IoT安全推出了不同的服务、软硬件产品和平台,以实际行动践行全周期IoT安全理念。

在规划设计阶段,东进有IoT终端安全检测评估服务,可以对客户当前的安全状况进行评估,并提出相应的解决方案,比如物联网终端统一安全认证解决方案、视频会议终端加密解决方案等。

在开发测试阶段,针对IoT终端的认证需求,东进有DJUIAP统一认证平台、DJKMS密钥管理系统;针对数据安全需求,有多种型号的密码机产品等;针对传输安全,有多种型号的加密传输网关,包括SSL VPN网关、数据加密传输网关等。

在实施运营阶段,东进有IoT终端在线升级平台、可视化终端运维管理平台等,用来协助客户更高效、更安全的管理IoT终端。

在回收销毁阶段,东进也有一系列针对性的建议和方法提供给客户。

在具体的解决方案落地方面,东进正与来自不同行业的众多合作伙伴一起探索,形成了相当数量的成功案例,比如与福建某智能枪弹柜的制造厂家共同研发试制安全级别更高的新一代产品,为华东某城市商业银行打造的量子密钥加密传输解决方案。

对于未来发展,东进将从两个方面入手推进全周期IoT安全的深入。一方面结合具体的行业和热点应用,与这些行业的专业厂家紧密合作,做好“绿叶”;另一方面加大研发投入,做好前瞻技术的储备以及新产品的研发。

Mac Developers Reminded to Have Their Apps Notarized as Apple Tightens Security

$
0
0

Apple today reminded Mac developers that it is encouraging them to have their apps notarized, meaning that the apps have been scanned by Apple and checked for malware and other security issues.


Mac Developers Reminded to Have Their Apps Notarized as Apple Tightens Security

Notarization is not currently a requirement for apps distributed outside of the Mac App Store, but Apple says it will "more prominently highlight notarization status" starting in the spring of 2019. And in an unspecified "upcoming macOS release," Apple will require any Developer ID-signed apps to be notarized.

When users on macOS Mojave first open a notarized app, installer package, or disk image, they'll see a more streamlined Gatekeeper dialog and trust that it does not contain known malware. Starting spring of 2019, macOS Mojave will more prominently highlight notarization status. In an upcoming macOS release, Gatekeeper will require Developer ID signed software to be notarized by Apple.

Apple introduced the notarization process for macOS Mojave back in June at WWDC, providing an extra level of confidence for users that apps are free of malware while also giving Apple finer-grained controls to shut down specific problematic releases instead of having to revoke an entire Developer ID.

Apple has stressed that notarization is not a full app review process and is only intended to analyze apps for security purposes.

The Cryptopals Crypto Challenges 解题报告(1)

$
0
0

作者:上海交通大学蜚语安全(G.O.S.S.I.P)研究小组实习生张一苇

链接: https://cryptopals.com/

参考: https://github.com/ickerwx/cryptopals

下载: PDF

the cryptopals crypto challenges 中包含8组练习,共48个挑战。我们可以通过完成挑战,来学习密码学的相关知识。

这些挑战源于现实世界系统和加密结构的弱点,通过挑战中提供的足够的信息,我们可以了解基础密码学概念,以及常见的密码误用和密码算法的弱点。当完成这些挑战后,我们不仅可以了解密码系统的构建方式,还可以了解它们是如何受到攻击的。

Set 0: Start

以下内容运行环境为:VMware Workstation ubuntu-16.04.4虚拟机,python 2.7.12。

这一部分不包括在挑战中,是为了后续解题方便自行添加的。

将一些基本的编码转换方法、基本的XOR异或运算、ECB加密、以及分块方法写到一个python程序中,以便后续解题时方便调用。

Set 0 包括:十六进制、字节数组、字符串两两之间的相互转化,字节数组的异或XOR运算,AES-ECB加密算法,分块方法。

如果对这些算法概念熟悉,可以跳过这部分,后面的某些挑战需要调用这些方法。当然可能还会有其他的方法或手段来实现这些方法,这里我们只列出了一种方法。

related method:

十六进制字符串转化为字节数组

先将十六进制字符串解码,对每个字符取ASCII值,然后添加到列表中

python def hex_to_bytelist(hexString): return [ord(c) for c in hexString.decode("hex")]

字节数组转化为十六进制字符串

先将数组中的每一个元素转化为十六进制hex(),如果x<15,需要在前面补‘0’,将这些十六进制字符串连接起来

python def bytelist_to_hex(byteList): return "".join(hex(x)[2:] if x > 15 else '0' + hex(x)[2:] for x in byteList)

字符串转化为十六进制字符串

直接将字符串编码为十六进制

python def str_to_hex(string): return string.encode("hex")

十六进制字符串转化为字符串

直接将十六进制字符串解码为字符串

python def hex_to_str(hexString): return hexString.decode("hex")

字节数组转化为字符串

利用前面的方法,可以先将字节数组转化为十六进制,然后在调用十六进制转化为字符串的方法

(ps:还有其他的方法,这里只说明一种)

python def bytelist_to_str(byteList): return hex_to_str(bytelist_to_hex(byteList))

字符串转化为字节数组

利用前面的方法,先将字符串转化为十六进制,然后再将十六进制字符串转化为字节数组

python def str_to_bytelist(string): return hex_to_bytelist(str_to_hex(string))

XOR

“`python

字节数组异或 def xor(b1, b2): res = [] for i in range(len(b1)): res.append(b1[i] ^ b2[i]) return res “`

AES ECB

直接使用from Crypto.Cipher import AES调用模块,构造AES ECB生成器,调用其encrypt和decrypt方法进行加解密。

“`python def aes_ecb_encrypt(key, plaintext): crypto = AES.new(key, AES.MODE_ECB) ciphertext = crypto.encrypt(plaintext) return ciphertext

def aes_ecb_decrypt(key, ciphertext): crypto = AES.new(key, AES.MODE_ECB) plaintext = crypto.decrypt(ciphertext) return plaintext “`

分块

将字符串string以n字节长度的大小进行切分,切分后的每块合为一个列表。

python def chunks(string, n): for i in xrange(0, len(string), n): yield s[i:i+n] Set 1: Basics

第一部分是基础知识相关的,比较容易,包括一些密码学编码、常用的基础加密方式以及简单的破解方式等。

目录:

Challenge 1: Convert hex to base64 Challenge 2: Fixed XOR Challenge 3: Single-byte XOR cipher Challenge 4: Detect single-character XOR Challenge 5: Implement repeating-key XOR Challenge 6: Break repeating-key XOR Challenge 7: AES in ECB mode Challenge 8: Detect AES in ECB mode

Challenge 1 : Convert hex to base64

题目要求:实现一个函数,将十六进制字符串转化为base64编码字符串。

示例:

输入十六进制字符串

string = "49276d206b696c6c696e6720796f757220627261696e206c696b65206120706f69736f6e6f7573206d757368726f6f6d"

返回base64编码result = “SSdtIGtpbGxpbmcgeW91ciBicmFpbiBsaWtlIGEgcG9pc29ub3VzIG11c2hyb29t”

实现方法:

首先将十六进制字符串解码,decode方法是将字符串解码为unicode编码。 然后再将字符串编码为base64

def hex_to_base64(hexString): return base64.b64encode(hexString.decode('hex')) string="49276d206b696c6c696e6720796f757220627261696e206c696b65206120706f69736f6e6f7573206d757368726f6f6d" print hex_to_base64(string)

输出结果:


The Cryptopals Crypto Challenges 解题报告(1)
Challenge 2: Fixed XOR

题目要求:实现一个函数,输入为两个等长的字符串,输出为这两个字符串的异或结果。功能为实现两个等长的字符串异或。

示例:输入s1,s2,输出为res

s1 = “1c0111001f010100061a024b53535009181c”

s2 = “686974207468652062756c6c277320657965”

res = “746865206b696420646f6e277420706c6179”

实现方法:

Set 0 中的xor方法是实现两个字节数组的异或。

若要实现两个等长的字符串的异或,可以先使用Set 0 中的str_to_bytelist方法将字符串转化为字节数组 然后调用xor方法进行异或操作 最后在调用bytelist_to_hex方法将字节数组转化为十六进制字符串。

def fixed_xor(s1, s2): return bytelist_to_hex(xor(hex_to_bytelist(s1), hex_to_bytelist(s2))) s1 = "1c0111001f010100061a024b53535009181c" s2 = "686974207468652062756c6c277320657965" print fixed_xor(s1, s2)

输出结果:


The Cryptopals Crypto Challenges 解题报告(1)
Challenge 3: Single-byte XOR cipher

题目要求:给定一个十六进制字符串hexString,它是某个字符串与一个单字符key异或进行加密之后得到的结果。现在已知hexString,我们需要找到key,来解密字符串。

hexString=“1b37373331363f78151b7f2b783431333d78397828372d363c78373e783a393b3736”

实现方法:

在这个挑战中,我们可以通过遍历0-255的字符key,对hexString进行逐字符异或解密; 通过解密后的英文文本中的字符频率,来对测试key解密结果进行评估; 如果为正常的英文文本,那么它的字符频率应该尽可能的大,选择其中得分最高的key,即有很大概率为正确的key。

其中,CHARACTER_FREQ为字符频率表(ps: 使用当前wiki的字母频率解密不正确,猜测可能是字符频率发生了变化)

get_score方法:输入参数为待评估的字符串,输出为该字符的频率得分。通过找到字符串中的每一个字符在字符频率表中对应的频率,相加之和,即为该字符串的频率得分。

singlebyte_xor方法:该方法实现单字符异或加密。输入为单字符密钥key和待加密的字符串,输出为加密后的字符串。通过将待加密的字符串中的每一个字符与单字符密钥key进行异或,从而进行加密,返回加密结果(ps:加密解密相同)。

traversal_singlebyte方法:输入为解密的字符串hexString,输出为解密结果。在该方法中,遍历0-255的字符key,调用singlebyte_xor方法对输入字符串进行解密,调用get_score方法对解密后的字符串进行评估。使用列表的方式存储每个密钥key及其对应的信息,列表中的元素是字典类型,包括key、解密结果plaintext以及字符频率得分score。使用sorted方法对列表进行排序,取得字符频率得分最高的解密结果返回。

CHARACTER_FREQ = { #字符频率表 'a': 0.0651738, 'b': 0.0124248, 'c': 0.0217339, 'd': 0.0349835, 'e': 0.1041442, 'f': 0.0197881, 'g': 0.0158610, 'h': 0.0492888, 'i': 0.0558094, 'j': 0.0009033, 'k': 0.0050529, 'l': 0.0331490, 'm': 0.0202124, 'n': 0.0564513, 'o': 0.0596302, 'p': 0.0137645, 'q': 0.0008606, 'r': 0.0497563, 's': 0.0515760, 't': 0.0729357, 'u': 0.0225134, 'v': 0.0082903, 'w': 0.0171272, 'x': 0.0013692, 'y': 0.0145984, 'z': 0.0007836, ' ': 0.1918182} def get_score(string): #计算字符串的频率得分 score = 0 for ch in string: ch = ch.lower() if ch in CHARACTER_FREQ: score += CHARACTER_FREQ[ch] return score def singlebyte_xor(key, string): #单字符异或加密 res = "" for i in string: ch = chr(key ^ ord(i)) res += ch return res def traversal_singlebyte(string): #遍历单个字符解密,评估 candidate = [] for key in range(256): plaintext = singlebyte_xor(key, string) score = get_score(plaintext) res={'key': key, 'plaintext': plaintext, 'score': score} candidate.append(res) #取得分最高的返回 return sorted(candidate, key = lambda c:c['score'])[-1] hexString="1b37373331363f78151b7f2b783431333d78397828372d363c78373e783a393b3736" print traversal_singlebyte(hexString.decode('hex'))

输出结果:


The Cryptopals Crypto Challenges 解题报告(1)
Challenge 4: Detect single-character XOR

题目要求:在这个挑战中,给出一个文件challenge4.txt,文件中的一个字符串是由单字符异或方法加密的,再进行十六进制编码,找到并解密这个字符串。

实现方法:

参考challenge 3 实现,对文件中的每个字符串调用traversal_singlebyte方法,进行遍历和评估 对于文件中的每个字符串都会返回一个得分最高的对象,选取这其中分数最高的一个。 f = open('challenge4.txt', 'r') hexStringPool = f.readlines() #读取字符串 candidate = [] #存放对于每个字符串来说单字符异或加密得分最高的结果 for line in hexStringPool: line = line.strip() #移除字符串头尾的空格或换行符 string = line.decode('hex') #16进制解码 #对每个字符串调用traversal_singlebyte方法,将得分最高的存放在candidate列表中 candidate.append(traversal_singlebyte(string)) #返回列表中得分最高的一项的解密结果,即为所要寻找的字符串解密结果。 print sorted(candidate, key = lambda c:c['score'])[-1]['plaintext']

输出结果:


The Cryptopals Crypto Challenges 解题报告(1)
Challenge 5: Implement repeating-key XOR

题目要求:实现一个函数,给定待加密的字符串和密钥,该函数通过使用重复密钥异或(repeating-key XOR)的方法,加密一段英文文本,返回加密后的结果。

示例:

待加密的字符串 string = “Burning ‘em, if you ain’t quick and nimble\nI go crazy when I hear a cymbal”

密钥 key = “ICE”

重复密钥异或加密结果

res = "0b3637272a2b2e63622c2e69692a23693a2a3c6324202d623d63343c2a26226324272765272a282b2f20430a652e2c652a3124333a653e2b2027630c692b20283165286326302e27282f"

实现方法:

我们可以将待加密的字符串按keysize的大小进行分块 将每块分别与密钥key进行逐字符异或加密 最后将每块的加密结果合并到一起。

异或方法与challenge 2 类似,先将每块字符串和密钥转化为字节数组,调用xor方法进行异或操作,然后将结果转化为十六进制字符串,最后将每一个块的加密结果合并在一起。

def repeatingkey_xor(string, key): res="" #字符串连接,存放每一次加密后的结果 #xrange方法使得每次处理len(key)长度的字符串 for i in xrange(0, len(string), len(key)): res += bytelist_to_hex(xor(str_to_bytelist(string[i:i+len(key)]), str_to_bytelist(key))) return res string = "Burning 'em, if you ain't quick and nimble\nI go crazy when I hear a cymbal" key = "ICE" print repeatingkey_xor(string, key)

输出结果:


The Cryptopals Crypto Challenges 解题报告(1)
Challenge 6: Break repeating-key XOR

题目要求:在该挑战中提供了一个文件challenge6.txt,文件中是使用重复密钥异或方法加密后,再经过base64编码后得到的文本,我们需要找到密钥,对其进行解密。

实现方法:

(1)猜测密钥长度KEYSIZE,尝试2到40

(2)汉明距离hamming_distance,即为两个字符串异或之后,二进制格式1的个数

(3)对于每个KEYSIZE,求得每个解密块两两之间的汉明距离,对KEYSIZE取平均值(大概选取四个KEYSIZE块就够了)

(4)选取2-3个最小汉明距离的KEYSIZE(如果选取了正确的密钥长度,密文块与密文块两两之间的汉明距离等于对应的明文块与明文块两两之间的汉明距离,两两块之间的汉明距离的值应该趋于小)

(5)获得KEYSIZE之后,对每一块的对应字节组合后的字符串与单字符异或,从而可以破解密钥。(例如,每一块的第一字节组合后的字符串,如果分组正确,那么他们所对应的密钥字节是相同的,这是可以使用破解单字符异或的方法,来逐字符的破解密钥)

(6)对不同KEYSIZE解密后的明文进行评估,选取得分最高的一组。

def hamming_distance(s1, s2): dis = 0 for i in range(min(len(s1), len(s2))): b = bin(ord(s1[i]) ^ ord(s2[i])) dis += b.count('1') return dis def guess_keysize(string): keys = [] for keysize in range(2, 40): blocks = [] count = 0 dis = 0 for i in range(0, len(string), keysize): count += 1 blocks.append(string[i:i+keysize]) if count == 4: break #选取四个块,两两组合求汉明距离 pairs = itertools.combinations(blocks, 2) for (x, y) in pairs: dis += hamming_distance(x, y) ndis = dis / keysize key = {'keysize': keysize, 'distance': ndis} keys.append(key) return sorted(keys, key=lambda c:c['distance'])[0:3] def guess_key(keysize, string): key = '' for i in range(keysize): now_str = '' #获取每个块相同位置的字符 for index, ch in enumerate(string): if index % keysize == i: now_str += ch key += chr(traversal_singlebyte(now_str)['key']) return key def break_repeatingkey_xor(string): keysizes = guess_keysize(string) candidate = [] plains = [] for keysize in keysizes: key = guess_key(keysize['keysize'], string) #二元组:重复密钥异或解密明文,对应密钥key plains.append((hex_to_str(repeatingkey_xor(string, key)), key)) return sorted(plains, key=lambda c:get_score(c[0]))[-1] f = open('challenge6.txt', 'r') s = f.read() string=base64.b64decode(s) res=break_repeatingkey_xor(string) print 'plaintext: \n'+res[0] print 'key: \n'+res[1]

输出结果:


The Cryptopals Crypto Challenges 解题报告(1)
The Cryptopals Crypto Challenges 解题报告(1)
Challenge 7: AES in ECB mode

题目要求:该挑战提供了一个文件challenge7.txt,文件中是经过AES-128 ECB模式加密后的base64编码的文本,已知密钥key,对加密后的文本进行解密。

key = “YELLOW SUBMARINE”

实现方法:

直接使用from Crypto.Cipher import AES调用模块,构造AES ECB生成器,调用其encrypt和decrypt方法进行加解密。注意到解密后的明文中末尾部分包含填充,因此我们可以使用removePKCS7padding方法去掉填充(方法的具体实现见challenge 9)

def aes_ecb_encrypt(key, plaintext): crypto = AES.new(key, AES.MODE_ECB) ciphertext = crypto.encrypt(plaintext) return ciphertext def aes_ecb_decrypt(key, ciphertext): crypto = AES.new(key, AES.MODE_ECB) plaintext = crypto.decrypt(ciphertext) return plaintext f = open('challenge7.txt', 'r') s = f.read() ciphertext = base64.b64deocde(s) key = "YELLOW SUBMARINE" plaintext = aes_ecb_decrypt(key, ciphertext) #这一步解密后的明文包含填充部分 plaintext = removePKCS7padding(plaintext) #去掉明文末尾的填充 print plaintext

输出结果:

(1)未去掉填充的末尾结果


The Cryptopals Crypto Challenges 解题报告(1)

(2)去掉填充后的完整结果


The Cryptopals Crypto Challenges 解题报告(1)
The Cryptopals Crypto Challenges 解题报告(1)
Challenge 8: Detect AES in ECB mode

题目要求:该挑战提供一个文件,文件内容是十六进制编码的若干加密字符串,其中一个字符串是通过AES ECB模式加密的,key未知。我们需要通过密文找到这个AES ECB加密的字符串。

实现方法:

由于ECB模式加密是静态和确定的,相同的16字节明文块总是生成相同16字节密文块。所以我们可以通过查找加密字符串中是否有相同的密文块,来判断是否为ECB模式。如果存在,则为ECB模式。

def detect_ecb(ciphertext): blocks = [b for b in chunks(ciphertext, 16)] detects = [] for b in blocks: if blocks.count(b) > 1: detects.append(b) if detects: return "ECB MODE detected!" else: return "" f = open('challenge8.txt', 'r') i = 1 for line in f: print i, ': ', detect_ecb(line) i = i + 1

输出结果:只有第133行的字符串被检测出ECB模式


The Cryptopals Crypto Challenges 解题报告(1)

Speak Up: Pindrop Raises $90 Million to Expand Voice Security

$
0
0

We’re moving into an age of voice computing, and devices like Apple’s Siri or Amazon’s Alexa are just the beginning. Soon we will be using our voice to operate our front doors, offices and automobiles. While this promises to make our lives more convenient, a growing reliance on voice technology also represents a security threat―notably from hackers who make seek to copy our voice.

All of this has proven to be a boon for Pindrop, a voice security firm that began by assisting call centers detect fraudsters, but now has ambitious plans to protect millions of voice-controlled devices. On Wednesday, the Atlanta-based firm announced it raised a $90 Series D funding round led by Vitruvian Partners, a European private equity firm, with contributions fromGoldman Sachs and others.

In an interview with Fortune , CEO Vijay Balasubramaniyan said the Internet-of-things represents the next frontier in voice security.

“In a voice controlled world, guarding our voice is going to be more important,” said Balasubramaniyan, adding that data breaches could include hackers capturing individuals’ voice prints.

Pindrop is already working with manufacturers to secure devices from vocal intruders. One such manufacturer is Allegion, which is known for front door locks, but is adapting its line of conventional security products for voice computing control.

While all sorts of devices can be connected to the Internet, a common feature among many of them is a camera and a microphone. Balasubramaniyan anticipates a future scenario where hackers imitate a person’s voice to compromise one device in a home―say a connected speaker―and then use it tell other devices in the house what to do.

Such a scenario doesn’t feel like an immediate threat, not least because our current batch of voice devices can still struggle with basic tasks. In our house, Alexa still regularly replies to basic queries with “Sorry, I don’t understand.”

Nonetheless, voice technology is rapidly improving and so is the ability to counterfeit voices. As Fortune editor Adam Lashinsky discovered when he visited Pindrop’s office last year, the company could synthesize his voice based on just a YouTube video.

Fortunately, Balasubramaniyan says Pindrop’s technology is able to detect any synthesized voice. Like the rest of the cybersecurity field, voice technology is a cat-and-mouse game between hackers and defenders but, for now at least, the defenders are in control. One reason Pindrop can keep up is because its core business of protecting call centers (an industry that reportedly employs 1 in 89 Americans) provides the company with massive amounts of data, which in turn let it hone its security.

Pindrop claims it is already profitable from an EBITDA standpoint, but will use the new Series D money to further expand its global footprint, and to expand its focus on the Internet-of-things.

The company is also in a partnership with phone giantVerizon to sell Pindrop security tools as part of an anti-fraud packages targeted at enterprise customers. In the U.S., Pindrop claims, 8 of the 10 largest banks and 5 of the country’s 7 largest insurers use its tools.

Other new strategic investors in the Series D include Allegion Ventures, Cross Creek, Dimension Data and Singapore-based EDBI. Existing investors ― CapitalG, IVP, Andreessen Horowitz, GV (formerlyGoogle Ventures) and Citi Ventures―also invested in the round. In 2016, when Pindropraised $75 million, the round was led up Google Capital.

Pindrop raises $90 million for biometric voice authentication

$
0
0

Call center phone fraud is responsible for an estimated $14 billion in losses annually, and it’s on the rise. The frequency of attacks rose by an estimated 113 percent in 2018, which is bad news for brands ― according to a recent survey, a full 41 percent of customers affected by fraud blame the company rather than the attacker.

That’s wherePindrop comes in. The seven-year-old Atlanta, Georgia-based startup provides a suite of multifactor anti-fraud and authentication software for call centers, and it has impressed a lengthy and growing list of investors. Today Pindrop announced a $90 million Series D funding round led by Vitruvian Partners, with participation from Allegion Ventures, Cross Creek, Dimension Data, EDBI, Goldman Sachs, and existing investors CapitalG, IVP, Andreessen Horowitz, GV (formerly Google Ventures), and Citi Ventures.

The latest round follows an $11 million Series A raisein 2013 that allowed Pindrop to expand its engineering, operations, and sales teams in Canada and Europe, and$35 million and $75 million Series B and Series D funding rounds, respectively. To date, Pindrop has attracted $212 million in investments.

It’s not for nothing. According to Pindrop, revenue is up 137 percent over the last three years, and net revenue retention with existing customers has risen 118 percent. It currently counts8 of the 10 largest insurance companiesin the U.S. among its clientele and says it has helped protect over 200 million consumer accounts and over $350 million in voice-based fraud and attacks this year alone.

Cofounder and CEO Vijay Balasubramaniyan said the Series D capital will be used to “boost … advancements” in Pindrop’s consumerinternet of things and voice technology and to strengthen its presence in Europe and Asia. It’s projecting triple-digit growth in EMEA bookings in 2019.

“Our broad range of investors collectively view Pindrop as the established industry leader for securing the future of voice as it moves beyond the voice channel and toward voice-enabled devices,” he said.

Balasubramaniyan conceived of Pindrop in 2010 while traveling abroad in India when he attempted to order a new suit from a local tailor. His bank flagged the international transaction as suspicious and tried to call him to verify the purchase, but couldn’t prove his identity over the phone.

In 2011, after earning his PhD at the Georgia Institute of Technology with a dissertation on analyzing the traits of phone calls to determine their unique characteristics ― a technique he dubbed “phoneprinting” ― he met with local entrepreneur Paul Judge. The two founded Pindrop with Mustaque Ahamad,Balasubramaniyan’s former academic advisor.

“Voice-based systems, both phone and IoT based, have traditionally been vulnerable to a range of security threats and fraud because of a lack of robust identity and security technology,” Judge said. “At Pindrop, we are bringing trust and security into voice-based interactions to enable the evolution of voice as the next computer interface.”

Pindrop claims its patented Pindrop Protect technology, which runs in the background of calls and takes into account factors such as location, behavior, device type, audio, voice, and time of day to confirm caller identity, can reduce fraud loss exposure by up to $500,000 for every 1 million calls. By scoring each call based on AI-driven anomaly detection and using voice printing to correlate matches with what Pindrop claims is one of the world’slargest audio databases of fraudulent calls, the company contends it’s able to lower handle times by up to 60 seconds.

Pindrop and Verizon Enterprise Solutionslast month jointly announced the Verizon VoIP Inbound Anti-Fraud and Authentication service, which integrates voice and multifactor authentications for enterprise call centers. And thanks to the new capital,Balasubramaniyan said the company’spoised to bring its voice authentication to voice-assisted smart devices ranging from Google Home and Amazon’s Echo lineup to smart locks and connected cars.

“Voice-enabled interfaces are expanding how consumers interact with IoT devices in their everyday lives, as well as IoT manufacturers’ ability to offer smarter and stronger solutions,” said Allegion Ventures president Rob Martens. “We’re excited about the future of voice technology and see Pindrop as a pioneer in the space. We look forward to working with Vijay and his team to accelerate the adoption of voice technology into new markets.”

Pindrop raises $90M to bring its voice-fraud prevention to IoT devices, and Euro ...

$
0
0

When it comes to how humans communicate with each other or with machines, voice is a major interface, with growth in the latter fuelled bythe rise of artificial intelligence, faster computing technology and an explosion of new devices ― some of which only, or primarily, work with voice commands.But the supreme reign of voice has also opened a window of opportunity for malicious hackers ― specifically, in the area of voice fraud.

Now, a security startup called Pindrop is announcing that it has raised $90 million to tackle this with a platform that it says can identify even the most sophisticated impersonations and hacking attempts, by analysing nearly 1,400 acoustic attributes to verify if a caller or a voice command is legit.

“We live ina brave new world where everything you thought you knew about security needs to be challenged,” saidVijay Balasubramaniyan, co-founder, CEO and CTO of Pindrop, who built the company (with co-founders Ahamad Mustaque and Paul Judge) originally out of his PhD thesis.

The funding is a growth round aimed specifically at two areas. First, taking US-based Pindrop into more international markets, starting with Europe ― Vijay spoke to me in London ― and coming soon to Asia. And second, to expand from customer service scenarios ― the vast majority of its business today ― into any applications that use voice interfaces, such as connected car platforms, home security devices, smart offices and smart home speakers.

To that end, this Series D includes a mix of strategic and financial investors: led by London’sVitruvian Partners, it also includes Allegion Ventures (the corporate venture arm of the security giant), Cross Creek, systems integrator Dimension Data (“Asyou grow you want to be able to sell through partners,” Balasubramaniyan says), Singapore-based EDBI (to help with its push into Asia), and Goldman Sachs. Google’s CapitalG, IVP, Andreessen Horowitz, GV and Citi Ventures ― all previous investors ― were also in this round.

(The latter group of investors also has at least one strategic name in it: Pindrop is already working with Google, the CEO said.)

Valuation is not being disclosed, but in Pindrop’s Series C round in 2017, the company was valued at $600 million post-mioney, according to PitchBook , and the valuation now is “much higher,”Balasubramaniyan said with a laugh. The company’s raised $212 million to date.

The crux of what Pindrop has built is a platform that makes a voice “fingerprint” that identifies not just the specific tone you emit, but how you speak, where you are typically calling from and the sounds of that space, and even your regular device ― something we can do now with the rise of smartphones that we typically don’t share with others ― with each handset having a unique acoustic profile. Matching all these against what is determined to be your “normal” circumstances helps to start to build verification,Balasubramaniyan explained.

Founded in 2011 in Atlanta, GA, most of Pindrop’s business today has been built around helping to prevent voice fraud in customer service engagements. That business, Balasubramaniyan said, is on the path to profitability by the first quarter of 2019 and continues to grow well, with a voice fraud problem in the space that costs the industry $22 billion ($14 billion in fraud, $8 billion in time and systems wasted on security questions). (Pindrop claims it has stopped over $350 million in voice-based fraud and attacks so far in 2018.)

Current customers include eight of the 10 largest banks and five largest insurance companies in the U.S., with more than 200 million consumer accounts protected at the moment.

“There are 3.6 million agents in customer service jobs in the UK, with one in every 89 people in the US in this role,” he noted. “But last year, there there were 4.4 million new assistants added to the market,” referring to all the devices, apps and services that have hit us, “andthat’s where we realised thatit’s about expansion for us.”

In cases like connected home or office scenarios, some of the ways that these might get hacked are only starting to become apparent, but we are unlikely to turn away from voice interfaces, and that is where a company like Pindrop (as well as competitors like Verint) come in.

“Voice-enabled interfaces are expanding how consumers interact with IoT devices in their everyday lives as well as IoT manufacturers’ ability to offer smarter and stronger solutions,” said Allegion Ventures President Rob Martens, in a statement. “We’re excited about the future of voice technology and see Pindrop as a pioneer in the space. We look forward to working with Vijay and his team to accelerate the adoption of voice technology into new markets.”

白硕:未来共识机制将如何演进和发展?三大趋势和新模式了解一下

$
0
0

11月30日,在由迅雷集团承办、互链脉搏支持的“2018国际区块链大会共识机制专题论坛”上,丹渥智能董事长、智子社区首席顾问、ChinaLedger技术负责人白硕参与大会并发表了题为“区块链共识机制的演进及未来发展方向”的演讲。


白硕:未来共识机制将如何演进和发展?三大趋势和新模式了解一下

图:丹渥智能董事长、智子社区首席顾问、ChinaLedger技术负责人白硕

白硕从共识机制的演进特点和未来发展趋势两方面阐述了他的研究成果。其认为,从效率、安全和开放性这三方面去评价共识算法,Algorand优势明显。

他将区块链共识机制的演进趋势总结为三点:

-从多到少;

- 从链到图;

-从确定到随机。

但白硕认为少并不一定就是好。随着参与共识的节点变少,目标集中还将带来“安全风险集中”和“不能抵抗阻断举措”的问题。

具体而言,在从多到少的演进中,逐步减少共识传播环节,降低共识复杂性;在从链到图的演进中,缩短证据链长度,降低存储开销;在从确定到随机的演进中,扩大混淆范围,降低共识节点被攻击概率。

在他看来,未来共识机制将向应用场景拓展。他还提出一种新的应用场景――撮合挖矿模式。即“把交易所撮合的结果和撮合的流程分解开,一部分人做撮合,一部分人验证撮合,在验证撮合的时候进行共识。”

话不多说,以下为白硕的演讲全文,互链脉搏对其进行不改变原意的编辑 enjoy~

白硕:

大家好!今天跟大家分享共识的话题。


白硕:未来共识机制将如何演进和发展?三大趋势和新模式了解一下

共识机制的由来跟分布式系统有关系,大家在做分布式系统时候集中的诉求,可表现为以下三方面:

一是一致性。就是同一时刻各个副本节点上的数据是同样的。

二是可用性。某些节点出现故障的情况下,仍有节点提供同样的服务。

三是分区容忍性。即有些失联场景下,另外的节点仍可提供服务。

不幸的是,这三个诉求不能同时满足。难点有两个:一是坏人的存在,有一些人故意作恶,把问题搞得特别复杂;另一个引入复杂性的来源是所谓“在途”,网络可能非常复杂。


白硕:未来共识机制将如何演进和发展?三大趋势和新模式了解一下

如果你不做这种同步的假定,而是在异步的情况下在途更加复杂,问题更加复杂化。所以带着这些问题,可将刚才说的归结为拜占廷将军问题,它的理解是要对其做一些简化或一些限定,比如说在途复杂性限定为某种意义上最终的同步,对于坏人的存在要求有一定的比例,坏人不能太多,如果太多会出现麻烦。

另外,这其中有好消息和坏消息。坏消息就是刚才三个诉求不能同时达到满足,好消息是如果最终同步成立的话,拜占廷可解,可解还是有条件的,好人要大于2/3。

在比特币出来之后,即在POW共识机制的假设场景下,好人大于一半就可以达成共识。在这其中又是好坏消息交杂,而且随着过程逐渐推进,区块链在应用落地时,它的实践性,就是实际可用、可以达成共识的机制条件还是相对较宽。

共识机制成为区块链的技术基石
白硕:未来共识机制将如何演进和发展?三大趋势和新模式了解一下

共识机制是区块链的技术基石,对此,存在四大看点:数据组织上有它的特色,认账就是共识机制上的特色,可编程性,智能和约这方面有它的特色,还有自带激励在博弈规则方面有它的特色。

为什么要讲博弈规则?我看到现在有倾向把博弈、机制设计、利益因素带进了共识,共识不再是进行表决的一个孤立的事件,而是跟历史、时间快慢相关,这些因素都进来之后,日渐呈现一种五花八门的状况。


白硕:未来共识机制将如何演进和发展?三大趋势和新模式了解一下

基于证明是一类,如POW、POS、DPOS;基于投票的有PBFT、PAXOS、RAFT;还有基于随机性的,其分两个阶段,一个阶段是用随机性产生一个小的集合,第二个是用小的集合来按照投机与投票的方式来做,可以看这三大门类。

1、基于证明的共识机制
白硕:未来共识机制将如何演进和发展?三大趋势和新模式了解一下

首先看基于证明的共识机制,其将证明通过广播呈现,并通过历史来继承。因为网络复杂性,这其中看到的历史不一定是真实的历史,需要历史沉淀和消化,在沉淀和消化过程中可能会出现反驳。只要反驳出现,就要放弃原有的证明,但是会等一段时间,比如比特币等六个,如果六个连续都没有反驳出现我就要把这个确定下来,这是持续一段时间如果没有反驳出现就要确认。基于证明和反驳的共识机制,是公链上目前主流的一种机制。

2、基于投票的共识机制
白硕:未来共识机制将如何演进和发展?三大趋势和新模式了解一下

基于投票的共识机制,其范围是封闭的,但该技术也在改进,从源头上看,投票者需要被以一种方式联编,联编后一轮一轮做,投票事项孤立,可以不跟历史有任何关联。历史因素、时间因素乃至博弈因素都没有办法建立,只是依靠数学和算法。

随着节点的增加,这三者实际上是互动的,因为投票要求互动,这些互动的数据传输量非常可靠,以上就是节点增加,流量也会跟着增加。

各共识机制的评价:Algorand表现最佳
白硕:未来共识机制将如何演进和发展?三大趋势和新模式了解一下

如图所示,从效率、安全和开放性这三方面来做评价。POW效率较低,安全程度较高,是开放的;POS效率中等,安全中等,是开放的;DPOS效率高,安全低,是开放的;PBFT效率中等,安全高,不开放;RAFT效高的,安全性低,不开放;因为不是拜占廷,Algorand效率高,安全性也高,也开放。

从这个表格上,大家估计能看出我的倾向。

共识机制演进新趋势:从多到少 从链到图 从确定到随机
白硕:未来共识机制将如何演进和发展?三大趋势和新模式了解一下

再来看共识机制演进的新趋势。

从多到少,是指参与共识的节点;从链到图是证明的呈现方式或者历史的组织方式;从确定到随机指的是这种参与共识的节点的选择机制。

趋势一:从多到少

少就是好吗?少确实快,但是参与共识的节点少了之后目标愈为集中。

目标集中将带来两个问题。


白硕:未来共识机制将如何演进和发展?三大趋势和新模式了解一下

其一,安全风险集中。如果参与共识的少数节点配置同质化,漏洞也将同质化,被人抓住了漏洞,尤其是可以掌控平台的全部权限的漏洞,后果将非常严重。所以当360揭示了EOS安全漏洞事件之后,EOS反应非常谨慎,必须得处理这件事。


白硕:未来共识机制将如何演进和发展?三大趋势和新模式了解一下

其二,不能抵抗阻断举措。一个少数节点参与共识,如果将通过相同少数节点的道路阻断,就形成不了一个共识。恰恰是目前提倡的将不可治理的区块链和可治理的区块链进行隔离和有条件导通,如果这件事情做成,那么那种就更不可行。所以,少不一定好,少有它抗拒不了的一些因素,对它不利。

趋势二、从链到图
白硕:未来共识机制将如何演进和发展?三大趋势和新模式了解一下

从链到图,我们经常说的DAG,就是有向无环图。基于这个可以看到很多新的玩法。它的总的思想是在比特币里看到历史给现在的证明是通过链的方式组织的,一些新的花样都是基于图的。历史给现实的证明图谱不是链式而是图。

趋势三、从确定到随机

第三个趋势是,从确定到随机。

那么,AlgoRand为何受到重视?整个链很多人都有使用权,但是在DPOS这种共识机制下,只有少数节点有共识权,一旦被攻击、腐蚀,他们就可能做出错误的共识。

而AlaWgoRand改变了这件情。怎么改变的?很多节点都有潜在控制权,谁得到实际控制权是随机产生,而且每次都不一样和可变,这种变化下,事实上还是少数节点在做共识,通过这种将目标游动、打散,从而在面对特定攻击时可产生抵抗力。


白硕:未来共识机制将如何演进和发展?三大趋势和新模式了解一下

在此其中,随机是怎么产生的?大家知道伪随机数虽然由算法产生,但经不起攻击。AlogRand采用一种随机抽签的方式,每一轮都有种子,然后潜在的共识者用私钥签名,再得到凭证,拿凭证筹建,抽到签的成为验证者,这些在较小范围的验证者经过拜占廷共识,得到一个共识输出,这是一轮。下一轮又要变下一轮的种子…如此一轮又一轮,每一轮的潜在范围有变化,其具体抽出来的验证者也会不一样。


白硕:未来共识机制将如何演进和发展?三大趋势和新模式了解一下

AlogRand面临的挑战在于真随机性。

如图所示,固定种子伪随机的方式有很多攻击手段,所以不安全而可变种子,其中有不同的做法。大家认为真随机的做法有一些物理条件决定下一轮种子,这里的物理条件,如天气、温度、气压等等,人不可掌控的因素决定下一轮的种子。AlagRand,不算真随机,比伪随机有一些进步,在安全性上有抗打击能力。

总结而言,整个共识机制演进的逻辑,从多到少减少了传播的环节,降低了共识复杂性。从链到图,可以缩短证据链长度,降低存储开销。从确定到随机,扩大了混淆或者潜在共识者范围,从而降低共识节点被攻击的概率。

共识机制向应用场景拓展
白硕:未来共识机制将如何演进和发展?三大趋势和新模式了解一下

共识机制也在向应用场景进行拓展。其中有拆解、执行与验证过程,其可在很多场景下拆解出来,然后变成一个共识的过程。这里边理论、历史,区分时间关系,我们一一说。

1、基于证明的共识

基于证明的共识有一个共性――验证易,求得难。凡有这种非对称性,即可理解为求解和验证之间存在非对称性,原理上都可用作共识。

2、算力、存储挖矿

算力/存储挖矿其实也可以。内容分发,缓存体系等,可把缓存的贡献记入在内。

3、AI挖矿

AI也可以用来挖矿,根据对他们提交的结果进行裁决来实现。比如一个原始数据进行学习,训练集中发布给社区,测试集留下他们来裁决,这是一种架构。

4、撮合挖矿
白硕:未来共识机制将如何演进和发展?三大趋势和新模式了解一下

今年10月31日,我和几位合作伙伴上传了一种新技术,叫撮合挖矿。如何理解,即把交易所撮合的结果和撮合的流程分解开,一部分人做撮合,一部分人验证撮合,在验证撮合的时候进行共识。

这其中的原则,就是要拆解,把撮合的订单簿的本身撮合过程,和持仓调整过程,进行竞争撮合。率先撮合出来的可以获得一定的奖励,撮合错了也会得到相应惩罚。


白硕:未来共识机制将如何演进和发展?三大趋势和新模式了解一下

如图所示,这其中的订单簿,在裁决时被拆解,会从量价的检验和交易对手正确性检验的两个纬度进行拆解、独立,然后验证。这样一来,验证时间远小于撮合时间,非对称性就成立了。


白硕:未来共识机制将如何演进和发展?三大趋势和新模式了解一下

整合过程,持仓检查和持仓调整交给裁决来做,撮合只关心量价,只对量价进行撮合,这不仅提高了效率,也提高了持仓的安全性。

拆解这种思想,其实对于实体经济也是可以用的。

因为实体经济当中有一些众包因素,而且越来越多。共享经济下,每个人都是签约的干活方,即签约外包方,真正公司的实际雇员和正式雇员将慢慢淡化。在这种淡化趋势下,工作干得怎么样,谁在干,这件事也是可以拆解开的,那么,之后怎么激励也将涵盖在其中。


白硕:未来共识机制将如何演进和发展?三大趋势和新模式了解一下

隐私共识的要求更高。在没有看见实体是什么的情况下,要对其满足一个等式的进行共识。比如,同态加密可以做这样的事情,其他的也可以做这样的事情,这就是是隐私共识。

关于共识机制的发展脉络和未来趋势的看法就讲到这,谢谢大家。

(文丨互链脉搏 作者丨李秀琴 ,转载请注明出处。)

APT最前线:疑似MuddyWater黑客组织使用新后门攻击土耳其政府

$
0
0

APT最前线:疑似MuddyWater黑客组织使用新后门攻击土耳其政府

MuddyWater是一个早已名声在外的网络犯罪组织,自2017年以来一直很活跃。其目标群体遍布中东和中亚,主要的攻击手段是使用带有恶意附件的鱼叉式钓鱼电子邮件。最近,该组织被发现与今年3月份针对土耳其、巴基斯坦和塔吉克斯坦的一场攻击活动有关。

自2017年Malwarebytes首次在报告中指出MuddyWater针对沙特政府实施了精心策划的间谍攻击以来,该组织就引发了广泛的关注。在首份报告发布之后,其他一些安全公司也陆续对其进行了分析。但基于所有这些报告,趋势科技表示,他们也只是看到了该组织所使用的工具、技术和过程(TTP)的微小变化。

最近,趋势科技再次观察到了一些使用了类似于已知的MuddyWater TTP的有趣交付文档。这些文档被命名为Raport.doc或Gizli Raport.doc (土耳其语,意为“报告”或“机密报告”)和maliyeraporti(Gizli Bilgisi).doc(土耳其语,“财务(机密信息)”)――所有这些文档都是从土耳其上传到Virus Total的。趋势科技的分析显示,该组织投递了一个采用PowerShell编写的新后门,类似于已知的MuddyWater后门――POWERSTATS。但是,与早前使用POWERSTATS的攻击活动不同,在新的活动中,命令和控制(C&C)通信和数据转移是通过使用云存储服务提供商的API来完成的。

技术分析

下图展示的是在新活动中使用的恶意附件,类似于其他任何典型的钓鱼文档,试图伪装成合法文档。内容经过模糊处理的钓鱼文档包含了一些被趋势科技认定为属于某些土耳其政府机构的logo,用于强化伪装并诱使用户相信这些文档是合法的。钓鱼文档告诉用户,它是基于“旧版本”的Microsoft Word创建的,并提示用户启用宏来显示内容。如果目标受害者启用了宏,那么恶意攻击则将继续。


APT最前线:疑似MuddyWater黑客组织使用新后门攻击土耳其政府

图1. 虚假Office文档试图诱使用户启用恶意宏。包含不同土耳其政府实体的logo


APT最前线:疑似MuddyWater黑客组织使用新后门攻击土耳其政府

图2.一份类似的虚假Office文档使用了一家与税收相关的土耳其政府机构的logo

宏包含以base52编码的字符串。需要指出的是,除了MuddyWater之外,base52很少被其他网络犯罪组织所使用。众所周知,该组织通常会使用base52来编码他们的PowerShell后门。

在启用宏之后,一个.dll文件(内嵌PowerShell代码)和一个.reg文件将被放入到%temp%目录中。然后,宏将运行以下命令:

“C:\windows\System32\cmd.exe” /k %windir%\System32\reg.exe IMPORT %temp%\B.reg

运行此注册表文件,会导致以下命令被添加到Run注册表项:

rundll32 %Temp%\png.dll,RunPow
APT最前线:疑似MuddyWater黑客组织使用新后门攻击土耳其政府

图3. Run注册表项

趋势科技认为,RunPow代表的就是“run PowerShell”,并会触发内嵌在.dll文件中的PowerShell代码。PowerShell代码包含多个混淆层,其中第一层包含一段经base64编码和加密的长代码,其中的变量使用英语脏话命名。


APT最前线:疑似MuddyWater黑客组织使用新后门攻击土耳其政府

图4.经加密的PowerShell代码

其他的层都是简单的、经过混淆处理的PowerShell脚本,而最后一层则是主后门的主体。这个后门具备一些类似于早前发现的Muddywater后门的特征。

首先,这个后门会收集系统信息,并将各种信息连接成一个长字符串。每一种信息均以“::”分隔,其中包括操作系统名称、域名、用户名、IP地址等。


APT最前线:疑似MuddyWater黑客组织使用新后门攻击土耳其政府

图5.由从受害者系统收集的系统信息构成的字符串

早前的MuddyWater后门也收集了类似的信息,但使用了不同的分隔符:


APT最前线:疑似MuddyWater黑客组织使用新后门攻击土耳其政府

图6. 由早前的Muddywater后门样本从受害者系统收集的系统信息构成的字符串

如上所述,这个新后门与早前的Muddywater后门之间的另一个区别是C&C通信是通过将文件放到云存储服务来完成的。进一步的分析显示,通信函数所使用的文件采用的格式为“md5(硬盘序列号)+各种扩展名”,具体采用哪种扩展名取决于该文件的用途。

.cmd-带有一个将要执行的命令的文本文件 .reg-由myinfo()函数生成的系统信息,请参考上面的截图 .prc-.cmd文件执行后的输出,仅存储在本地计算机上 .res-.cmd文件执行后的输出,存储在云存储中
APT最前线:疑似MuddyWater黑客组织使用新后门攻击土耳其政府

图7. .cmd文件内容的示例


APT最前线:疑似MuddyWater黑客组织使用新后门攻击土耳其政府

图8. .reg文件内容的示例


APT最前线:疑似MuddyWater黑客组织使用新后门攻击土耳其政府

图9. .res文件内容的示例

在这个新后门和早前的MuddyWater后门中,这些文件被用作一种异步机制,而不是直接连接到设备并发出命令。攻击者将一个将要执行的命令保存在.cmd文件中,然后反过来检索包含命令执行结果的.res文件。

对于新后门和早前的MuddyWater后门而言,.res文件内容的编码方式也是不同的。另一方面,对于早前的MuddyWater后门而言,这些文件会被临时存储在受感染的网站上,而对于新后门而言,它使用了合法的云存储服务。

我们可以通过将“00”替换为空字符串,然后将其从十六进制转换为ASCII,最后对字符串进行反编译来解码.res文件。下图展示的是对图9中的.res文件进行解码后的结果。


APT最前线:疑似MuddyWater黑客组织使用新后门攻击土耳其政府

图10.解码后的.res文件

新后门支持以下命令:

$ upload-将文件上传到云存储服务 $ dispos-移除持久性 $ halt-退出 $ download-从云存储服务下载文件 无前缀-通过Invoke Expression(IEX)执行命令,这是一个PowerShell命令,用于在本地计算机上运行命令或表达式。

趋势科技表示,其分析显示这场攻击活动的目标是与金融和能源部门有关的土耳其政府机构。它与早前另一场针对了多个土耳其政府实体的MuddyWater活动存在一些相似之处。如果这个后门的确来自该组织,那么它则有助于揭露该组织是如何改进和测试他们的新工具的。

解决方案和建议

此类后门的主要交付方式是借助鱼叉式网络钓鱼电子邮件或垃圾邮件,攻击者往往会使用社会工程来诱使目标用户打开恶意文档。因此,对于任何组织或企业的雇主和雇员来说,能够识别网络钓鱼攻击并将合法电子邮件与恶意电子邮件区分开来都是极为重要的。意识到这些威胁及其使用的策略,是有效避免遭受其害的第一步。

除了对网络钓鱼和社会工程必要的认识和意识之外,准备好有效的分层安全解决方案也很重要。

声明:本文来自黑客视界,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如需转载,请联系原作者获取授权。

针对美国智库、非盈利组织及公共部门的攻击事件

$
0
0

针对美国智库、非盈利组织及公共部门的攻击事件
一、前言

路透社最近报道了针对全球各类目标的一次黑客攻击活动。在路透社相关报道发表之前,微软研究人员已经在密切跟踪这个攻击组织。

根据我们传感器收集到的数据,此次攻击活动主要针对的是公共部门机构和非政府组织,如智库和研究中心等,但也包括教育机构以及石油、天然气、化学、酒店领域的私营企业。

使用 Microsoft Threat Protection 解决方案的客户能免受此次攻击影响。Microsoft Threat Protection采用了基于行为的防护机制,能够在早期阶段阻止恶意活动。 Office 365 Advanced Threat Protection 能够拦截邮件中的恶意URL,阻止基于邮件的攻击活动(也能处理首次发现的样本)。与此同时, windows Defender Advanced Threat Protection 也能通过大量告警机制揭露攻击者在攻击环节中使用的各种技术。

第三方安全研究人员认为此次攻击活动由APT29(即CozyBear)所主导,该组织与我们标记的YTTRIUM攻击组织有较大重叠。虽然分析人员非常严谨,但我们尚未找到足够的证据将此活动与YTTRIUM联系在一起。

无论如何,由于受害者身份特殊,并且我们能看到国家级攻击活动的影子,因此微软将此次威胁事件通知了数百个组织中上千个潜在的受害者。作为 Defending Democracy Program 的一部分,微软鼓励满足条件的组织参与 Microsoft AccountGuard ,这项服务能帮助容易成为攻击目标的客户免受网络安全威胁影响。

二、攻击概览

此次攻击活动于11月14日早晨开始,攻击目标似乎集中在与政策制定、政治事务或者在该领域有一定影响力的组织。


针对美国智库、非盈利组织及公共部门的攻击事件

图1. 钓鱼攻击目标分布图

虽然攻击目标遍布全球,但主要集中在美国,特别是华盛顿特区及周边区域。其他目标还位于欧洲、香港、印度以及加拿大。


针对美国智库、非盈利组织及公共部门的攻击事件

图2. 钓鱼攻击区域分布图

钓鱼邮件内容伪装成来自OneDrive的共享通知,如路透社报道中提到的,攻击者伪装成在美国国务院工作的人员身份。如果受害人点击了钓鱼邮件中的链接,就会触发攻击链,最终下载并被植入DLL后门,使攻击者能够远程访问收件人的计算机。


针对美国智库、非盈利组织及公共部门的攻击事件

图3. 攻击链

三、技术分析 投递方式

攻击活动中使用了钓鱼邮件,伪装成来自OneDrive的文件共享通知:


针对美国智库、非盈利组织及公共部门的攻击事件

图4. 钓鱼邮件内容

邮件中包含指向合法网站的某个链接,但该网站已经被攻击者成功入侵:

hxxps://www.jmj.com/personal/nauerthn_state_gov/TUJE7QJl[random string]

链接中使用的随机字符串很可能用于识别点击该链接的不同用户。然而,我们观察到的所有样本使用的都是同一个链接,指向同一个网站:

hxxps://www.jmj.com/personal/nauerthn_state_gov/VFVKRTdRSm

当用户点击该链接时,就会收到包含恶意LNK文件的一个ZIP压缩文档。一次攻击中使用的所有文件都采用相同的文件名,如 ds7002.pdf 、 ds7002.zip 以及 ds7002.lnk 。

后门安装

LNK文件为攻击的第一阶段,该文件会执行经过混淆的一个PowerShell命令,从LNK文件中释放出经过base64编码的payload,payload数据从文件 0x5e2be 偏移地址开始,大小为16,632个字节。


针对美国智库、非盈利组织及公共部门的攻击事件

图5. LNK文件中的内容

这个payload也是经过高度混淆的一个PowerShell脚本,也会被解码运行:


针对美国智库、非盈利组织及公共部门的攻击事件

图6. 解码后的第二个脚本

第二个脚本会从 .LNK 文件中提取处另外2个资源:

ds7002.PDF cyzfc.dat 命令控制

PowerShell脚本会将第一阶段DLL释放到 %AppData%\Local\cyzfc.dat ,这是一个64位DLL程序,具有一个导出函数: PointFunctionCall 。

随后,PowerShell脚本调用 rundll32.exe 来执行 cyzfc.dat 。第一阶段的命令及控制(C2)服务器地址为 pandorasong[.]com (IP为 95.216.59.92 ),连接成功后, cyzfc.dat 会执行如下操作,开始安装最终payload:

1、为第二阶段payload分配一个 ReadWrite 页面;

2、以资源形式提取第二阶段payload;

3、从第一个payload的 0xEF 偏移处提取头部信息;

4、将头部数据与从 0x12A 地址开始的资源数据拼接起来;

5、使用循环异或( ROR1 )方式,解密第二阶段payload,初始秘钥为 0xC5 。


针对美国智库、非盈利组织及公共部门的攻击事件

第二阶段payload实际上是Cobalt Strike(一个商用渗透测试工具)的一个实例,会执行如下操作:

1、定义一个本地命名管道,格式为 \\.\pipe\MSSE-<number>-server ,其中 <number> 为0到9897之间的一个随机数;

2、将payload通过XOR算法解密到一个新的 RW 内存区域,这次XOR秘钥非常简单:每4个字节使用 0x7CC2885F 来解密;

3、将这段区域设置为 RX 标志;

4、创建一个线程,开始运行paylaod。


针对美国智库、非盈利组织及公共部门的攻击事件
针对美国智库、非盈利组织及公共部门的攻击事件
针对美国智库、非盈利组织及公共部门的攻击事件

将全局数据写入管道的过程实际上是写入了第三个payload,这个payload经过XOR加密处理,加密方式与数据读取方式相同。payload解密后会得到一个PE文件,文件头为Meterpreter头。恶意软件会解析PE头部中包含的指令,将控制权移交给反射加载器:


针对美国智库、非盈利组织及公共部门的攻击事件

第3个payload加载成功后会连接C2服务器,C2服务器地址已硬编码到PE文件的配置信息区域中,而配置信息会在第3个payload运行时异或解密:


针对美国智库、非盈利组织及公共部门的攻击事件

配置信息中主要包含的是C2信息:


针对美国智库、非盈利组织及公共部门的攻击事件

CobaltStrike是一个功能丰富的渗透测试攻击,可以为远程攻击者提供各种功能,比如提升权限、获取用户输入信息、通过PowerShell或者WMI执行任意命令、侦察踩点、通过各种协议与C&C服务器通信以及下载并安装其他恶意软件等。

四、缓解措施

Windows Defender ATP 可以检测与攻击相关的已知文件系统及网络特征。此外,也会根据行为来检测LNK文件相关操作。如果看到以下告警信息,则表明当前环境中存在攻击行为:

检测到高级威胁特征 检测到与高级威胁有关的网络活动 经过签名的程序已执行低信誉度任意代码 打开可疑的LNK文件

网络防护机制可疑阻止连接到可疑域名及IP地址的行为。大家也可以使用如下 attack surface reduction (攻击面减少)规则来阻止与此次攻击活动关联的恶意行为:

Block executable files from running unless they meet a prevalence, age, or trusted list criteria

通过Windows Defender Security Center,安全运营团队可以调查这些告警信息,分析主机、用户及 攻击事件 视图,跟踪端到端攻击活动。在自动化调查及响应功能、 威胁分析 、高级搜索及 自定义检测 的帮助下,安全运营团队能够保护网络环境免受此类攻击影响。大家可以注册使用免费版 Windows Defender ATP ,体验针对高级攻击威胁的防护机制。

可以使用如下高级搜索查询语句,搜索网络环境中是否存在此类攻击活动:

//Query 1: Events involving the DLL container
let fileHash = "9858d5cb2a6614be3c48e33911bf9f7978b441bf";
find in (FileCreationEvents, ProcessCreationEvents, MiscEvents,
RegistryEvents, NetworkCommunicationEvents, ImageLoadEvents)
where SHA1 == fileHash or InitiatingProcessSHA1 == fileHash
| where EventTime > ago(10d)
//Query 2: C&C connection
NetworkCommunicationEvents
| where EventTime > ago(10d)
| where RemoteUrl == "pandorasong.com"
//Query 3: Malicious PowerShell
ProcessCreationEvents
| where EventTime > ago(10d)
| where ProcessCommandLine contains
"-noni -ep bypass $zk=' JHB0Z3Q9MHgwMDA1ZTJiZTskdmNxPTB4MDAwNjIzYjY7JHRiPSJkczcwMDIubG5rIjtpZiAoLW5vdChUZXN0LVBhdGggJHRiKSl7JG9lPUdldC1DaGlsZEl0"
//Query 4: Malicious domain in default browser commandline
ProcessCreationEvents
| where EventTime > ago(10d)
| where ProcessCommandLine contains
"https://www.jmj.com/personal/nauerthn_state_gov"
//Query 5: Events involving the ZIP
let fileHash = "cd92f19d3ad4ec50f6d19652af010fe07dca55e1";
find in (FileCreationEvents, ProcessCreationEvents, MiscEvents,
RegistryEvents, NetworkCommunicationEvents, ImageLoadEvents)
where SHA1 == fileHash or InitiatingProcessSHA1 == fileHash
| where EventTime > ago(10d)

以上规则查询的是过去10天内的安全事件,大家可以根据实际情况,修改 EventTime 的值。

五、IOC

文件(SHA-1):

ds7002.ZIP: cd92f19d3ad4ec50f6d19652af010fe07dca55e1
ds7002.LNK: e431261c63f94a174a1308defccc674dabbe3609
ds7002.PDF (PDF诱饵文件): 8e928c550e5d44fb31ef8b6f3df2e914acd66873
cyzfc.dat (第一阶段): 9858d5cb2a6614be3c48e33911bf9f7978b441bf

URL:

hxxps://www.jmj[.]com/personal/nauerthn_state_gov/VFVKRTdRSm

C&C服务器:

pandorasong[.]com (95.216.59.92) (第一阶段C&C服务器)

Activ8me fronts court again over misleading consumer allegations

$
0
0

The competition watchdog, the ACCC, has initiated court action against Internet provider Activ8me for allegedly making false or misleading representations over advertising of its broadband services.

The latest action by the Australian Competition and Consumer Commission is the second time this year it has taken enforcement action against Activ8me - the trading arm ofAustralian Private Networks - for engaging in conduct that it alleges is misleading.

In the latest court action announced on Wednesday, the ACCC alleges that, between June and October this year, Activ8me breached the Australian Consumer Law when it made the false or misleading claims in three direct mail advertisements and five online banner advertisements marketing its Opticomm fibre-to-the-premises (FTTP) packages.

“Activ8me sent thousands of advertisements with allegedly false or misleading claims about the speed, data limits and costs of its internet services,” said ACCC Deputy Chair Delia Rickard.

The ACCC, which has initiated action in the Federal Court, alleges that Activ8me made false and misleading representations when it told consumers they could access speeds of up to 100Mbps for $59.95 a month with no setup fee. In fact, the $59.95 plan only offered speeds of 12/1Mbps and a set-up fee of $99.95 applied if the consumer did not sign up to a 12-month plan.

The ACCC says Activ8me also told consumers that they would receive unlimited data when in fact Activ8me could suspend access or charge more for data use it deemed ‘unreasonable’.

“This is the second time this year that the ACCC has taken enforcement action against Activ8me for engaging in conduct that we allege is misleading, after we issued an Infringement Notice for false or misleading claims in March,” Rickard said.

“Our decision to take court proceedings this time shows how seriously the ACCC takes Activ8me’s further conduct.”

The ACCC is seeking declarations, injunctions, pecuniary penalties, a corrective notice, consumer redress, a compliance program and costs.

The ACCC has taken action against a range of telecommunications companies in relation to internet services, including misleading broadband speed claims by Telstra, Optus, TPG, Dodo, iPrimus and Commander, MyRepublic and iiNet and Internode.

And the ACCC has also taken action against Optus in relation to the transition to the NBN.

47 REASONS TO ATTEND YOW! 2018

With 4 keynotes + 33 talks + 10 in-depth workshops from world-class speakers, YOW! is your chance to learn more about the latest software trends, practices and technologies and interact with many of the people who created them.

Speakers this year include Anita Sengupta (Rocket Scientist and Sr. VP Engineering at Hyperloop One), Brendan Gregg (Sr. Performance Architect Netflix), Jessica Kerr (Developer, Speaker, Writer and Lead Engineer at Atomist) and Kent Beck (Author Extreme Programming, Test Driven Development).

YOW! 2018 is a great place to network with the best and brightest software developers in Australia. You’ll
be amazed by the great ideas (and perhaps great talent) you’ll take back to the office!

Register now for YOW! Conference

Sydney 29-30 November

Brisbane 3-4 December

Melbourne 6-7 December

Register now for YOW! Workshops

Sydney 27-28 November

Melbourne 4-5 December

REGISTER NOW!

LEARN HOW TO REDUCE YOUR RISK OF A CYBER ATTACK

Australia is a cyber espionage hot spot.

As we automate, script and move to the cloud, more and more businesses are reliant on infrastructure that has the high potential to be exposed to risk.

It only takes one awry email to expose an accounts’ payable process, and for cyber attackers to cost a business thousands of dollars.

In the free white paper ‘6 Steps to Improve your Business Cyber Security’ you’ll learn some simple steps you should be taking to prevent devastating and malicious cyber attacks from destroying your business.

Cyber security can no longer be ignored, in this white paper you’ll learn:

How does business security get breached?

What can it cost to get it wrong?

6 actionable tips

DOWNLOAD NOW!


5 Online Security Measures to Survive as an eBusiness

$
0
0

Cybersecurity is a broad term that encompasses all the technologies geared toward protecting networks and computers, along with the software and data kept on them. While more and more data today can be accessed via the internet, online security has become the major issue for businesses.


5 Online Security Measures to Survive as an eBusiness

The risks associated with online security are constantly and quickly increasing. The number of internet users steadily grows as well as the amount of information stored online. At the same time, hacking techniques evolve, including numerous social engineering tactics. As a result, online security issues are likely to become more prevalent, particularly in the business sphere.

Menlo Security annual research suggests that 42% of Alexa top 100,000 websites are compromised. So what do you need to know to safeguard your online business? We explore five online security measures that will help keep you on the right track.

#1. Remember that S in HTTPS is forSecurity

The HTTPS protocol ensures that the data exchange between the user and your website is encrypted and has no intermediaries. It proves that your site is actually your site and not its “shadow copy” created by a hacker, which increases the trust of potential visitors.


5 Online Security Measures to Survive as an eBusiness

Apart from security, HTTPS means good SEO (although it’s not reflected in the acronym). Back in 2014, Google announced that they would use HTTPS as a ranking signal, which became one of the biggest incentives for webmasters. As a result, HTTPS has become a standard that every self-respecting organization should follow.

The key point here isn’t so much HTTPS encryption, as it is the ability of big companies like Google to set industry standards. Search engines, on which most online businesses are dependent in some way, are the obvious example but legislation is another key area to consider. It will be vital in the future that developers are aware of the demands of both big companies like Google and legislators, and that they tailor their online security measures accordingly.

#2. Use Third-party Tools (But with aCaution)

One of the biggest areas of growth in cybersecurity over the last few years has been the development of third-party software aimed at developers. There’s often an assumption on the part of businesses that developers have sufficient knowledge to adequately protect websites and apps from attack. Yet this isn’t always the case.


5 Online Security Measures to Survive as an eBusiness

Automation is another key part of the picture in regards to the use of third-party software. Tools that allow developers to automate important aspects of the security testing process are vital for allowing the proper allocation of resources and for ensuring consistent and up-to-date testing in the long-term. The widespread implementation of automated processes is also allowing developers to focus their attention on app vulnerabilities that are difficult to detect with non-human technologies.

Of course, a tool is just a tool, you still need a professional to choose the right one, fine-tune it, and make the most of it. Note that unproven open-source tools may harm your software instead of protecting it.

#3. Watch YourIoT

Because the focus of security developers has largely been on desktop browser-based apps, software for smartphones and other connected devices has been left somewhat vulnerable. And hackers are increasingly taking advantage of these opportunities.


5 Online Security Measures to Survive as an eBusiness

The fast-growing ecosystem of devices that make up the internet of things also presents another prime hacking opportunity, one with potentially far more serious consequences than traditional website breaches. Gartner predicts that by 2020 there will be more than 20 billion connected devices worldwide. That means an immense attack surface and ominous consequences as to how stolen information may be exploited. Connected devices are now used for everything from tracking the user’s location to managing and monitoring hospital equipment. Think of the havoc hackers could wreak if they are able to disrupt these systems.

To secure your IoT devices, keep the firmware up to date, change the default credentials, and disable any P2P features. There are also special tools for IoT security scanning (go to #2).

#4. Keep in Mind Users’ Responsibilities

In any discussion about web security, it’s always important to highlight the issue of human weakness. The fact that most consumers are unaware of security threats, particularly in regards to B2C, but also within the B2B sphere as well, is a cause of mounting concern.


5 Online Security Measures to Survive as an eBusiness

Companies are addressing this problem in two ways. First, the integration of mandatory two-step authentication into apps is becoming increasingly common. This is especially true in areas where security is of vital importance, such as banking. Examples include messaging a pin number to users after they have entered their password or requiring further security details when a login attempt is made from a new location.

Secondly, users are actively being encouraged and advised to adopt safer browsing habits, particularly in the way that they use and store passwords and share data online. When it comes to security, an extra reminder can’t hurt your users.

#5. Balance the Speed and Quality of Web Development

The huge increase in the demand for web apps and complex site architecture is something of a double-edged sword. Whilst it has pushed app-related security issues into the limelight and resulted, as mentioned, in the creation of a host of third-party apps, it has also prompted development companies to streamline and speed up their processes to meet the increased demand. In many cases, security has suffered as a result.


5 Online Security Measures to Survive as an eBusiness

Attempts to address problems arising from this phenomenon have taken a number of forms. According to the experience of web development company Iflexion , applying the DevOps approach helps structure processes and increases productivity of a web development team. This allows for speedy completion of projects whilst taking advantage of expertise from a number of key people and departments within the organization.

Conclusion

More devices and more users mean greater risk. It’s vital that companies of all shapes and sizes work from an understanding of the nature of these risks when shaping their approach to web development. Not only will they be providing a safer experience to their customers, but also it’s very likely that they will save both time and resources in the process.

900+软件中招 “网赚”成“微信支付”勒索病毒重灾区

$
0
0

12月初,一款“奇葩”的勒索病毒在国内爆发后并被360等安全公司迅速破解,这款勒索病毒被打上了N种标签,“微信支付”“支付宝盗号”“95后黑客”“供应链污染”“灰产软件中招”……

据了解,这款国内首例以微信支付作为付款方式的勒索病毒,通过感染“易语言”开发工具,实现了快速传播,,除了模块中的勒索病毒之外,它还包含了一款盗号木马,经360技术人员的分析,该木马会试图窃取支付宝、京东、163邮箱、微博、百度网盘、QQ、天猫、阿里旺旺、酷狗、迅雷、百度云等的账号密码。


900+软件中招 “网赚”成“微信支付”勒索病毒重灾区

(依据中招软件名称生成的关键字图形 ――360)

360统计了这次被感染的软件,目前共计整理出918款,这个数量还在进一步增加。其中绝大部分是辅助类软件。而从中招软件名称关键词来看,“邀请”“注册”“注册机”“批量邀请”“多线程邀请注册”等词出现的频率最高,也就是说,这些受感染的软件,大部分是打着“网赚”旗号薅羊毛的工具软件。


900+软件中招 “网赚”成“微信支付”勒索病毒重灾区

(部分软件名称截图)

在此次勒索病毒传播过程中,起到推波助澜作用的,还有另外一个因素,这900多款软件,多集中在“灰色产业”领域,这也让部分用户下载“带毒”的软件工具时,忽视了防护软件给的提醒,选择下载了带有恶意代码的软件。

360建议软件开发人员更要留意计算机安全问题,因为开发环境被感染,造成整个软件产品被植入恶意代码的事件时有发生,而受危害的往往是数量庞大的软件用户。软件开发者应该从正规渠道下载编译工具及开发环境相关文件,以免下载到被污染的开发文件,影响整个工程环境。

勒索病毒与时俱进玩出新花样,黑色产业链恐更难斩断

$
0
0

文/东方亦落

近日,互联网中有许多人表示遭到了新型勒索病毒的攻击。该病毒锁死受害者文件并通过微信二维码的方式勒索赎金。这种勒索方式就和去年流行的WannaCry“蠕虫”病毒一样,只不过它不收取比特币,而是用微信扫码之后支付110元赎金方可获得密钥。此外,该病毒还会窃取用户的淘宝、天猫、支付宝、QQ等账号密码。

目前,微信已经对勒索者的账户进行封禁,对收款二维码也予以紧急冻结,支付宝也表示“已第一时间跟进,目前没有一例支付宝账户受到影响”。虽然此次病毒未造成大规模的互联网安全威胁,但勒索病毒的出现却已经有一些年头了,到了今天还是会时不时就出现在互联网中。而且此次的勒索病毒的界面信息都是中文,还使用不匿名的微信收取赎金,足可见其猖獗程度。

勒索病毒最初如何崛起?有哪些比较出名的事件?在这么多年的发展和传播过程中,勒索病毒屡禁不止的“秘诀”是什么?在未来它又会演变出哪些“新花样”?我们又能否拿出行之有效的办法加以应对呢?

一、出现不过十余年,勒索病毒却已让全球“刮目相看”

勒索病毒的起源大概可以追溯到2007年。一个叫李俊的不起眼的小伙子制作出了让数百万用户“恐惧”的电脑病毒“熊猫烧香”。


勒索病毒与时俱进玩出新花样,黑色产业链恐更难斩断

李俊和他同伙的初衷就只是为了“炫技”和顺便挣些钱,然而当时该病毒在互联网界引起了极大的恐慌,给不少个人用户、企业甚至政府机构都造成了重大的损失。这种迅速蔓延的情况已经超出了李俊的预期,后来他提供了针对“熊猫烧香”的杀毒软件,这场风波才能够收场。

随着互联网技术的发展,勒索病毒也随之发展。2014年,一款名为“Koler”的勒索病毒席卷安卓平台。它主要利用短信传播病毒,受害者会接到一条内容为“有人以你的名字命名了一个文件还下载了你的图片”的短信,后面还附上了链接,一旦点开链接,就会进入安装APP的页面,一旦下载了APP,手机界面上就会出现要求支付赎金的页面,金额为300美元。Koler的影响范围也不小,对至少30个国家的用户发送了定位勒索短信。


勒索病毒与时俱进玩出新花样,黑色产业链恐更难斩断

此后,以Koler为首的勒索病毒就在安卓平台中大规模爆发,也意味着勒索病毒从PC端蔓延到移动端,勒索病毒从此开始“双管齐下”,并且范围也开始蔓延至全世界。

2017年,人们几乎忘记了被“熊猫烧香”支配的恐惧,然而危害数倍于“熊猫烧香”的WannaCry在去年5月份让全球网民感受到了深深的惊恐。在WannaCry出现的5月12日当天,全球就有99个国家的7.5万台电脑被感染,其中包括中国、美国、英国、俄罗斯、意大利等国家,有242.3万个IP地址遭受该病毒攻击,将近3.5万个IP地址被WannaCry感染。

而中国受到影响的包括医院、高校、企事业单位在内的1.8万个左右的IP,网络大面积瘫痪。到了14日,WannaCry已经衍生出了感染速度更快、病毒危害更强的变种“WannaCry 2.0”,并且在移动端也发现了WannaCry的痕迹。


勒索病毒与时俱进玩出新花样,黑色产业链恐更难斩断

WannaCry与以往的勒索病毒的传播速度与路径都有显著的差异,而这一切都要归咎于一款名为“永恒之蓝”的恶意代码。该代码会自动扫描用户windows系统下的特定漏洞,通过开放的445文件共享端口释放加密程序。这意味着勒索病毒的“段位”越来越高,病毒制造者们的方法也是“与时俱进”。

可以看到,勒索病毒出现至今也只不过十余年的时间,其影响却已经波及全球,让全世界的网民们“刮目相看”并且留下了深深的阴影。说到勒索病毒的“与时俱进”,其实不仅表现在病毒本身,还表现在其感染方式、勒索方式、攻击对象、攻击手段等各个方面。

二、伪装、诱导,勒索病毒“与时俱进”玩出新花样

尽管各类勒索病毒在实际中的表现形态有很大差异,但传播形式却绝非无迹可寻,主要都是通过伪装、诱导等手段附在各种应用程序当中。有的会伪装成游戏、插件、社交软件等,一旦用户运行这些伪装的程序,终端就会被病毒侵染,无法操作。另外一些病毒则会包含在资源文件中,悄悄地在系统后台运行,并伪装成系统应用。

勒索病毒大都表现得十分“强硬”,对系统进行强烈破坏并强制被攻击者付费,在赎金缴纳形式方面也是多种多样。PC端最为常见的就是比特币,到了移动端更是“花样”繁多,微信支付、QQ支付、支付宝支付等。虽然金额比PC端要低,然而存在重复勒索甚至是如同游戏闯关一般的收费模式,例如被攻击者在使用QQ支付的过程中要缴纳入群费、学徒费、解锁费等等。

从勒索病毒喜欢攻击的应用种类来看,可以将其分为游戏类、社交类、免流插件类4种。其中社交类软件是勒索病毒的“最爱”,全网勒索病毒中有28143个是冲着社交应用去的,占总数的一半多。之后是免流插件类软件,共9732个。而近年来火爆的游戏应用也是勒索病毒的高发区,共6754个,位列第三。例如刷钻助手、王者荣耀辅助等与游戏有关的伪装成恶意应用的插件,去年也有不少“吃鸡”玩家受到“强制玩游戏”的Magniber勒索病毒攻击。


勒索病毒与时俱进玩出新花样,黑色产业链恐更难斩断

在勒索病毒猖獗的过程中,被攻击的对象一般都是非专业技术人员。比起自行破解或报案,这些被攻击者更愿意“破财免灾”,主动缴费以解除病毒的威胁。所以对于病毒的制造者而言,这方面的收益并不会因为技术的创新和防御手段的提升而缩减,反而会凭借用户的依赖心理更加肆虐,这种情况在移动端表现得尤为明显。

此外,攻击者会将恶意程序披上与用户利益挂钩的“外衣”,利用人性固有的弱点来达到自己的目的。比如在社交软件中伪装成“红包”,并且加上“外挂”、“秒抢”这样诱惑性极强的字眼。还有就是利用人类的好奇心,加上“不要点我”之类的字眼。用户在这些伪装下往往禁不住诱骗,最终“中招”。

可以看到,勒索病毒“花样”百出而且颇具“特色”,让人防不胜防。另外,随着时代的发展,勒索病毒在许多方面的“灵感”也“与时俱进”。

三、勒索病毒形成黑色产业链,“杀毒”之路任重道远

随着技术的进步,勒索病毒的制造门槛也逐渐降低。从WannaCry出现之后,勒索病毒开始被越来越多的人所熟知,而许多用户主动缴纳赎金的行为也使得更多的黑客想从中得利,就利用pythonphp等语言编写了勒索病毒,甚至采用更为简单的AutoIt语言编写了勒索病毒。AutoIt易学易用,功能强大且无需特定运行环境,所以即使毫无编程经验的新手也能迅速运用。


勒索病毒与时俱进玩出新花样,黑色产业链恐更难斩断

由于勒索病毒在技术层面的“准入门槛”大大降低,越来越多的90后、00后的网络技术爱好者在利益的诱惑下成为开发勒索病毒的“菜鸟黑客”。他们年龄小,缺乏法律意识,而且对互联网攻击抱有更高的热情,他们的攻击范围逐渐扩大,技术能力也在不断提升,清理和监管都较为困难,因此近来有成为勒索病毒攻击的“主力”之势。

在WannaCry出现之后,勒索病毒反而不再像WannaCry那样“粗暴”,而是可以“议价”,在WannaCry事件出现之时,黑客会开出3个比特币的高额赎金,如今一般都会在0.8个比特币(500美金)左右。

经过几年的发展,勒索病毒的制造已经不再是单打独斗,而是形成了“产业链”。这种黑色产业链中的团队会提供大量的用户数据及攻击技术,并形成一套完整的攻击方案,恶意程序、锁屏工具的制作方面都有视频教程以及源代码出售。由此缩短病毒的开发周期,降低病毒制造成本提升收益,使运作流程规模化。

病毒制造方面“与时俱进”,赎金勒索方面也“紧跟步伐”。

可以看到比特币这一新式货币在勒索环节十分重要。早在2013年,以比特币解除勒索病毒的形式就已兴起。当时勒索病毒cryptolocker的制造者加密了所有带有文档后缀名的文件,要求被勒索者缴纳300美元或两个比特币。由于比特币的加密性质,使得警方的追查过程难度增加。


勒索病毒与时俱进玩出新花样,黑色产业链恐更难斩断

同年比特币价格一路走高,到2013年11月之后逐步回落。但在2014年7月有传闻称一款名为Critroni的勒索软件正在地下黑客论坛以3000美元的价格出售,该软件会加密PC端文件,要求被勒索者支付比特币。

2015年,比特币价格继续走低,但勒索病毒却井喷式爆发。勒索病毒靠邮件等方式传播,尚不足以波及全球。2016年,比特币价格开始爬升,此后WannaCry这样在全球范围肆虐的病毒出现。可见比特币虽然给人们带来了许多好处,但也让黑客的勒索变得更加容易和隐蔽。


勒索病毒与时俱进玩出新花样,黑色产业链恐更难斩断

随着互联网的蓬勃发展,互联网中的业务愈发多样,系统愈发复杂,所以勒索病毒的“可乘之机”也就大幅增加。与时俱进是好事,但勒索病毒“与时俱进”却不然,随着黑色产业链的形成以及越来越多的花样,勒索病毒只会变得更加不好对付。虽然有不断升级的杀毒软件,还有相关部门的监管,但想要消灭勒索病毒仍然任重而道远。

北京大学专家:软件供应链安全的风险和成因分析

$
0
0

■ 北京大学软件工程国家工程研究中心 张世琨 马森 高庆 孙永杰

由于软件应用范围不断扩大,软件安全已经不限于虚拟空间,直接威胁到物理空间的安全,而且,供应链中的任何问题都会导致严重的危害。降低软件安全风险最重要的就是技术沉淀,而技术沉淀最好的方式就是自动化工具,例如美国国防高级研究计划局(DARPA)在2016年举办的网络安全挑战赛(CGC),无任何人为干预,由机器全自动地挖掘二进制程序中的漏洞。笔者认为,这类比赛的意义远大于夺旗赛(CTF)这种证明个人实力的比赛,因为靠人的经验式挖掘永远不能普惠更多的企业和个人,而且经验的传授也不会系统完整。如何将安全分析技术落地,将知识以工具的方式用于实战,才是迫切需要的,这也是阿里软件供应链安全比赛的意义所在。那么,未来,自动化分析技术和安全知识的结合将成为一个重要方向。本文对软件供应链领域的风险和成因进行探讨,并就如何解决问题提出几点建议。

一、软件供应链安全领域存在的最大问题 1.开源软件的数量呈指数级增长,安全问题不容小视

根据Sonatype报告显示,在2017年全年,独立的Java开源组件数量由200万上升至350万,javascript开源组件由300万上升至550万,python组件数由87万上升至140万。对中央仓库(Central Repository)中350万个Java组件的分析结果显示,超过10%(351000个)的组件至少包含一个已知漏洞。事实上,研究人员发现,这些组件中有共计300多万个漏洞,任何一个漏洞都可能成为攻击者的攻击目标。

过于巨大的新增开源代码数量,导致单纯通过人力难以发现全部的问题,对漏洞挖掘、安全防范提出了更高的自动化要求。开源软件数量的增长使软件库之间的引用关系变得愈发复杂,如果其中一个环节出现了问题,就会导致所有使用该软件库的下游软件均存在该漏洞。

更重要的是,对于开发过程中引入开源软件的执行细节与其中潜在的风险,大多数开发者都无从获知。一个工程开发数年,人员迭代频繁,新的开发者对于前任开发者使用过的开源组件是否被修改过,无从获知,开发者更加关注的是自己开发代码的质量及安全性。尽管美国有黑鸭(Black Duck)软件这种分析整个工程的组成成分以及对应成分的CVE漏洞工具,但是,其高昂的收费,需要将代码通过网络传输到美国的使用方式,使国内企业很难接受,从而导致开源软件检测成为监管无人区,其风险远大于自行研发的代码。

2.难以处理鼓励敏捷开发、快速迭代的市场需求与必要安全成本间的平衡

随着互联网的不断发展,软件使用者对软件的功能性、实时性、易用性等方面的需求越来越高,软件市场的竞争压力越来越大。这要求开发者在短时间内完成大量功能点的开发,并在后期进行持续不断的高速迭代以抢占并稳固市场。

综合开发速度与成本控制等因素,开发者在开发过程中必然大量使用开源库与外包供应商提供的非公开库。但是,由上文可知,使用外部库时存在大量安全隐患,一旦出现数据泄露等安全问题,将导致极其巨大的经济损失。如何在较短的开发周期内尽量完善软件功能,同时完成相对完备的安全性测试,是所有开发者都面临的问题。

二、造成上述问题的原因分析 1.软件供应链风险传播速度快,攻击面广

软件供应链的安全风险广泛存在于供应内容在开发流程中直接或间接影响最终产品或系统的所有位置。风险将从供应链的每一层继承下来,主要包括:第一,开发过程中包含的编码和设计缺陷,允许未授权方在产品或系统部署时引入代码。此外,存在通过允许未授权访问和执行受保护功能而直接危及安全性的缺陷。第二,在组织之间转移时允许对产品或系统的访问进行不正确的控制,允许未授权方引入代码。第三,不安全的部署配置(例如,使用默认密码的已部署配置)。第四,使用现场产品或系统的操作变化会带来安全风险或配置更改,从而导致安全性受损(配置控制和补丁管理)。第五,在产品或系统处置过程中错误处理信息会损害当前运营和未来产品或系统的安全性。

2.开发人员安全意识以及项目管理水平有限

软件供应链任何一环的开发人员,在开发过程中如果出于方便等原因,下载非官方的软件、工具,并未经完整的安全校验,都可能引入漏洞或木马,带来安全隐患。例如,Xcodeghost事件,就是开发者使用了非官方途径的XCode工具导致。开发者在开发过程中往往更看重所用软件库的功能性,很少关心所用软件库的版本、可能存在的漏洞等信息。2017年9月,流行Java框架Spring发现一个远程执行代码的高危漏洞,此后的一个月内,对存在问题的Spring框架的下载量仅比漏洞曝出前下降了15%。此外,一些小型的开发团队没有完善的软件工程开发流程,当员工流动等情况出现时,可能会出现代码难以维护,难以进行版本更新等情况。

3.保障软件供应链安全的客观难度

黑客只需要找到软件供应链的一个突破口便可以入侵并造成危害,开发者需要对整个软件供应链进行完备的安全防护。即便企业安全意识足够,从漏洞公布,发现安全隐患设计补丁,最终测试并发布安全的新版本,仍然需要一定的周期,而攻击者根据漏洞生成攻击向量的速度可能更快。2018年8月22日,一个新发现的Apache Struts 2远程代码执行漏洞(CVE-2018-11776)被公开披露。仅在一天后,一位Github用户就发布了针对此漏洞的概念验证(PoC)漏洞利用代码。根据报告显示,2017年,漏洞从发现到被黑客利用的平均时间仅为3天,留给开发者的应对时间极短,而且0day漏洞的预防和应对对开发人员提出了更高的要求。

4.技术研究与企业实际需求的脱钩

国内对于漏洞自动发现或者通过开源代码审计的研究很多,但是,并没有实际落地的产品。研究往往都在点上,并没有扩展到整个工具面上,业界对于实现工具的若干技术问题,没有实际解决方案,导致很多想法只停留在理论阶段,没有给企业解决实际问题。

三、解决上述问题的建议和对策

目前,现有的市场环境对快速迭代、高创新性的需求,不允许花费大量的人力物力进行人工排查,因而对内建立稳定高效的软件开发规范,对上游软件供应链采取高自动化手段进行自动排查,是较好综合时间和人力的选择。

第一,采用开源代码审计,充分了解软件供应链中各个环节使用的开源版本库。实时关注软件所涉及的开源库的最新漏洞信息,当有新漏洞发布时,第一时间下载补丁。

第二,开发人员应尽可能从官方渠道获取程序组件,利用签名验证机制等方式降低软件开发工具和开发库被恶意植入漏洞的隐患。当对软件库植入恶意代码后,一般情况下,签名校验难以通过,通过软件发布的软件库版本与官方版本的校验分析,可以发现大部分恶意植入代码问题。国家应建设国家代码库,保证更多经过验证的版本供软件开发者下载。

第三,当使用开源或不公开软件库时,尽可能遵守可修改性、可维护性等软件工程原则。对不同的软件开发库给予合理权限,记录库使用的关键事件,方便快速排查问题。

第四,软件发布前通过静态分析工具进行完整的自动化安全漏洞检测。对常见的缓冲区溢出等漏洞进行分析,能够发现部分隐藏的安全漏洞。通过对恶意代码的特征分析,可以定位发现部分开发者恶意植入的后门。

第五,在充分防护且0day漏洞仍然难以避免的前提下,需要及时止损机制。可以设计合理的运行保护框架,通过对输入输出、网络传播等敏感过程的实时监控,当程序出现恶意行为时及时,发现并预防。或通过制度建立、定期培训等方式,增强软件开发人员的安全意识。在发现问题时能够迅速反应并解决问题,防止损失进一步扩大。

四、保障软件供应链安全的重点

从代码自动分析技术研究看,保障软件供应链安全的重点在于对于已知漏洞和未知漏洞的发现,表现在研发更好的同源分析与静态代码安全漏洞自动检测工具两个方面。

第一,对已知漏洞的检测,可以通过使用开源软件安全审计工具,即同源分析工具,快速发现工具中使用的开源构件,通过对已知开源构件的匹配,可以知道构件是否被篡改或者通过CVE、NVD等已知漏洞库的匹配。当然,很多已知漏洞并没有完全在网上公布,这也是潜在的问题之一。

第二,代码安全性检测,与传统代码漏洞检测类似,缓冲区溢出等漏洞本就是代码漏洞的重要检测内容。在漏洞检测外,可以针对软件供应链的常见后门攻击方式进行特征提取,自动扫描并发现同类恶意植入,对开发人员进行风险警告。静态分析技术是分析这类漏洞的最佳方式,但是,潜在的问题在于静态分析技术的圈子和安全圈并不重合。

(本文刊登于《中国信息安全》杂志2018年第11期)

声明:本文来自中国信息安全,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如需转载,请联系原作者获取授权。

渗透测试之子域名探测指南

$
0
0
原文链接:https://blog.appsecco.com/a-penetration-testers-guide-to-sub-domain-enumeration-7d842d5570f6 前言

作为一名渗透测试人员,或者说一个漏洞赏金猎人,一般情况下,当您进行安全测试时,您将获得一个或一组域名。您必须进行广泛的信息搜集,以找到有用的信息,如服务器,Web应用程序,属于目标组织的域等,从而增加您找到漏洞的机会。

我们撰写了一篇关于技术博文( https://blog.appsecco.com/open-source-intelligence-gathering-101-d2861d4429e3 ) ,这些技术通常用于信息搜集阶段。

子域名探测是信息搜集阶段的重要组成部分,这篇博文以简洁明了的方式介绍了各种子域名探测技术。

这篇博文的后续内容将用gitbook的形式发布,内容将涉及我们对这些技术的深入介绍。我们在2017年Bugcrowd LevelUp会议上发表的"Esoteric子域名探测技术"( https://github.com/appsecco/bugcrowd-levelup-subdomain-enumeration ) 演讲中介绍了一些技巧。

除了本博文中的内容之外,我们还发布了一本gitbook,其中涵盖了更多技术:gitbook - 子域名探测的艺术( https://appsecco.com/books/subdomain-enumeration/ )

什么是子域名探测?

子域名探测是查找一个或多个域的子域名的过程。这是信息搜集阶段的重要组成部分。

为什么要进行子域名探测? 子域名探测可以帮我们发现渗透测试中更多的服务,这将增加发现漏洞的可能性 查找一些用户上较少,被人遗忘的子域名,其上运行的应用程序可能会使我们发现关键漏洞 通常,同一组织的不同域名/应用程序中存在相同的漏洞
渗透测试之子域名探测指南

著名的 Yahoo! Voices hack 就是因为其在yahoo.com子域名上部署了易受攻击的应用程序

子域名探测技术

1.Google和Bing等搜索引擎支持各种高级搜索运算符来优化搜索查询:

我们可以在Google搜索中使用 site: 运算符来查找一个域的所有子域名。谷歌还额外支持减号运算符 site:*.wikimedia.org -www -store -jobs -uk 以排除我们不感兴趣的子域名
渗透测试之子域名探测指南

Bing搜索引擎也支持一些高级搜索运算符。与Google一样,Bing也支持 site: 运算符,可以帮助您检查除Google搜索之外的其他结果。


渗透测试之子域名探测指南

2.有许多第三方服务提供大量的DNS数据,可以用其检索给定域名的子域名

VirusTotal会运行DNS复制功能,通过存储用户访问URL时执行的DNS解析来构建数据库。要检索子域名的信息,您只需将域名放在搜索栏中即可
渗透测试之子域名探测指南
渗透测试之子域名探测指南
DNSdumpster是另一个有趣的工具,可以找到给定域名的大量潜在子域名
渗透测试之子域名探测指南

Sublist3r( https://github.com/aboul3la/Sublist3r ) 是一个非常热门的工具,它可以用来探测各种子域名。Sublist3r使用许多搜索引擎(如Google,Yahoo,Bing,Baidu和Ask)进行子域名探测。Sublist3r还使用Netcraft,Virustotal,ThreatCrowd,DNSdumpster和ReverseDNS进行子域名探测。


渗透测试之子域名探测指南

3.证书透明(CT)是证书颁发机构(CA)必须将其发布的每个SSL/TLS证书发布到公共日志的项目。SSL/TLS证书通常包含域名,子域名和电子邮件地址。这使他们成为攻击者的宝库。我在关于证书透明的知识上写了一系列技术文章,我已经深入介绍了这个技术,你可以在这里( https://blog.appsecco.com/certificate-transparency-the-bright-side-and-the-dark-side-8aa47d9a6616 ) 阅读这个系列。

查找为域颁发的证书的最简单方法是使用收集CT日志的搜索引擎,下面列出了一些比较受欢迎的链接:

https://crt.sh/

https://censys.io/

https://developers.facebook.com/tools/ct/

https://google.com/transparencyreport/https/ct/
渗透测试之子域名探测指南

除了Web界面之外,crt.sh还可以使用postgres界面访问CT日志数据。这使得运行一些高级查询变得简单而灵活。如果您安装了PostgreSQL客户端软件,则可以按如下方式登录:

$ psql -h crt.sh -p 5432 -U guest certwatch

我们编写了一些脚本来简化使用CT日志搜索引擎查找子域名的过程。这些脚本可以在我们的github repo中找到 https://github.com/appsecco/the-art-of-subdomain-enumeration


渗透测试之子域名探测指南

使用CT进行子域名探测的缺点是CT日志中找到的域名可能不存在,因此无法解析为IP地址。您可以将massdns( https://github.com/blechschmidt/massdns ) 等工具与CT日志结合使用,以快速识别可解析的域名。

# ct.py - extracts domain names from CT Logs(shipped with massdns) # massdns - will find resolvable domains & adds them to a file ./ct.py icann.org | ./bin/massdns -r resolvers.txt -t A -q -a -o -w icann_resolvable_domains.txt -
渗透测试之子域名探测指南

4.基于字典的子域名枚举是另一种发现子域名的方式。DNSRecon( https://github.com/darkoperator/dnsrecon ) 是一个功能强大的DNS枚举工具,它的功能之一是使用预定义的列表进行基于字典的子域名探测。

$ python dnsrecon.py -n ns1.insecuredns.com -d insecuredns.com -D subdomains-top1mil-5000.txt -t brt
渗透测试之子域名探测指南

5.置换扫描是另一个有趣的技术来识别子域名。在该技术中,我们使用已知域/子域名的排列组合来识别新的子域名。

$ python altdns.py -i icann.domains -o data_output -w icann.words -r -s results_output.txt
渗透测试之子域名探测指南

6.查找自治系统(AS)号码( https://www.iana.org/assignments/as-numbers ) 将帮助我们识别属于组织的网络块,而该组块又可能具有有效域。

使用 dig 或 host 解析给定域的IP地址 有一些工具可以根据给定IP地址找到ASN- asn.cymru.com/cgi-bin/whois.cgi 有一些工具可以根据给定域名的情况下找到ASN- bgp.he.net/
渗透测试之子域名探测指南
找到的ASN号码可用于查找域的网络块。有Nmap脚本可以实现这一目的- nmap.org/nsedoc/scripts/targets-asn.html $ nmap --script targets-asn --script-args targets-asn.asn=17012 > netblocks.txt
渗透测试之子域名探测指南

7.域传送是一种DNS事务,DNS服务器将其全部或部分域文件的副本传递给另一个DNS服务器。如果未安全地配置域传输送,则任何人都可以对指定名称的服务器启动域传送并获取域文件的副本。根据设计,域文件包含有关域和保存在域中的大量主机信息。

$ dig +multi AXFR @ns1.insecuredns.com insecuredns.com
渗透测试之子域名探测指南

8.由于DNSSEC处理不存在域名的方式,您可以"遍历"DNSSEC域并枚举该域中的所有域名。您可以从这里( https://info.menandmice.com/blog/bid/73645/Take-your-DNSSEC-with-a-grain-of-salt ) 了解有关此技术的更多信息。

对于使用NSEC记录的DNSSEC域,可以使用ldns-walk( https://www.nlnetlabs.nl/projects/ldns/about/ ) 等工具进行探测

$ ldns-walk @ns1.insecuredns.com insecuredns.com
渗透测试之子域名探测指南

一些DNSSEC域使用NSEC3做记录,该记录使用散列域名来防止攻击者收集纯文本域名。攻击者可以收集所有子域名hash值并将hash值离线破解。

像nsec3walker( https://dnscurve.org/nsec3walker.html ) ,nsec3map( https://github.com/anonion0/nsec3map ) 这样的工具帮助我们自动收集NSEC3 hash并破解hash。安装nsec3walker后,可以使用以下命令枚举受NSEC3保护的域名的子域名 # Collect NSEC3 hashes of a domain $ ./collect icann.org > icann.org.collect # Undo the hashing, expose the sub-domain information. $ ./unhash < icann.org.collect > icann.org.unhash # Listing only the sub-domain part from the unhashed data $ cat icann.org.unhash | grep "icann" | awk '{print $2;}' del.icann.org. access.icann.org. charts.icann.org. communications.icann.org. fellowship.icann.org. files.icann.org. forms.icann.org. mail.icann.org. maintenance.icann.org. new.icann.org. public.icann.org. research.icann.org.

9.有些项目收集了全互联网范围内的扫描数据,并将其提供给研究人员和安全社区。该项目发布的数据集是子域名信息的宝库。虽然在这个庞大的数据集中找到子域名就像大海捞针,但却值得我们去一试。

Forward DNS( https://scans.io/study/sonar.fdns_v2 ) 数据集作为Project Sonar的一部分发布。数据格式是通过gzip压缩的JSON文件。我们可以解析数据集以查找给定域名的子域名。数据集很大(压缩后:20+GB,压缩前:300+GB) # Command to parse & extract sub-domains for a given domain $ curl -silent https://scans.io/data/rapid7/sonar.fdns_v2/20170417-fdns.json.gz | pigz -dc | grep ".icann.org" | jq
渗透测试之子域名探测指南
子域名探测技术 - 比较

我们针对icann.org运行了一些讨论过的子域名探测技术并对结果进行了比较。下面的条形图显示了不同探测技术为icann.org找到的可解析的子域名数量。


渗透测试之子域名探测指南
子域名探测 - 参考

我们为子域名探测技术的工具和源创建了一个简单的参考列表。这个列表是使用Github gist创建的: https://gist.github.com/yamakira/2a36d3ae077558ac446e4a89143c69ab

子域名探测 - 参考 搜索引擎

谷歌( https://google.com/ )

Bing( https://bing.com/ )

DNS信息搜集

VirusTotal( https://www.virustotal.com/ )

ViewDNS( https://viewdns.info/ )

DNSdumpster( https://dnsdumpster.com/ )

Threatcrowd( https://www.threatcrowd.org/ )

Viewing all 12749 articles
Browse latest View live