هنشتغل علي ابلكيشن frida app1 اول حاجة هنزل البرنامج علي emulator بتاعي
adb install app-1.apk
تعالي بقي نشوفه علي jadx
الابلكيشن بيعمل loop كل ثانية بعدها بينادي علي ال fun دي بتعمل جمع لاتنين value 50+30 بعدها بتخزنهم في ال log فاحنا حاليا عاوزين نشوف بيحصل اي في ال log
اول امر بيعرضلي اسم ال pakage name بتاع الابلكيشن والتاني بيعرض ال بيحصل في ال log
زي ماحنا قولنا بيطبع ال fun ال هي بتجمع الرقمين 50+30 طب الوقتي احنا عاوزين نعمل hook علي الفانكشن دي ونغير ال value الموجودة دا هنعملها ب frida tools فتعالي نعمل script js يعمل كدا
هنا غيرنا ال value ل 10+50 وحصل hook عليها زي مانت شايف
Java.perform(function() {
var my_cls = Java.use("com.example.a11x256.frida_test.my_activity");
my_cls.fun.implementation = function(x, y) {
console.log("original call fun(" + x + ", " + y + ")");
var ret = this.fun(10, 50);
return ret;
};
});
شرح الكود
Java.perform(function() { ... });: ده بيعني إننا هنستخدم فريدا للتفاعل مع الكود الجافا.
var my_cls = Java.use("com.example.a11x256.frida_test.my_activity");: ده بيستخدم الكلاس اللي اسمه "my_activity" في التطبيق وبيخزنه في متغير my_cls.
my_cls.fun.implementation = function(x, y) { ... };: ده بيعني إننا هنعيد تعريف دالة اسمها "fun" الموجودة داخل الكلاس my_cls. هذه الدالة هي التي سنقوم بتغيير سلوكها.
console.log("original call fun(" + x + ", " + y + ")");: ده بيعني إننا هنعمل طباعة رسالة على الكونسول توضح استدعاء الدالة الأصلية "fun" والقيم التي تم تمريرها لها.
var ret = this.fun(10, 50);: ده بيعني إننا هنستدعي الدالة الأصلية "fun" ونمرر لها القيم 10 و 50، ونخزن القيمة المُعادة من الدالة في متغير ret.
return ret;: ده بيعني إننا هنرجع القيمة المُعادة من الدالة "fun" بعد تنفيذها.
باختصار، الكود ده بيهدف إلى تغيير سلوك دالة "fun" في الكلاس "my_activity" في التطبيق المستهدف. عند استدعاء هذه الدالة، سيتم طباعة رسالة على الكونسول توضح القيم الممررة لها، ثم سيتم استدعاء الدالة الأصلية "fun" مع قيم معينة وسيتم إرجاع القيمة التي تمت من الدالة الأصلية
التعليقات (0)
لايوجد لديك حساب في عالم البرمجة؟
تحب تنضم لعالم البرمجة؟ وتنشئ عالمك الخاص، تنشر المقالات، الدورات، تشارك المبرمجين وتساعد الآخرين، اشترك الآن بخطوات يسيرة !