国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

安卓騰xQ協(xié)議逆向-TLV544定位 (二)

這篇具有很好參考價(jià)值的文章主要介紹了安卓騰xQ協(xié)議逆向-TLV544定位 (二)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

? ? ? ? 為了方便后面使用xposed和unidbg調(diào)用,我們來先分析一下tlv544是如何在java層與so層是怎么定位到關(guān)鍵代碼的。

一、TLV544:Java層定位

由于qq沒啥混淆,打開jadx直接就可以搜索到相關(guān)的tlv類,如下。

安卓騰xQ協(xié)議逆向-TLV544定位 (二),安卓qq分析,android,javascript,開發(fā)語言

?通過這一排的類的名字,我們可以找到tlv544一些相關(guān)的字符串,如下。

安卓騰xQ協(xié)議逆向-TLV544定位 (二),安卓qq分析,android,javascript,開發(fā)語言

?通過trace這個(gè)tlv_t544類可以發(fā)現(xiàn)確實(shí)調(diào)用了它生成tlv544,如下。

安卓騰xQ協(xié)議逆向-TLV544定位 (二),安卓qq分析,android,javascript,開發(fā)語言

?繼續(xù)追蹤分析......

安卓騰xQ協(xié)議逆向-TLV544定位 (二),安卓qq分析,android,javascript,開發(fā)語言

????????發(fā)現(xiàn)調(diào)用到了com.tencent.mobileqq.qsec.qsecdandelionsdk.Dandelion這個(gè)類里面。通過fly方法調(diào)用energy這個(gè)方法返回tlv544的加密結(jié)果,而這個(gè)函數(shù)存在于native層。

二、TLV544:So層定位

????????我們發(fā)現(xiàn)在這個(gè)類中,并沒有在靜態(tài)塊調(diào)用so的加載函數(shù),那么肯定是在其他類加載的so。對(duì)我們尋找jni函數(shù)造成了麻煩。

? ? ? ? 1)靜態(tài)注冊(cè)的jni函數(shù)定位

????????我們依然使用frida去hook查找,代碼如下。

// 靜態(tài)函數(shù)搜索
function hook_dlsym(){
    // 獲取dlsym函數(shù)的地址
    let dlsymAddr = Module.findExportByName("libdl.so","dlsym");
    console.log(dlsymAddr);
    // hook dlsym
    Interceptor.attach(dlsymAddr,{
        onEnter:function(args){
            this.args1 = args[1];
        },
        onLeave:function(retval){
            let md= Process.findModuleByAddress(retval);
            if(md==null)return;
            console.log("函數(shù):"+this.args1.readCString(),"模塊:"+md.name,"地址:"+retval,"偏移:"+retval.sub(module1.base));
        }
    })
   
}
hook_dlsym();

????????dlsym這個(gè)函數(shù),會(huì)在運(yùn)行時(shí)被調(diào)用,它傳入了兩個(gè)參數(shù),一個(gè)是handle(對(duì)我們沒啥用),一個(gè)是symbol(這個(gè)就是我們的函數(shù)符號(hào)),它會(huì)返回當(dāng)前這個(gè)函數(shù)的地址。

效果,如下(模糊的話,雙擊查看就可以了):?

安卓騰xQ協(xié)議逆向-TLV544定位 (二),安卓qq分析,android,javascript,開發(fā)語言

通過搜索發(fā)現(xiàn)并沒有找到我們想要的energy函數(shù),不要著急,還有一種方式 。

2)動(dòng)態(tài)注冊(cè)的jni函數(shù)定位

????????眾所周知,jni函數(shù)注冊(cè)的方式有兩種,靜態(tài)的不行,那就hook動(dòng)態(tài)的。我們來hook RegisterNatives這個(gè)函數(shù),通過它來獲取JNINativeMethod數(shù)組中的方法,frida代碼如下:

function hook_RegisterNatives() {
    var RegisterNatives_addr = null;
    var symbols = Process.findModuleByName("libart.so").enumerateSymbols();
    for (var i = 0; i < symbols.length; i++) {
        var symbol = symbols[i].name;
        if ((symbol.indexOf("CheckJNI") == -1) && (symbol.indexOf("JNI") >= 0)) {
            if (symbol.indexOf("RegisterNatives") >= 0) {
                RegisterNatives_addr = symbols[i].address;
                console.log("RegisterNatives_addr: ", RegisterNatives_addr);
            }
        }
    }
    Interceptor.attach(RegisterNatives_addr, {
        onEnter: function (args) {
            var env = args[0];
            var jclass = args[1];
            var class_name = Java.vm.tryGetEnv().getClassName(jclass);
            var methods_ptr = ptr(args[2]);
            var method_count = args[3].toInt32();
            console.log("RegisterNatives method counts: ", method_count);
            for (var i = 0; i < method_count; i++) {
                var name = methods_ptr.add(i * Process.pointerSize * 3).readPointer().readCString();
                var sig = methods_ptr.add(i * Process.pointerSize * 3 + Process.pointerSize).readPointer().readCString();
                var fnPtr_ptr = methods_ptr.add(i * Process.pointerSize * 3 + Process.pointerSize * 2).readPointer();
                var find_module = Process.findModuleByAddress(fnPtr_ptr);
                console.log("類: ", class_name, "方法: ", name, "簽名: ", sig, "函數(shù)地址: ", fnPtr_ptr, "模塊名: ", find_module.name, "函數(shù)偏移: ", ptr(fnPtr_ptr).sub(find_module.base));
            }
        },
        onLeave: function (retval) {}
    });
}
hook_RegisterNatives()

然后我們搜索就能找到我們的energy函數(shù),它位于libfekit.so 中偏移0x79134位置,如下。?

安卓騰xQ協(xié)議逆向-TLV544定位 (二),安卓qq分析,android,javascript,開發(fā)語言

拖入ida查看,如下:

安卓騰xQ協(xié)議逆向-TLV544定位 (二),安卓qq分析,android,javascript,開發(fā)語言

先到這里,下一篇更精彩,后面就分析如何使用xposed怎么調(diào)用這個(gè)tlv544。文章來源地址http://www.zghlxwxcb.cn/news/detail-646699.html

到了這里,關(guān)于安卓騰xQ協(xié)議逆向-TLV544定位 (二)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Android查看簽名信息系列 · 使用逆向分析工具JadxGUI獲取簽名

    Android查看簽名信息系列 · 使用逆向分析工具JadxGUI獲取簽名

    前言 Android查看簽名信息系列之使用逆向分析工具JadxGUI獲取簽名,通過這種方式,可以獲取到的簽名信息包括:MD5、SHA1、SHA-256、公鑰(模數(shù))等信息 實(shí)現(xiàn)方法 1、進(jìn)入JadxGUI目錄下的lib文件夾內(nèi),找到j(luò)adx-gui-1.4.7.jar文件 2、雙擊jadx-gui-1.4.7.jar進(jìn)入圖形界面,或者cmd進(jìn)入lib所在路徑

    2024年02月03日
    瀏覽(18)
  • 【0-1】從0.1開始學(xué)Android逆向-APK基本結(jié)構(gòu)概要分析

    【0-1】從0.1開始學(xué)Android逆向-APK基本結(jié)構(gòu)概要分析

    最近在進(jìn)行Android的逆向,在這里整理知識(shí)點(diǎn)和分享Android逆向知識(shí)。如果文章中有任何勘誤,誠摯的邀請(qǐng)師傅們批評(píng)改正! 逆向工程(Reverse Engineering)是一種分析和解剖已有產(chǎn)品、系統(tǒng)或軟件的過程,以了解其內(nèi)部工作原理、設(shè)計(jì)、功能或源代碼。逆向工程可以應(yīng)用于多個(gè)領(lǐng)

    2024年02月08日
    瀏覽(18)
  • web逆向筆記:js逆向案例四 QQ音樂 sign值(webpack打包代碼如何扣?。? decoding=

    web逆向筆記:js逆向案例四 QQ音樂 sign值(webpack打包代碼如何扣取)

    一、webpack介紹: ? Webpack 是一個(gè)模塊打包工具,主要用于 JavaScript 應(yīng)用程序。它可以將許多模塊打包成一個(gè)或多個(gè) bundle,從而優(yōu)化加載速度和減少加載時(shí)間。Webpack 可以處理各種資源,包括 JavaScript、CSS、圖片、字體等,并且可以將其轉(zhuǎn)換為瀏覽器可以理解的格式。 Webpack

    2024年04月25日
    瀏覽(29)
  • 安卓android向onenet物聯(lián)網(wǎng)云平臺(tái)請(qǐng)求數(shù)據(jù)(接入?yún)f(xié)議mqtts)

    安卓android向onenet物聯(lián)網(wǎng)云平臺(tái)請(qǐng)求數(shù)據(jù)(接入?yún)f(xié)議mqtts)

    使用android向onenet物聯(lián)網(wǎng)云平臺(tái)請(qǐng)求數(shù)據(jù) 在manifest加入uses-permission android:name=\\\"android.permission.INTERNET\\\"/,如圖所示: 在xml文件夾中創(chuàng)建一個(gè)名為“network_security_config”的xml文件,如圖所示: 其內(nèi)容為: 由于本人是用okhttp進(jìn)行網(wǎng)絡(luò)請(qǐng)求的,所以需要在build.gradle中加入此句: implem

    2023年04月27日
    瀏覽(32)
  • uniapp - [安卓|蘋果]實(shí)現(xiàn)App端引入高德地圖,詳細(xì)獲取當(dāng)前用戶手機(jī)定位、兩個(gè)地點(diǎn)的路線規(guī)劃及相關(guān)示例代碼,uniapp安卓Android平臺(tái)軟件下使用高德地圖,獲取當(dāng)前位置信息及規(guī)劃路線

    uniapp - [安卓|蘋果]實(shí)現(xiàn)App端引入高德地圖,詳細(xì)獲取當(dāng)前用戶手機(jī)定位、兩個(gè)地點(diǎn)的路線規(guī)劃及相關(guān)示例代碼,uniapp安卓Android平臺(tái)軟件下使用高德地圖,獲取當(dāng)前位置信息及規(guī)劃路線

    在uniapp安卓app端 | 蘋果app端開發(fā)中,詳細(xì)完成APP端引入使用高德地圖插件,提供可直接復(fù)制的示例,例如獲取當(dāng)前定位及取到當(dāng)前城市位置信息,規(guī)劃兩個(gè)位置的路線(規(guī)劃城市2個(gè)點(diǎn)的路線軌跡及在地圖上顯示)等示例。 新手跟著教程一步步來,輕松實(shí)現(xiàn)此功能。 首先,

    2024年02月22日
    瀏覽(197)
  • 記錄一次Android視頻播放音畫不同步問題的定位及分析

    記錄一次Android視頻播放音畫不同步問題的定位及分析

    音畫不同步很簡(jiǎn)單就是視頻播放過程中聲音和畫面出現(xiàn)的時(shí)間點(diǎn)不一致,滯后或者提前。 對(duì)于滯后或者提前很多的音畫不同步可以直接認(rèn)為發(fā)生了該問題,但是滯后或者提前不是很多的就需要進(jìn)行數(shù)據(jù)分析來證明該問題的確發(fā)生了,而不是人主觀感知的失誤 2.1.1.證明方式 需

    2024年02月15日
    瀏覽(17)
  • 安卓逆向_0 --- 逆向、安全、工具集

    安卓逆向_0 --- 逆向、安全、工具集

    ?吾愛 工具集 官網(wǎng):https://www.52pojie.cn/ 工具集:https://down.52pojie.cn? :https://www.52pojie.cn/thread-811805-1-1.html 看雪 工具集 官網(wǎng):https://bbs.kanxue.com/ 工具集:https://tools.pediy.com 看雪 知識(shí)庫 看雪 知識(shí)庫:https://www.kanxue.com/chm.htm?id=14693 安卓 逆向環(huán)境?r0env 安裝設(shè)置 r0env :https://m

    2024年02月09日
    瀏覽(26)
  • Web逆向、軟件逆向、安卓逆向、APP逆向,關(guān)于網(wǎng)絡(luò)安全這些你必須懂

    Web逆向、軟件逆向、安卓逆向、APP逆向,關(guān)于網(wǎng)絡(luò)安全這些你必須懂

    逆向工程是網(wǎng)絡(luò)安全行業(yè)里面一項(xiàng)很重要的技術(shù)。 逆向是一個(gè)相對(duì)正向而言的解釋,相對(duì)正向來說,對(duì)一個(gè)程序來講,正向就是開發(fā)的過程,從0到1。 就是在一個(gè)軟件誕生的整個(gè)生命周期中的一個(gè)過程, 也就是按照需求通過編碼把需求實(shí)現(xiàn),產(chǎn)生一個(gè)程序,當(dāng)然這個(gè)程序可

    2024年02月07日
    瀏覽(33)
  • 安卓逆向(二)httpClient使用

    在python里我們經(jīng)常使用 requests |?urllib| httpx 等進(jìn)行網(wǎng)絡(luò)請(qǐng)求,那么在Java中如何實(shí)現(xiàn)各種網(wǎng)絡(luò)請(qǐng)求呢? httpClient -HttpURLConnection -? Nohttp - Okhttp ?????????HttpClient 是 Apache下的子項(xiàng)目,可以用來提供高效的、最新的、功能豐富的支持 HTTP 協(xié)議的客戶端編程工具包,并且它支持

    2024年02月15日
    瀏覽(15)
  • 安卓逆向 和 手游輔助 學(xué)習(xí) 路線

    安卓逆向 和 手游輔助 學(xué)習(xí) 路線

    From:https://zhuanlan.zhihu.com/p/95915254 知乎:Android 逆向分析學(xué)習(xí)路線?:https://www.zhihu.com/question/25626303 入門篇 --- 學(xué)習(xí)Android安全和逆向開發(fā)的路線總結(jié):https://www.52pojie.cn/thread-1065039-1-1.html 0. 安卓逆向基礎(chǔ)(建議1周) 1. 學(xué)習(xí)安卓逆向第一步必須先把環(huán)境搭建好,這是你學(xué)習(xí)安卓逆

    2024年02月02日
    瀏覽(39)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包