0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

frida-inject工具使用及說(shuō)明 內(nèi)置frida-inject工具到手機(jī)系統(tǒng)

哆啦安全 ? 來(lái)源:卓碼星球 ? 2023-10-26 10:42 ? 次閱讀

主要內(nèi)容:

frida-inject工具使用及說(shuō)明

內(nèi)置frida-inject工具到手機(jī)系統(tǒng)

1.frida-inject工具介紹

frida-injectfrida中提供的可以直接放到手機(jī)端執(zhí)行注入js腳本到App程序進(jìn)行hook的工具。也就是說(shuō)使用frida-inject命令可以脫離PC端執(zhí)行注入了。

平時(shí)我們用frida進(jìn)行App注入的時(shí)候,多半都是PC端安裝frida工具,然后把frida-server放到手機(jī)端。手機(jī)端啟動(dòng)frida-server開(kāi)啟端口監(jiān)聽(tīng),PC端的frida工具通過(guò)端口連接到frida-server然后相應(yīng)的命令去讓frida-server執(zhí)行相應(yīng)的操作。

2.frida-inject工具使用介紹

2.1 查看frida-inject命令說(shuō)明

frida-inject工具下載以后通過(guò)adb push命令放到手機(jī),比如放到路徑"/data/local/tmp/frida-inject",以下是adb push執(zhí)行參考:

C:UsersQiang>adbpushE:workspace素材frida-inject-14.2.14-android-arm64/data/local/tmp/frida-inject
E:workspace.lepushed,0skipped.37.7MB/s(41616776bytesin1.052s)

C:UsersQiang>adbshellchmod777/data/local/tmp/frida-inject

C:UsersQiang>

可以執(zhí)行如下命令查看當(dāng)前frida-inject命令的幫助說(shuō)明:

C:UsersQiang>adbshell
OnePlus3:/#cd/data/local/tmp
OnePlus3:/data/local/tmp#ls
d4484278-8615-41b0-9223-d849429bf888frida-injecttest.js
OnePlus3:/data/local/tmp#./frida-inject-h
Usage:
frida[OPTION?]

HelpOptions:
-h,--helpShowhelpoptions

ApplicationOptions:
-D,--device=IDconnecttodevicewiththegivenID
-f,--file=FILEspawnFILE
-p,--pid=PIDattachtoPID
-n,--name=NAMEattachtoNAME
-r,--realm=REALMattachinREALM
-s,--script=JAVASCRIPT_FILENAME
-R,--runtime=qjs|v8Scriptruntimetouse
-P,--parameters=PARAMETERS_JSONParametersasJSON,sameasGadget
-e,--eternalizeEternalizescriptandexit
-i,--interactiveInteractwithscriptthroughstdin
--developmentEnabledevelopmentmode
--versionOutputversioninformationandexit

OnePlus3:/data/local/tmp#

以下是使用frida-inject命令執(zhí)行App注入的簡(jiǎn)單測(cè)試,參考命令如下:

C:UsersQiang>adbshell
OnePlus3:/#cd/data/local/tmp
OnePlus3:/data/local/tmp#ls
OnePlus3:/data/local/tmp#./frida-inject-fcom.android.jnidemo01-s/data/local/tmp/test.js-e<
OnePlus3:/data/local/tmp?#

以上執(zhí)行的test.js腳本內(nèi)容如下,一個(gè)比較簡(jiǎn)單的打印HelloWorld代碼。

functionLog(info){
Java.perform(function(){
varLogCls=Java.use("android.util.Log");
LogCls.d("HelloWorld",info);
})
}
functionmain(){
Log("hellofrida-inject!");
Log("goodbyefrida-inject!");
}
setImmediate(main);

3.frida-inject下載

根據(jù)自己手機(jī)系統(tǒng)平臺(tái)選擇下載相應(yīng)的版本,下載地址:

https://github.com/frida/frida/releases

比如本篇中下載版本"frida-inject-14.2.14-android-arm64"。

4.內(nèi)置frida-inject到系統(tǒng)操作

4.1 創(chuàng)建模塊目錄myfridainject

在源碼根目錄創(chuàng)建模塊存儲(chǔ)目錄"frameworks/base/cmds/mycmds/fridainject"。參考如下:

qiang@ubuntu:~/lineageOs$mkdir-pframeworks/base/cmds/mycmds/fridainject
qiang@ubuntu:~/lineageOs$

4.2 創(chuàng)建模塊myfridainjectarm64

(1).將下載好的frida-inject程序拷貝到"myfridainject"目錄,并重命名為"myfridainjectarm64",如下所示:

qiang@ubuntu:~/lineageOs/frameworks/base/cmds/mycmds/fridainject$ls-lamyfridainjectarm64
-rwxrw-rw-1qiangqiang416167764月318:54myfridainjectarm64
qiang@ubuntu:~/lineageOs/frameworks/base/cmds/mycmds/fridainject$
qiang@ubuntu:~/lineageOs/frameworks/base/cmds/mycmds/fridainject$

(2).在myfridainject目錄下面同時(shí)創(chuàng)建模塊配置文件Android.mk,并添加如下模塊配置內(nèi)容:

#///ADDSTART
#///ADDEND
LOCAL_PATH:=$(callmy-dir)
include$(CLEAR_VARS)
LOCAL_MODULE:=myfridainjectarm64
LOCAL_MODULE_CLASS:=EXECUTABLES
LOCAL_SRC_FILES:=myfridainjectarm64
include$(BUILD_PREBUILT)

4.3 添加模塊myfridainjectarm64到源碼編譯鏈中

以上創(chuàng)建模塊myfridainjectarm64之后如果直接編譯手機(jī)刷機(jī)鏡像是不會(huì)被編譯到手機(jī)系統(tǒng)里面去的。需要將模塊"myfridainjectarm64"加入到源碼模塊編譯鏈中才行。
安卓系統(tǒng)中添加模塊到編譯鏈需要在文件"buildmake argetproductase_system.mk"中將模塊追加進(jìn)去。添加myfridainjectarm64模塊之后的參考:

#///ADDSTART
#addfridaservertosystem
#kernellogdxkernellogdgettopactivity
#///ADDEND

#Basemodulesandsettingsforthesystempartition.
PRODUCT_PACKAGES+=
myfridainjectarm64
kernellogdx
...

5.編譯系統(tǒng)

執(zhí)行如下命令編譯手機(jī)刷機(jī)鏡像:

qiang@ubuntu:~/lineageOs$sourcebuild/envsetup.sh
qiang@ubuntu:~/lineageOs$breakfastoneplus3
qiang@ubuntu:~/lineageOs$brunchoneplus3

6.驗(yàn)證測(cè)試

執(zhí)行如下命令測(cè)試是否內(nèi)置成功(ubuntu下執(zhí)行的命令):

qiang@ubuntu:~/lineageOs$adbshell
OnePlus3:/#myfridainjectarm64--version
14.2.14
OnePlus3:/#

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 手機(jī)
    +關(guān)注

    關(guān)注

    35

    文章

    6811

    瀏覽量

    157167
  • 端口
    +關(guān)注

    關(guān)注

    4

    文章

    934

    瀏覽量

    31945
  • 程序
    +關(guān)注

    關(guān)注

    115

    文章

    3742

    瀏覽量

    80661
  • 命令
    +關(guān)注

    關(guān)注

    5

    文章

    663

    瀏覽量

    21956

原文標(biāo)題:內(nèi)置frida-inject工具到手機(jī)系統(tǒng)

文章出處:【微信號(hào):哆啦安全,微信公眾號(hào):哆啦安全】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    Windows/Ubuntu安裝frida和objection

    Windows環(huán)境使用管理員權(quán)限安裝frida,Ubuntu使用普通或Root權(quán)限安裝均可。
    發(fā)表于 11-17 09:36 ?1109次閱讀

    基于frida-inject腳本持久化開(kāi)發(fā)實(shí)戰(zhàn)分享

    系統(tǒng)源碼App啟動(dòng)入口的地方,找一個(gè)合適的時(shí)機(jī)。
    的頭像 發(fā)表于 12-09 14:43 ?2265次閱讀
    基于<b class='flag-5'>frida-inject</b>腳本持久化開(kāi)發(fā)實(shí)戰(zhàn)分享

    對(duì)SFRA中SFRA_IQ_INJECT() 這一函數(shù)的使用不清楚

    大家好: 我最近在寫(xiě)用SFRA做一款LLC變換器的環(huán)路分析的程序,針對(duì)該種類(lèi)型的變換器,對(duì)SFRA中 SFRA_IQ_INJECT() 這一函數(shù)的使用不清楚,希望了解的能幫忙指點(diǎn)一下,謝謝!李
    發(fā)表于 08-31 15:17

    什么是apt?怎樣使用BufferKnife注入工具

    安卓to鴻蒙系列:ButterKnife(一)本文是關(guān)于ButterKnife的移植的第一篇:先介紹基礎(chǔ)知識(shí),理解apt是什么,最終輸出一個(gè)乞丐版BufferKnife注入工具。這是讀懂
    發(fā)表于 03-11 15:15

    講講Hook技術(shù)的攻防對(duì)抗思路

    對(duì)方的掌握中?! ook技術(shù)不但適用于x86系統(tǒng),也適用于基于簡(jiǎn)單指令集的移動(dòng)平臺(tái)系統(tǒng),比如手機(jī)等設(shè)備。其中,針對(duì)移動(dòng)設(shè)備的Hook技術(shù)主要以手機(jī)為主?! ?duì)于Android的Hoo
    發(fā)表于 09-28 11:12

    在哪里可以找到手冊(cè)和下載LIN NCF工具?

    在哪里可以找到手冊(cè)和下載 LIN NCF 工具?許多舊的 LIN 堆棧/封裝手冊(cè)中都提到了它。但是,我現(xiàn)在找不到它。
    發(fā)表于 04-19 07:28

    量產(chǎn)工具操作說(shuō)明

    量產(chǎn)工具操作說(shuō)明書(shū)。
    發(fā)表于 04-25 16:59 ?40次下載

    量產(chǎn)工具操作說(shuō)明

    本文主是介紹量產(chǎn)工具操作說(shuō)明。
    發(fā)表于 04-25 17:17 ?62次下載

    逆向基礎(chǔ)題:安裝包是11.ab,要求密碼驗(yàn)證登陸

    題目來(lái)源:2019XCTF MOBILE 第三題 題目:安裝包是11.ab,要求密碼驗(yàn)證登陸。 知識(shí)點(diǎn):Frida objection,SQLCipher加解密,Android備份和還原。 解題過(guò)程
    的頭像 發(fā)表于 11-02 11:40 ?1899次閱讀

    MTKTrace工具Catcher使用說(shuō)明

    MTKTrace工具Catcher使用說(shuō)明(電源技術(shù)應(yīng)用雜志社)-MTKTrace工具Catcher使用說(shuō)明? ? ? ? ? ? ? ? ??
    發(fā)表于 09-15 11:13 ?9次下載
    MTKTrace<b class='flag-5'>工具</b>Catcher使用<b class='flag-5'>說(shuō)明</b>

    APP破解常用工具集合!

    相對(duì)于Xposed而言,Frida算是一個(gè)在安全圈外沒(méi)有那么高知名度的Hook工具了,但它的功能在某些方面要比Xposed強(qiáng)得多(當(dāng)然也有缺點(diǎn)),舉個(gè)常用到的例子:用它來(lái)Hook So庫(kù)中的函數(shù)~。
    的頭像 發(fā)表于 07-23 11:07 ?4230次閱讀

    安卓常規(guī)逆向操作涉及到的知識(shí)點(diǎn)介紹

    持久化frida(獨(dú)立執(zhí)行frida,不需要借助adb 執(zhí)行frida-server終端命令)
    的頭像 發(fā)表于 09-20 09:13 ?756次閱讀
    安卓常規(guī)逆向操作涉及到的知識(shí)點(diǎn)介紹

    基于frida的Objection對(duì)APP逆向過(guò)程的作用

    在APP的逆向過(guò)程中避免借助使用一些反匯編工具,動(dòng)靜態(tài)調(diào)試分析工具,自然也免不了和frida這個(gè)工具打交道,frida作為強(qiáng)大的逆向分析
    的頭像 發(fā)表于 10-09 11:08 ?4185次閱讀

    Android使用Wireshark抓包

    Frida逆向分析APP實(shí)戰(zhàn) Objection動(dòng)態(tài)分析App Frida Hook的使用方法 Android逆向分析基礎(chǔ)(一) Android逆向分析基礎(chǔ)(二) 使用frida-net玩轉(zhuǎn)f
    的頭像 發(fā)表于 11-16 10:07 ?4007次閱讀

    編譯官方fridaserver或者strongFrida并替換系統(tǒng)內(nèi)置版本

    下載官方frida源碼并編譯安卓版本的fridaserver,然后替換內(nèi)置版本。
    的頭像 發(fā)表于 10-24 16:51 ?2831次閱讀