最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

基于tshark在原生php上實(shí)現(xiàn)ja3

2023-07-23 11:05 作者:PandaHB  | 我要投稿

他有什么用? 使用ja3來(lái)驗(yàn)證是否用戶是爬蟲(chóng),在傳統(tǒng)的方案中,通?;谧R(shí)別header來(lái)判斷用戶是機(jī)器人,但是這種方法極有可能被偽造header而誤判,有時(shí)候管理員可能不希望某一個(gè)用戶來(lái)訪問(wèn),所以拉黑IP,但是如果他使用代理IP或者重啟光貓,那么他又可以繼續(xù)訪問(wèn)了,在現(xiàn)在絕大部分網(wǎng)站是支持ssl,所以我們可以通過(guò)tls指紋來(lái)判斷用戶是否是機(jī)器人。 例如:requests、httpx以及CURL,無(wú)論如何偽造信息他們的指紋都是相同的,所以管理員只需要記住他們的指紋,那么下一次遇到相同指紋時(shí),就可以進(jìn)行攔截。 項(xiàng)目原理 該項(xiàng)目基于php-ja3的原生移植,項(xiàng)目地址:php-ja3,在這個(gè)項(xiàng)目中,他使用的tshark進(jìn)行數(shù)據(jù)包攔截,獲取到j(luò)a3后通過(guò)DataShare進(jìn)行數(shù)據(jù)傳輸,但是,在實(shí)際業(yè)務(wù)環(huán)境中,我們可能不會(huì)去使用workman,為了使用這個(gè)功能需要再安裝一個(gè)workman,所以我移植到原生php中。 由于DataShare只能使用workman,所以在該項(xiàng)目移植中,我使用Redis來(lái)交互數(shù)據(jù)。 如何使用? 1、下載phpja3.zip 2、配置main.php中相關(guān)配置 12行配置tshark路徑,通常情況下,如果你將wireshark安裝到C盤(pán)下,就不需要該操作,該項(xiàng)缺省值為 $tshark = 'C:\\PROGRA~1\\Wireshark\\tshark.exe';

24行配置redis信息,該項(xiàng)缺省值為redis默認(rèn)端口和本地 $redis->

connect

(

'127.0.0.1'

,

6379

);

31行配置業(yè)務(wù)網(wǎng)卡,填寫(xiě)網(wǎng)卡名稱,該項(xiàng)缺省值為本地回環(huán)網(wǎng)卡

define(

"NETWORK_INTERFACE"

,

"Adapter for loopback traffic capture"

);

3、配置完成后直接啟動(dòng)該文件 php main.php 啟動(dòng)成功后應(yīng)該是如下這樣的

PS

D:\important\desktop\php_ja3> php .\main.php

Capturing

on

'Adapter for loopback traffic capture'

** (tshark:

15056

)

04

:

19

:

48

.

346861

[Main MESSAGE] -- Capture started. ** (tshark:

15056

)

04

:

19

:

48

.

349348

[Main MESSAGE] -- File:

"C:\Users\Administrator\AppData\Local\Temp\wireshark_NPF_LoopbackLLNM81.pcapng"

4、配置你的業(yè)務(wù)環(huán)境 樣例代碼,從redis中獲取ja3信息

// usleep(50000);

sleep(

1

);

$redis

=

new

Redis();

$redis

->connect(

'127.0.0.1'

,

6379

);

$REMOTE_ADDR_PORT

=

$_SERVER

[

'REMOTE_PORT'

];

$ja3

=

'ja3_'

.

$REMOTE_ADDR_PORT

;

echo

$ja3

;

echo

$redis

->get(

$ja3

); 由于通過(guò)抓包嗅探,你需要延遲3000微秒以上第一次才會(huì)獲取成功,如果你對(duì)這方面沒(méi)有需求且沒(méi)有延遲,第一次獲取可能獲取為空。 驗(yàn)證:瀏覽器環(huán)境 我們可以獲取出用戶的指紋

驗(yàn)證:爬蟲(chóng) 第一次

第二次

無(wú)論我們?cè)趺醋儞Q模擬的header或其他請(qǐng)求信息,他的指紋都是相同的,我們只需要記錄這個(gè)指紋,那么就可以輕松檢測(cè)出爬蟲(chóng)。

基于tshark在原生php上實(shí)現(xiàn)ja3的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
前郭尔| 兴海县| 邳州市| 桂东县| 揭阳市| 邹城市| 浙江省| 海门市| 新晃| 淮滨县| 长丰县| 辽源市| 怀柔区| 贡嘎县| 朝阳区| 青川县| 南溪县| 海口市| 抚顺市| 水富县| 青神县| 增城市| 曲周县| 渑池县| 伊吾县| 南漳县| 洛浦县| 黄山市| 日喀则市| 安庆市| 两当县| 南安市| 弥渡县| 仁化县| 永靖县| 阿拉善左旗| 永清县| 乐清市| 江永县| 县级市| 广丰县|