Android IME / InputMethodService Matumizi Mabaya (Vibodi zenye madhara)
Tip
Jifunze na fanya mazoezi ya AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Jifunze na fanya mazoezi ya GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Jifunze na fanya mazoezi ya Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Support HackTricks
- Angalia mpango wa usajili!
- Jiunge na 💬 kikundi cha Discord au kikundi cha telegram au tufuatilie kwenye Twitter 🐦 @hacktricks_live.
- Shiriki mbinu za hacking kwa kuwasilisha PRs kwa HackTricks na HackTricks Cloud repos za github.
Muhtasari
Android inaruhusu kibodi za wahusika wa tatu kupitia InputMethodService (IME). Mara mtumiaji anapowasha kibodi na kuichagua kama current input method, IME inaweza kuangalia (na kuathiri) takriban ingizo lote la maandishi linalotolewa kwenye kifaa kwa apps zote.
Hii ndiyo sababu trojans kadhaa za benki za Android hujumuisha kipengele cha “kibodi salama”: IME yenye madhara hupokea vitufe hata kutoka kwa apps ambazo hazijawahi kuingiza WebView (apps za benki, za mazungumzo, pochi za crypto, n.k.).
Note
android.permission.BIND_INPUT_METHODkwa kawaida huainishwa kwenye huduma ya IME service ili mfumo pekee uweze kuibatiza. Kuweka kibadilisho hicho hakutoa vibali maalum peke yake; hatua muhimu ni kumshawishi mwathiriwa kuwasha/kuchagua kibodi katika Mipangilio.
Manifest declaration
Kibodi inaonyeshwa kupitia huduma yenye kitendo cha intent android.view.InputMethod na XML ya usanidi ya IME:
<!-- AndroidManifest.xml -->
<service
android:name=".SpyKeyboard"
android:permission="android.permission.BIND_INPUT_METHOD"
android:exported="false">
<intent-filter>
<action android:name="android.view.InputMethod" />
</intent-filter>
<meta-data
android:name="android.view.im"
android:resource="@xml/spy_ime" />
</service>
Hunting tip: programu isiyoonekana kama kibodi ambayo inatangaza InputMethodService ni ishara kali ya hatari.
Wapi data inatoka
Wakati wa runtime, IME inajifunza:
- Programu lengwa ambayo inaandikishwa (kupitia
EditorInfo, kwa mfanoattribute.packageNamekatikaonStartInput). - Maandishi yanayoingizwa (kupitia mwingiliano wa IME na
InputConnectionya sasa na/au matukio ya funguo kulingana na utekelezaji).
Mchoro mdogo (usiofanya kazi) wa eneo la hook lenye ishara kubwa:
public class SpyKeyboard extends InputMethodService {
@Override public void onStartInput(EditorInfo attribute, boolean restarting) {
// attribute.packageName identifies the foreground app receiving input
}
}
Mtiririko wa kawaida wa kuwezesha na ukusanyaji (uliobainika katika mazingira ya kweli)
- APK inauzwa kama “kibodi salama” au kibodi imejumuishwa ndani ya trojan kubwa zaidi.
- Malware hupeleka mwanaathiriwa kwenye mipangilio ya kibodi ya mfumo (kwa mfano kwa kuanzisha
Settings.ACTION_INPUT_METHOD_SETTINGSna/au kwa kutumia UI automation) hadi IME iwe imewezeshwa na kuwekwa kama chaguo-msingi. - Bonyezo za kibodi huwekwa kwenye buffer kwa kila app na hutolewa kwa njia ya chaneli ya C2 ya malware iliyopo, mara nyingi zikichanganywa na vyanzo vingine vya data (mfano,
WebViewman-in-the-browser telemetry).
Jinsi ya kutambua / kuchunguza
Ukaguzi kwenye kifaa
- Mipangilio: Kibodi zilizosanikishwa / kibodi chaguo-msingi (angalia IME zisizojulikana).
- ADB:
adb shell dumpsys input_method
adb shell ime list -a
adb shell ime help
Tathmini ya statiki ya APK
- Tafuta madarasa ya
InputMethodServicena intent filter yaandroid.view.InputMethod. - Chunguza
@xml/*IME config inayorejelewa naandroid.view.im. - Kagua kama utendakazi ulioelezwa wa app unaendana na kutolewa kwa UI/rasilimali kamili za keyboard.
Kupunguza hatari
- User/MDM: weka keyboards za kuaminika kwenye orodha ya kuruhusu; zuia IMEs zisizojulikana kwenye profaili/vifaa vinavyosimamiwa.
- App-side (high risk apps): pendelea uthibitishaji sugu kwa phishing (passkeys/biometrics) na epuka kutegemea “secret text entry” kama mipaka ya usalama (IME yenye nia mbaya iko chini ya UI ya app).
Tip
Jifunze na fanya mazoezi ya AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Jifunze na fanya mazoezi ya GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Jifunze na fanya mazoezi ya Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Support HackTricks
- Angalia mpango wa usajili!
- Jiunge na 💬 kikundi cha Discord au kikundi cha telegram au tufuatilie kwenye Twitter 🐦 @hacktricks_live.
- Shiriki mbinu za hacking kwa kuwasilisha PRs kwa HackTricks na HackTricks Cloud repos za github.


