亚洲视频二区_亚洲欧洲日本天天堂在线观看_日韩一区二区在线观看_中文字幕不卡一区

公告:魔扣目錄網(wǎng)為廣大站長(zhǎng)提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請(qǐng)做好本站友鏈:【 網(wǎng)站目錄:http://www.430618.com 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會(huì)員:747

前言

  • 將爬蟲的爬取過程分為網(wǎng)絡(luò)請(qǐng)求,文本獲取和數(shù)據(jù)提取3個(gè)部分。
  • 信息校驗(yàn)型反爬蟲主要出現(xiàn)在網(wǎng)絡(luò)請(qǐng)求階段,這個(gè)階段的反爬蟲理念以預(yù)防為主要目的,盡可能拒絕反爬蟲程序的請(qǐng)求。
  • 動(dòng)態(tài)渲染、文本混淆則出現(xiàn)在文本獲取及數(shù)據(jù)提取階段,這個(gè)階段的反爬蟲理念以保護(hù)數(shù)據(jù)為主要目的,盡可能避免爬蟲獲得重要數(shù)據(jù)
  • 特征識(shí)別反爬蟲通過客戶端的特征、屬性或用戶行為特點(diǎn)來區(qū)分正常用戶和爬蟲程序的手段
  • App網(wǎng)絡(luò)傳輸和數(shù)據(jù)收發(fā)相對(duì)隱蔽,用戶無法直接查看客戶端發(fā)出的請(qǐng)求信息和服務(wù)端返回的響應(yīng)內(nèi)容,也無法直接查看App的代碼,構(gòu)成了反爬蟲
  • Python/ target=_blank class=infotextkey>Python常見反爬蟲類型(信息校驗(yàn)型、動(dòng)態(tài)渲染、文本混淆、特征識(shí)別反爬蟲等)

5、App反爬蟲

(1)App抓包軟件

  • 可以安裝mitmproxy、charles、fillder三者之一對(duì)手機(jī)抓包
  • 原由:借助抓包工具能夠查看App的網(wǎng)絡(luò)請(qǐng)求信息,前提是App使用的網(wǎng)絡(luò)傳輸協(xié)議是HTTP;如果App使用的網(wǎng)絡(luò)傳輸協(xié)議是HTTPS,需要計(jì)算機(jī)和手機(jī)端同時(shí)安裝證書;
  • 漏點(diǎn):對(duì)于Android手機(jī)只有版本號(hào)小于7的Android系統(tǒng)才允許在證書得到信任后對(duì)App抓包,高版本的需要刷機(jī)(有風(fēng)險(xiǎn));
  • 推薦:選擇使用Android模擬器(一個(gè)能夠在計(jì)算機(jī)上運(yùn)行Android系統(tǒng)的應(yīng)用軟件),模擬器允許用戶安裝任意版本的Android系統(tǒng),在接近真機(jī)體驗(yàn)的同時(shí)還不會(huì)造成任何設(shè)備的損壞;

(2)APK文件反編譯

  • 簽名驗(yàn)證是防止惡意連接和避免服務(wù)器端被數(shù)據(jù)欺騙的有效方式之一,也是后端API常用的防護(hù)手段之一;
  • 高級(jí)語言的源程序需要通過編譯生成可執(zhí)行文件,編譯就是將編程語言翻譯成計(jì)算機(jī)能夠識(shí)別和處理的二進(jìn)制數(shù)據(jù)的過程;
  • 反編譯又名計(jì)算機(jī)軟件反向工程,指的是將軟件應(yīng)用還原成開發(fā)語言代碼的過程;
  • APK(Android Application Package)即Android應(yīng)用程序包,如果我們想要查看Android應(yīng)用程序的源碼,就需要使用反編譯手段提取APK中的代碼;
  • 借助反編譯軟件Apktool和JADX將APK反編譯成代碼
  • 示例:安裝JADX軟件>啟動(dòng)JADX軟件后>點(diǎn)擊“文件”菜單并在下方列表中選擇“打開文件”>選擇對(duì)應(yīng)的APK文件>點(diǎn)擊菜單欄“導(dǎo)航”_“搜索文本”>轉(zhuǎn)到相應(yīng)代碼 ;JADX軟件使用 , jadx下載與使用,jadx安裝包
  • App與服務(wù)器的通信使用的也是HTTP協(xié)議和WebSocket協(xié)議,所以基于這兩種網(wǎng)絡(luò)協(xié)議的反爬蟲手段可以應(yīng)用在App上,想要查看App的代碼,必須將對(duì)應(yīng)的APK文件反編譯成代碼

(3)App代碼混淆反爬蟲

  • 代碼混淆:將代碼轉(zhuǎn)換成一種功能等價(jià)但人類難以閱讀和理解的文本。混淆指使用簡(jiǎn)短或冗長(zhǎng)且無規(guī)律的字符替代代碼中的方法、類和變量的名稱,在缺乏注釋和混淆映射表的情況下,工程師幾乎無法閱讀項(xiàng)目代碼。
  • Anfroid代碼混淆其實(shí)是對(duì)項(xiàng)目中的字符進(jìn)行映射與壓縮。混淆時(shí)會(huì)將代碼中的類名、變量名和函數(shù)名用無意義的簡(jiǎn)短名稱進(jìn)行映射,如:
  • # 映射示例:映射前 ————》 映射后
    seaking ————》 eclass indexview ————》 class v
     
  • 這樣能夠保證反編譯APK后得到的代碼無法見名知意,令A(yù)PK難以被逆向。Android可以使用ProGuard
  • ProGuard是Android官方提供的代碼壓縮和混淆工具,它會(huì)檢測(cè)和移除封裝應(yīng)用中的未使用的類、字段、方法、屬性以及自帶代碼庫(kù)中的未使用項(xiàng)。ProGuard還可以優(yōu)化字節(jié)碼,移除未使用的代碼指令,以及用短名稱混淆其余的類和方法。
  • 每次構(gòu)建混淆規(guī)則時(shí),ProGuard會(huì)在/build/outputs/mapping/release/中輸出下列文件。
  • """這些文件便于開發(fā)者對(duì)混淆后的代碼進(jìn)行追蹤和調(diào)試,如果mapping,txt該文本被覆蓋或丟失,那么即使是項(xiàng)目開發(fā)者,也無法閱讀混淆過后的代碼"""
    dump.txt:說明APK中所有類文件的內(nèi)部結(jié)構(gòu);mapping.txt:提供原始與混淆過的類、方法和字段名稱之間的轉(zhuǎn)換;seeds.txt:列出未進(jìn)行混淆的類和成員;usage.txt:列出打算從APK文件中移除的代碼
  • 代碼混淆并不能阻止APK被反編譯,但是可以有效提高他人閱讀程序代碼的難度,進(jìn)而加強(qiáng)對(duì)數(shù)據(jù)的保護(hù)。代碼中的字符串并不會(huì)被混淆

(4)App應(yīng)用加固知識(shí)擴(kuò)展

  • 除了Android官方文檔介紹的代碼混淆方法外,App一般從防逆向、防調(diào)試、防篡改和防竊取的角度出發(fā),使用DEX加密、LLVM混淆、內(nèi)存監(jiān)控等手段保護(hù)自己的源代碼和資源
  • DEX加密的主要目的是防止App被反編譯。JADX等反編譯工具實(shí)際上是先將DEX文件編譯成Smail語言的代碼,再轉(zhuǎn)換成class文件進(jìn)行閱讀和修改。DEX加密實(shí)際上是用代碼對(duì)Android項(xiàng)目的Classes.dex文件進(jìn)行加密,就像在原來的DEX上面加了一層殼一樣,所以DEX加密又稱為加殼。

(5)App應(yīng)用程序自動(dòng)化測(cè)試工具Appium和Airtest

  • Appium提供了滑動(dòng)、觸摸(點(diǎn)擊)、長(zhǎng)按、模擬輸入和文本提取等常見功能;
  • Airtest Project也提供了滑動(dòng)、觸摸(點(diǎn)擊)、長(zhǎng)按、模擬輸入和文本提取等常見功能;它還支持“圖碼”混合編程

6、驗(yàn)證碼

  • 驗(yàn)證碼

分享到:
標(biāo)簽:爬蟲 App
用戶無頭像

網(wǎng)友整理

注冊(cè)時(shí)間:

網(wǎng)站:5 個(gè)   小程序:0 個(gè)  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會(huì)員

趕快注冊(cè)賬號(hào),推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫(kù),初中,高中,大學(xué)四六

運(yùn)動(dòng)步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動(dòng)步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績(jī)?cè)u(píng)定2018-06-03

通用課目體育訓(xùn)練成績(jī)?cè)u(píng)定