欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

如何利用開源風控系統(tǒng)(星云)防止撞庫?-創(chuàng)新互聯(lián)

在企業(yè)發(fā)展過程中,日益增多的業(yè)務形態(tài)往往會招致新的業(yè)務風險。簡單的業(yè)務防護已經(jīng)不足以解決問題。一套完整的業(yè)務風控系統(tǒng)可以幫助企業(yè)有效的規(guī)避風險,降低損失。

創(chuàng)新互聯(lián)是專業(yè)的潤州網(wǎng)站建設公司,潤州接單;提供網(wǎng)站設計制作、成都網(wǎng)站制作,網(wǎng)頁設計,網(wǎng)站設計,建網(wǎng)站,PHP網(wǎng)站建設等專業(yè)做網(wǎng)站服務;采用PHP框架,可快速的進行潤州網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團隊,希望更多企業(yè)前來合作!

TH-Nebula(星云)是威脅獵人開源的業(yè)務風控系統(tǒng)。在業(yè)務安全應用門檻普遍過高的當下,我們希望以開源的方式,降低大家的學習使用門檻,能以更低的成本,完成風控體系從無到有的搭建,在使用過程中意識到風控的重要性。

自TH-Nebula(星云)發(fā)布以來,考慮到大家在如何部署、如何使用、和為什么需要風控系統(tǒng)上能還存在一些問題。

本文以如何防止撞庫場景為例,闡述為什么需要一套“系統(tǒng)”去解決業(yè)務安全問題,接著手把手教你部署本系統(tǒng),以及如何利用咱們這套風控來阻斷風險,并提供模擬測試demo。

附項目git地址:

https://github.com/threathunterX/nebula

1?

1.1?

說到撞庫,先得從”社工庫”說起,社工庫是社會工程學數(shù)據(jù)庫的簡稱,這個數(shù)據(jù)庫里找包含了每個人的各種行為記錄(在不同網(wǎng)站上的賬號、密碼、分享的照片、信用卡記錄、通話記錄、短信記錄、開房記錄等等)。

所以當***想嘗試登錄某個網(wǎng)站或者APP時,就會用”社工庫”里的信息去挨個嘗試登錄,”撞”出一個個正確賬號。

1.2?

從企業(yè)的Web服務視角來看,如果發(fā)現(xiàn)以下幾種情況,基本可以判定是在撞庫:

一個賬號在某個較短的時間內,有多次密碼嘗試。

一定時間內相同密碼的出現(xiàn)頻次非常高

同一個ip或同一個設備,在短時間內使用不同賬號密碼多次嘗試登錄

在這種情況下,最簡單粗暴的方法就是直接在登陸接口加安全策略。

如:

針對a情況,就限制一天之內密碼錯誤次數(shù)。

針對b情況,就針對頻率特別高的密碼禁止登錄(或者校驗手機短信/密保問題之后才能登錄)。

針對c情況,就對ip或者設備唯一id進行閾值限制,如限制1分鐘內訪問登錄接口次數(shù)<50次

看起來簡單粗暴的方法是可以起到防護作用,但實際上,道高一尺魔高一丈,業(yè)務安全就沒有一勞永逸的方案。

在有利可圖的前提下,黑灰產(chǎn)就會不斷的變換自己的規(guī)則,來”攻破”業(yè)務的防護。

比如,業(yè)務限制的是1分鐘訪問限制<50次,那黑產(chǎn)很容易就可以改成40次就能繞過你的策略,這對于他來說只是改了一行代碼。

再比如現(xiàn)在互聯(lián)網(wǎng)社會里,ip資源可以說是相當廉價,簡單就從ip角度去判定可以說非常容易被繞過。

所以業(yè)務安全的防護不是簡單做一層”防火墻”就可以了,是需要有一套完整的能跟黑產(chǎn)持續(xù)對抗的”系統(tǒng)”。

這套系統(tǒng)除了可以自定義策略,從各個維度在網(wǎng)絡流量中發(fā)現(xiàn)風險以外,還得具備:

對業(yè)務訪問流量的分析、統(tǒng)計 ?— 方便安全人員發(fā)現(xiàn)新的***行為從而制定新的策略

策略的效果反饋的展示報表 ? — 方便安全人員根據(jù)策略有效性實時調整

提供除了業(yè)務本身流量外的安全情報,如ip的代理標簽、秒撥標簽等 ?— 直接識別高危的流量來源

TH-Nebula(星云)就是這樣一套系統(tǒng)。它能夠讓企業(yè)有能力主動發(fā)現(xiàn)業(yè)務風險,并快速的實施***對抗。星云采用旁路流量的方式進行數(shù)據(jù)采集,無需在業(yè)務邏輯上做數(shù)據(jù)埋點或侵入,同時支持本地私有化部署和Docker鏡像云端部署,大大降低了使用門檻。

該系統(tǒng)主要包含兩塊服務

Nebula服務:包括風控配置分析系統(tǒng),流量的接收和分析,策略引擎,風控web控制中心等模塊

Sniffer服務:流量的抓取服務

其中,流量的抓取服務這塊為了做到不對業(yè)務系統(tǒng)本身做代碼修改,提供了多種配置方式。用戶可以直接在Web服務機器部署,采用旁路流量的方式獲取流量;也可以通過標準化nginx或其他http服務的輸出日志,采取抓取日志的方式獲取流量

下面就以防止撞庫為例子,一步步教你把TH-Nebula(星云)風控系統(tǒng)跑起來。

1?

如上所述Nebula開源項目分為Sniffer流量抓取服務、Nebula服務兩塊,建議直接采用Docker方式部署,部署參考如下github文檔:

https://github.com/threathunterX/nebula_doc/blob/master/chapter2/section2/section2.2.md

2.1?

運行./ctrl.sh status,狀態(tài)如下則部署成功:

Name Command State Ports

--------------------------------------------------------------------------------------------------

nebula? ? ? ? ? ? /entrypoint.sh /usr/bin/su ...? Up? ? ? 0.0.0.0:9001->9001/tcp

nebula-aerospike? /entrypoint.sh asd --foreg ...? Up? ? ? 3000/tcp, 3001/tcp, 3002/tcp, 3003/tcp

nebula-db? ? ? ? ? docker-entrypoint.sh mysqld? ? ? Up? ? ? 3306/tcp

nebula-redis? ? ? docker-entrypoint.sh redis ...? Up? ? ? 0.0.0.0:16379->6379/tcp

cron? ? ? ? ? ? ? ? ? ? ? ? ? ? ? RUNNING? pid 27, uptime 4 days, 22:23:47

java_web? ? ? ? ? ? ? ? ? ? ? ? ? RUNNING? pid 33, uptime 4 days, 22:23:47

labrador? ? ? ? ? ? ? ? ? ? ? ? ? RUNNING? pid 10286, uptime 2 days, 21:26:41

nebula:incident_babel_db_writer? RUNNING? pid 19, uptime 4 days, 22:23:47

nebula:nebula_db_query_web? ? ? ? RUNNING? pid 12, uptime 4 days, 22:23:47

nebula:nebula_offline? ? ? ? ? ? RUNNING? pid 14, uptime 4 days, 22:23:47

nebula:nebula_online? ? ? ? ? ? ? RUNNING? pid 19720, uptime 0:29:22

nebula:nebula_query_web? ? ? ? ? RUNNING? pid 15, uptime 4 days, 22:23:47

nebula:nebula_web? ? ? ? ? ? ? ? RUNNING? pid 11, uptime 4 days, 22:23:47

nebula:notice_babel_db_writer? ? RUNNING? pid 13, uptime 4 days, 22:23:47

nginx? ? ? ? ? ? ? ? ? ? ? ? ? ? RUNNING? pid 29, uptime 4 days, 22:23:47

2.2?

這里為了方便后面模擬測試,建議就直接采用最簡單旁路流量方式(bro驅動)啟動Sniffer服務,即git上默認配置:

....

- SOURCES=default

#default driver

- DRIVER_INTERFACE=eth0

- DRIVER_PORT=80,8080,9001

....

說明:

DRIVER_PORT代表監(jiān)聽的流量端口,此處除了監(jiān)聽80,8080外。還監(jiān)聽了9001端口的流量,這是為了方便測試,可以捕獲到Nebula服務自身的Web控制中心流量。實際生產(chǎn)環(huán)境可以去掉

把Nebula和Sniffer兩塊服務正常啟動起來,則可通過?http://IP:9001端口的方式訪問?TH-Nebula界面了,如圖:

如何利用開源風控系統(tǒng)(星云)防止撞庫?

2.3?

參考github教程部署完之后,運行./ctrl.sh status可查看Nebula服務的運行狀態(tài),如下圖則代表部署成功,默認配置下Nebula的Web控制中心是通過9001端口訪問:

如何利用開源風控系統(tǒng)(星云)防止撞庫?

用戶也可以自定義新規(guī)則或者修改默認規(guī)則,參考如下github文檔:

https://github.com/threathunterX/nebula_doc/blob/master/chapter3/section3/section3.1.md

3?

部署并配置好規(guī)則之后,接下來就是通過模擬撞庫的過程,校驗系統(tǒng)的風險檢測邏輯。

模擬腳本原理就是針對Sniffer模塊監(jiān)聽的9001端口連續(xù)發(fā)起1000次登錄請求(這里為了方便測試沒有在服務端實現(xiàn)login接口,但風控系統(tǒng)對于404的訪問也同樣會捕獲到)。具體python代碼如下:

#!/usr/bin/env python

# -*- coding: utf-8 -*-

from requests import get

from requests import put

from requests import post

from requests import delete

port = 9001

class NewRequestsData(object):

def __init__(self, url, data, cookies, method='get'):

self.data = data

self.url = url

self.cookies = cookies

self.method = method

def request(self):

m = dict(

get=get,

put=put,

post=post,

delete=delete,

)

method = m[self.method]

text = '默認模式'

code = 'None'

header = {

"connection": "close",

"content-type": 'application/json',

}

try:

if self.method in ['get', 'delete']:

response = method(self.url, params=self.data, cookies=self.cookies, timeout=10,

headers=header)

elif self.method in ['post', 'put']:

data = dumps(self.data, ensure_ascii=False).encode('utf8')

response = method(self.url, data=data, timeout=8, headers=header, cookies=self.cookies)

else:

raise ValueError

text = response.text

code = response.status_code

except Exception as e:

print("error", e)

finally:

return (text, code)

def attack_login():

data = dict(

username="threathunter@threathunter.cn"

)

r = NewRequestsData('http://127.0.0.1:{}/login'.format(port), data, {})

code, text = r.request()

if __name__ == '__main__':

i = 0

for i in range(1000):

attack_login()

print('總訪問次數(shù):', i)

捕獲流量的截圖:

如何利用開源風控系統(tǒng)(星云)防止撞庫?

如何利用開源風控系統(tǒng)(星云)防止撞庫?

4?

由于 TH-Nebula 屬于旁路分析模式,所以無法主動攔截風險事件,需要與企業(yè)端應用進行集成后實現(xiàn)自動阻斷的功能。

針對業(yè)務系統(tǒng)拉黑阻斷,系統(tǒng)提供以下兩種風險數(shù)據(jù)獲取方法:

主動推送:TH-Nebula 可以將分析發(fā)現(xiàn)的風險推送至攔截節(jié)點進行自動的風險阻斷。

被動調用:TH-Nebula 可以將分析發(fā)現(xiàn)的風險名單以接口方式提供給攔截節(jié)點調用判斷風險。

詳細請參考文檔:

https://github.com/threathunterX/nebula_doc/blob/master/chapter3/section5.md

以上就是通過部署TH-Nebula開源風控系統(tǒng),配置防撞庫策略的整套流程。

在系統(tǒng)使用過程中,如遇任何疑問,可在Github進行反饋:

https://github.com/threathunterX/nebula

另外有需要云服務器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。

本文名稱:如何利用開源風控系統(tǒng)(星云)防止撞庫?-創(chuàng)新互聯(lián)
網(wǎng)站路徑:http://chinadenli.net/article22/cdhjcc.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供企業(yè)建站、品牌網(wǎng)站設計、網(wǎng)站維護、網(wǎng)站內鏈、網(wǎng)站制作、商城網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

綿陽服務器托管