Android¶ñÒâÈí¼þ»ìºÏÓëÆ¥µÐ¼¼ÊõרÌâ
°ä²¼¹¦·ò 2024-11-25µÚÒ»Õ ¸Å Êö
½üÄêÀ´£¬Android¶ñÒâÈí¼þÊýÁ¿²»ÐÝÅÊÉý£¬ÆäѡȡµÄ¹¥»÷ºÍÆ¥µÐ¼¼ÊõÒ²±äµÃÔ½À´Ô½¸´ÔÓ¡£ÎªÁËÆ¥µÐ°²È«·ÖÎö£¬Èƹý°²È«¼ì²â£¬ÇÔÈ¡Ãô¸ÐÊý¾Ý»ò·ÛËéϵͳ°²È«£¬¶ñÒâÈí¼þÀûÓø÷ÀàÆ¥µÐ¼¼ÊõÀ´¼Ù×°ºÍ°µ²ØÆä¶ñÒâÐÐΪºÍ´úÂëÂß¼¡£ÕâЩƥµÐ¼¼ÊõÖУ¬Õë¶Ô×ÊÔ´¡¢Îļþ¡¢×Ö½ÚÂëÖ¸Áî¼°»úеÂëÖ¸ÁîµÄ»ìºÏ¼¼Êõ±»¿í·ºµØÒýÈëµ½¶ñÒâÈí¼þÖУ¬³ÉΪ¸ß¼¶ºÚ¿ÍÓëÄæÏò¹¤³ÌʦƥµÐµÄ³ÁÒªÕ½³¡¡£
»ìºÏ¼¼ÊõµÄÖ÷ÌâÖ¸±êÊÇÔö³¤·ÖÎö¸´ÔÓÐÔÀ´Æ¥µÐÄæÏò¹¤³Ì£¬Í¬Ê±Ò²ÄÜÌá¸ßÃâɱÄÜÁ¦£¬ÖØÒªÆ¥µÐÖ¸±êÔ̺¬ÄæÏò¹¤³Ìʦ¡¢¾²Ì¬·ÖÎö¹¤¾ß¡¢¶¯Ì¬µ÷ÊÔ¹¤¾ßÒÔ¼°×Ô¶¯»¯¼ì²âϵͳ¡£»ìºÏ¼¼Êõͨ¹ýÉèÖ÷ÖÎöÏÝÚ塢ŤתÎļþ½á¹¹¡¢Ôö³¤Ö¸ÁÔÓ¶È¡¢Ðé¹¹»¯Ö¸Áî¡¢°µ²Ø´úÂëºÍ×ÊÔ´µÈ¸÷Àà·±Îߵļ¼ÊõÀ´¸²¸ÇÆäÐÐÎªÌØµãºÍ¹¥»÷Òâͼ£¬Í¬Ê±¸ø·ÖÎöÈËÔ±¾¡¿ÉÄÜ´óµÄÔì×÷·ÖÎö×è°£¬ÑÓºóÆä¶ñÒâÐÐΪ¶³öµÄ¹¦·ò¡£Í¬Ê±£¬¶ñÒâÈí¼þͨ¹ý×éºÏʹÓø÷Àà¸÷ÑùµÄ»ìºÏÓë·ÖÎöÆ¥µÐ¼¼Êõ£¬¶ÔÏÖÓа²È«¼ì²â¹¤¾ßºÍ·À»¤»úÔìÐγÉÁËÑϸñÌôÕ½¡£Õâ±ØÒª²»Ðݸú½ø¸÷À༼ÊõµÄ·¢Õ¹£¬¶Ôеļ¿Á©½øÐÐÉî¿Ì×êÑУ¬Ôì¶©ÓÐЧÇÒ¼±¾çµÄÓ¦¶Ô²½Ö裬ǿ»¯·ÖÎö¹¤¾ßºÍ¼ì²â¹¤¾ß£¬Í¬Ê±Ò²ÓÐÖúÓÚ¼±¾çÓ¦¶Ô¸ß¼¶ÇÒ¸´ÔӵĶñÒâÈí¼þ¹¥»÷¡£
Ëæ×ÅÒÆ¶¯°²È«ÁìÓòÆ¥µÐµÄ²»ÐÝÉý¼¶£¬Android ¶ñÒâÈí¼þµÄ»ìºÏ¼¼ÊõÒ²¾ÀúÁËÏÔÖøµÄ·¢Õ¹£¬´Óµ¥Ò»µÄ±êʶ·û»ìºÏÖð²½Ñݽøµ½¸´ÔÓµÄÐé¹¹»¯±£»¤£¨VMP£©¼¼Êõ£¬³öÏÖ³öÓÉdzÈëÉî¡¢Öð²½Éý¼¶µÄÇ÷Ïò¡£Îª¸üÇ峺µØÀí½âÕâÒ»±ä¶¯£¬ÎÒÃǽ«»ìºÏ¼¼ÊõµÄ·¢Õ¹´óÌå»®·ÖΪÔçÆÚ¡¢ÖÐÆÚºÍµ±Ç°½×¶Î£¬²¢´Ó·ÖÆç²ãÃæ½øÐоßÌå½âÎö¡£
2.1 ÔçÆÚ½×¶Î£º»ù´¡¼Ù×°Óëµ¥Ò»¼ÓÃÜ
ÔÚÔçÆÚ£¬¶ñÒâÈí¼þµÄ»ìºÏ¼¼ÊõÖØÒªÒÔ¸²¸Ç´úÂëºÍ×ÊÔ´ÄÚÈÝΪָ±ê£¬¼¿Á©½ÏΪµ¥Ò»Ïò½Ó£¬Æä»ìºÏ¼¼ÊõÖØÒª¼¯ÖÐÓÚJava²ã£¬ÀûÓÃAndroidÀûÓÃÒÔJava˵»°¿ª·¢µÄ¸öÐÔ£¬Í¨¹ýµ¥Ò»µÄ»ìºÏ¼¿Á©¶ã±Ü°²È«·ÖÎöºÍ¼ì²â¡£ÔÚÕâһʱÆÚ£¬¶ñÒâÈí¼þÆðÍ·Ë÷ÇóÎļþÌåʽÓйصĻìºÏÕ½Êõ¡£ÀýÈ磬ͨ¹ýÅú¸ÄZIPÌåʽµÄAPKα¼ÓÃÜ£¬ÒÔ¼°2012ÄêºÚñ´ó»áÉϳõ´ÎÌá³öµÄÀûÓÃDEXÍ·°µ²Ø´úÂëµÄ¼¼Êõ£¬ÕâÒ»Õ½ÊõËæºó±»Syrup¶ñÒâÈí¼þËùѡȡ¡£Í¬Ê±£¬Ä¾ÂíObadÀûÓÃóÒ×»ìºÏ¹¤¾ßDexGuard£¨ProGuardµÄ¼ÓÇ¿°æ£©ÊµÏÖÁËManifest×ֶεĸ´ÔÓ»ìºÏÒÔ¼°»ùÓÚclinit²½ÖèµÄ¶¯Ì¬´úÂë½âÃÜ£¬±»ÓþΪ¡°Ê·ÉÏ×îÇ¿AndroidľÂí¡±¡£
ÕâÒ»½×¶Î£¬¶ÌÐÅÀ¹½ØÀàºÍËø»úÀÕË÷Àà¶ñÒâÈí¼þ¿í·ºÑ¡È¡¶àÖÖ»ìºÏ¼¿Á©£¬Ô̺¬´úÂë»ìºÏ¡¢×Ö·û´®¼ÓÃÜ¡¢´úÂëÔ׸À¬»ø´úÂë×¢È룬ÒÔ¼°Ã³Ò׼ӹ̹¤¾ßµÄʹÓá£ÕâЩ¼¼ÊõÖ»¹ÜÏà¶Ô»ù´¡£¬µ«ÔÚÆäʱµÄ°²È«»·¾³ÖУ¬ÒѾÏÔÖøÌá¸ßÁ˶ñÒâÈí¼þµÄÒñ±ÎÐԺͿ¹¼ì²âÄÜÁ¦¡£ÏÂͼչʾÁËÒ»¿î¶ÌÐÅÀ¹½ØÄ¾ÂíµÄ»ìºÏ³ÉЧ¡£

ͼ1 Ò»¸ö¶ÌÐÅÀ¹½ØÄ¾ÂíµÄ»ìºÏʾÀý
2.2 ÖÐÆÚ½×¶Î£ºÂß¼¸´ÔÓ»¯Ó붯̬ƥµÐ
Ëæ×Ű²È«¼ì²â¼¼ÊõµÄ²»ÐÝÌáÉý£¬¶ñÒâÈí¼þÖð²½ÒýÈëÔ½·¢¸´ÔӵĻìºÏ¼¿Á©£¬ÒÔÌá¸ßÒñ±ÎÐÔ²¢ÓÐЧ¶ã±Ü·ÖÎö¡£Îª¶ã±Ü¾²Ì¬·ÖÎö£¬ËüÃÇÀûÓö¯Ì¬¼ÓÔØºÍ·´Éä»úÔ죬ͨ¹ý·´É䶯̬ŲÓðµ²ØµÄ¹Ø¼ü´úÂ롣ͬʱ£¬¶ñÒâÈí¼þѡȡ¶à³Á¼ÓÃÜÓë½âѹսÊõ£¬¶Ô¹Ø¼ü´úÂë½øÐж൵´Î¼ÓÃÜ£¬²¢ÔÚÔËÐÐʱͨ¹ý¸´ÔӵĽâÃܹý³ÌÖ𲽿ªÊÍÕæÊµµÄ¶ñÒâÂß¼¡£ÀýÈ磺ÔÚÎÒÃǰ䲼µÄ·ÖÎö»ã±¨¡¶ÐÂÐÍAndroidÒøÐÐľÂí¡°MoqHao¡±ÀûÓÃÉç½»ÍøÂç°µ²ØC&C·þÎñÆ÷¡·ÖУ¬¶ñÒâÈí¼þ½«ÕæÕýµÄ¶ñÒâdexÎļþ¼ÓÃܺó£¬ÒÔBase64±àÂëµÄ´ó¾Ö±£ÁôÔÚÔʼAPKµÄassetsĿ¼Ï¡£ÔÚÕâÖÖÇé¿öÏ£¬ÔʼAPK½ö×÷Ϊһ¸ö±í¿Ç´æÔÚ£¬ÆäÔÚÔËÐÐʱ»á¶¯Ì¬½âÃܲ¢¼ÓÔØÕæÕýµÄ¶ñÒâdexÎļþ£¬ÒÔʵÏÔìä¹¥»÷Ö÷ÕÅ£¬Æä¹ý³ÌÈçÏÂͼËùʾ£º

ͼ2 Java²ã»ìºÏdexÎļþµÄʾÀý
ΪÁËÇÖÈÅ·ÖÎöõè¾¶£¬¶ñÒâÈí¼þÒýÈë½ÚÔìÁ÷»ìºÏ¼¼Êõ¡£Í¨¹ý²åÈëÎ޹صķÖÖ§¡¢Ñ»·ºÍÌø×ªÓï¾ä£¬¶ñÒâÈí¼þʹ´úÂëÖ´ÐÐõè¾¶Ô½·¢¸´ÔÓ£¬¹ÊÕÏ·ÖÎöÈËÔ±»¹ÔÆäÂß¼¡£¶øÔÚ½áºÏóÒ׼ӹ̽â¾ö¹æ»®ºó£¬Í¨¹ýÄÚ´æ¼ÓÔØ¡¢Ö¸Áî³éÈ¡ºÍÖ¸Áîת»»µÈ¼¼Êõ£¬½øÒ»²½ÌáÉýÁËÆ¥µÐ·ÖÎöµÄÄÜÁ¦£¬Ê¹µÃ·ÖÎöÈËÔ±ÄÑÒÔÕýÈ·»¹ÔÆäÏÖʵµÄÖ´ÐÐÂß¼¡£
Ëæ×Å·´»ìºÏ¼¼ÊõµÄ½øÈ¡ºÍÏÖ´ú»¯·´±àÒ빤¾ßµÄ±é¼°£¬¶ñÒâÈí¼þÖð²½½«»ìºÏÕ½ÊõÏòNative²ã×ªÒÆ£¬ÒÔ½øÒ»²½ÌáÉýÄæÏò·ÖÎöµÄÄѶȡ£Æä³£Óü¼ÊõÔ̺¬¶Ô»á»°Êý¾Ý¼ÓÃÜÒÔÔ¤·ÀÃô¸ÐÐÅϢй¶¡¢¼ÓÃܹؼüº¯ÊýÌåÒÔ°µ²Ø¶ñÒâÐÐΪ¡¢²åÈ뻨ָÁî×ÌÈÅ·´»ã±à¹¤¾ß·ÖÎö¡¢ÀûÓÃLLVM¿ò¼ÜÖ´Ðи´ÔӵĴúÂë»ìºÏ£¬ÒÔ¼°Í¨¹ý·´µ÷ÊÔ¼¼Êõ¼ì²âºÍ×èÖ¹µ÷ÊÔÆ÷Ⱦָ¡£ÕâЩսÊõÏศÏà³É£¬²»½öÏÔÖøÔö³¤ÁËÄæÏò¹¤³ÌµÄ¸´ÔÓÐÔ£¬Ò²½øÒ»²½Ìá¸ßÁ˰²È«×êÑÐÈËÔ±·ÖÎöµÄ¼¼ÊõÃż÷¡£ÀýÈ磺ÔÚÎÒÃǰ䲼µÄ¡¶Ò»¿îͨ¹ýSO½øÐÐ×Ô±£»¤µÄÒøÐÐAPP½Ù³ÖľÂíÉî¶È·ÖÎö»ã±¨¡·ÖУ¬¾ßÌå·ÖÎöÁ˸ÃľÂíµÄÔËÐÐÐÐΪ¡£¾ßÌå¶øÑÔ£¬libload.soÄ£¿éÕÆ¹Ü½âÃܲ¢¼ÓÔØÏÖʵµÄ¶ñÒâ´úÂë¡£¸ÃÄ£¿éÀûÓÃJava·´Éä»úÔìŲÓÃjavax.crypto°üÖеļӽâÃܺ¯Êý£¬¶Ô´æ´¢ÔÚassetsĿ¼ÏµÄmycode.soÎļþ½øÐÐAES½âÃÜ¡£½âÃܺóµÄÎļþͨ¹ý×Ô½ç˵µÄDexClassLoader¼ÓÔØ²¢Ö´ÐУ¬Ö´ÐнáÊøºó£¬½âÃܵÄÎļþ»á±»É¾³ý¡£ÕâЩ¾«ÐÄÉè¼ÆµÄ»ìºÏ¼¿Á©ÓÐЧ°µ²ØÁ˶ñÒâÐÐΪ£¬ÏÔÖøÔö³¤Á˰²È«·ÖÎöµÄ¸´ÔÓÐÔ£¬Ê¹µÃ¶ñÒâÈí¼þµÄ¼ì²âºÍ·ÖÎö±äµÃÔ½·¢ÄÑÌâ¡£¼ÓÔØNative½âÃÜ¿âµÄ²¿ÃÅ´úÂëÈçÏÂͼËùʾ£º

ͼ3 Natvie²ã»ìºÏʾÀý
´Ë±í£¬Õë¶ÔÎļþÌåʽµÄ»ìºÏÕ½ÊõÒ²±äµÃÔ½·¢¶àÑùºÍ¸´ÔÓ¡£ËüÃÇÆæÃîÀûÓà Androidϵͳ¶ÔijЩÎļþÌåʽ×ֶοíËÉУÑéµÄ¸öÐÔ£¬Í¬Ê±½èÖú·´±àÒ빤¾ß¶ÔÎļþÌåʽµÄÑϸñ½âÎöÂß¼£¬Éè¼ÆÁ˶àÖÖ×ÌÈźͰµ²Ø»úÔ졣ͨ¹ý¶ÔÕâЩÎļþÌåʽµÄ½Ã½ÝÀûÓ㬶ñÒâÈí¼þµÃÒÔʵÏÖ¸ü¸ßˮƽµÄÒñ±ÎÐÔ£¬½øÒ»²½Ìá¸ßÁËÄæÏò·ÖÎöºÍ¼ì²âµÄÄѶȣ¬Í¬Ê±Ò²Îª»ìºÏ¼¼ÊõµÄ³ÖÐø·¢Õ¹µì¶¨ÁË»ù´¡¡£
2.3 µ±Ç°½×¶Î£º¸´ÔÓ»ìºÏÓë¶à²ãÆ¥µÐ
ÔÚµ±Ç°½×¶Î£¬¶ñÒâÈí¼þµÄ»ìºÏ¼¼ÊõÒѾ¸ß¶È¸´ÔÓ»¯£¬¿í·º½áºÏ¶¯Ì¬ºÍ¾²Ì¬Æ¥µÐ¼¿Á©£¬ÒÔ¼ÓÇ¿Òñ±ÎÐÔ²¢Æ¥µÐ¶àÖÖ¼ì²â²½Ö衣ͨ¹ý½«Java²ã´úÂë»ìºÏ¡¢¶¯Ì¬¼ÓÔØÓëNative²ã¼Ó¿Ç¼¼ÊõÈÚºÏʹÓ㬶ñÒâÈí¼þ½«Ö÷ÌâÂ߼ɢ²¼ÓÚ·ÖÆçµµ´ÎÖУ¬´ó·ùÌá¸ßÁ˼ì²âºÍ·ÖÎöµÄ¸´ÔÓÐÔ¡£ÒÔÏÂÊÇĿǰ³£¼ûµÄ»ìºÏÕ½Êõ£º
Java²ãÓëNative²ãÏà½áºÏ£º¶ñÒâÈí¼þͨ¹ý½«Java²ãµÄ´úÂë»ìºÏ¡¢¶¯Ì¬¼ÓÔØ¡¢VMPµÈ¼¼ÊõÓëNative²ãµÄ´úÂë»ìºÏ¼¿Á©Ïà½áºÏ£¬½«¶ñÒâÂß¼·ÖÉ¢ÔÚ·ÖÆçµµ´ÎÖС£ÕâÖÖ¿ç²ã»ìºÏÕ½ÊõÏÔÖøÔö³¤Á˼ì²âºÍ·ÖÎöµÄ¸´ÔÓ¶È£¬ÒªÇó·ÖÎöÈËÔ±Í¬Ê¹ØÆÎÕ¶àÖÖ¼¼Êõ£¬ÄÜÁ¦È«ÃæÀí½âÆäÔËÐлúÔì¡£ ʹÓÃÆäËû¿ª·¢Ëµ»°£º¶ñÒâÈí¼þ³£ÀûÓÃLua¡¢GoLang¡¢Flutter¡¢Ò×˵»°µÈ·Ç´«Í³µÄ C/C++ ˵»°½øÐпª·¢£¬´Ó¶øÏÔÖøÔö³¤ÄæÏò·ÖÎöµÄÄѶȡ£ÕâЩ˵»°¹ÖÒìµÄ¸öÐÔ½øÒ»²½Ìá¸ßÁË·ÖÎöµÄ¸´ÔÓÐÔ£¬Í¬Ê±¼õÈõÁË´«Í³ÄæÏò·ÖÎö¹¤¾ßµÄЧÄܺͳÉЧ¡£ ÔËÐл·¾³¼ì²â¼°·´µ÷ÊÔ£º¶ñÒâÈí¼þͨ¹ý²é³É豸µÄϵͳÊôÐÔ¡¢Îļþϵͳ½á¹¹¡¢ÏµÍ³È¨ÏÞ״̬µÈ£¬ÅжÏÖ¸±êÉ豸ÊÇ·ñΪ·ÂÕÕÆ÷»òÒÑ»ñÈ¡RootȨÏÞ£¬²¢ÔÚ¼ì²âµ½ÕâÐ©ÌØµãʱ×èÖ¹¶ñÒâÂß¼µÄÔËÐС£Í¬Ê±£¬ËüÃÇŲÓÃϵͳAPI²é³µ÷ÊÔ״̬£¬¼à²âµ÷ÊÔ¹¤¾ßÌØÓеÄÐÐΪ£¬ÉõÖÁ×Ô¶¯Òý·¢Òì³£ÒÔ²¶»ñµ÷ÊÔ¹¤¾ßµÄ·´Ó³£¬ÓÐЧ×èÖ¹¶¯Ì¬·ÖÎö¹¤¾ßµÄ×ÌÈÅ¡£ óÒ׼ӹ̱£»¤¼¼Êõ£ºÒ»Ð©¶ñÒâÈí¼þʹÓÃóÒ׼ӹ̱£»¤¼¼Êõ£¬½øÒ»²½¼ÓÇ¿ÁË´úÂëµÄ¿¹ÄæÏòÄÜÁ¦£¬Ê¹µÃ´«Í³µÄ°²È«¹¤¾ßºÍ·ÖÎö²½ÖèÄÑÒÔ¼ûЧ¡£ ´úÂëÐé¹¹»¯¼¼Êõ£ºÍ¨¹ý½«´úÂë·ÒëΪ×Ô½ç˵µÄÐé¹¹Ö¸Á£¬²¢ÔÚÔËÐÐʱͨ¹ýǶÈëµÄÐé¹¹»úÚ¹ÊÍÖ´ÐУ¬ÕâÖÖ¼¼Êõ¼«´óµØÌá¸ßÁËÄæÏò·ÖÎöµÄÄѶȡ£
ÀýÈ磬ij¶ñÒâÈí¼þͨ¹ýʹÓÃNative´úÂëʵÏÖ¶ÔFridaºÍIDAµÄ¼ì²â£¬Æä´úÂëÈçÏ£º

ͼ4 Natvie²ã¼ì²âµ÷ÊÔÆ÷µÄ´úÂëʾÀý
Android¶ñÒâÈí¼þµÄ»ìºÏ¼¼ÊõÒѾ´Óµ¥Ò»µÄ´úÂë»ìºÏÖð²½·¢Õ¹µ½Èç½ñ¸´ÔӵĿç²ã½áºÏ´ó¾Ö£¬ÆäÒñ±ÎÐÔ³ÖÐø¼ÓÇ¿£¬¼¼Êõ¼¿Á©Ò²Óú·¢¶àÑù»¯¡£ÕâÖÖ·¢Õ¹Ç÷Ïò¶Ô´«Í³°²È«¼ì²â¹¤¾ß¶øÑÔÊÇÑϸñµÄÌôÕ½£¬Í¬Ê±Ò²´Ùʹ×êÑÐÈËÔ±±ØÐë²»ÐÝ´´ÐÂÓ¦¶ÔÕ½Êõ£¬ÒÔ´ËÀ´Ó¦¶Ô¶ñÒâÈí¼þÈÕÒæ¸´ÔӵĻìºÏ¼¿Á©¡£Ôڴ˲¼¾°Ï£¬Éî¿ÌÏàʶ²¢½âÎö³£¼ûµÄ»ìºÏ¼¼Êõ£¬ÊÇÌáÉý¶ñÒâÈí¼þ·ÖÎöºÍ¼ì²âÄÜÁ¦µÄ¹Ø¼ü¡£½ÓÏÂÀ´£¬ÎÒÃǽ«Í¨¹ýÏÖʵ¹¤×÷Öг£Óöµ½µÄ¶ñÒâÈí¼þ»ìºÏ¼¼Êõ½øÐоßÌå·ÖÎö£¬Ì½ÇóÕâЩ¼¼ÊõµÄÀûÓ÷½Ê½¼°ÏàÓ¦µÄ·À±¸¶Ô²ß¡£
ÔÚ·ÖÎöAndroid¶ñÒâÈí¼þʱ£¬°²È«×êÑÐÈËԱͨ³£±ØÒª´Ó¾²Ì¬·ÖÎöºÍ¶¯Ì¬·ÖÎöÁ½·½Ã涯ÊÖ¡£¾²Ì¬·ÖÎöÍùÍùÊÇ×îÏȽøÐеIJ½Ö裬¶ø»ìºÏ¼¼Êõͨ¹ýÅú¸Ä´úÂëµÄ½á¹¹ºÍ±í°×·½Ê½£¨Èç×Ö·û´®¼ÓÃÜ¡¢´úÂë²ð·Ö¡¢¶¯Ì¬¼ÓÔØµÈ£©£¬Ê¹¶ñÒâÈí¼þµÄ·ÖÎöÄѶÈÏÔÖøÔö³¤¡£±¾ÎĽ«ÒÔ°²È«×êÑÐÈËÔ±·ÖÎöAPKÎļþµÄ¹ý³ÌΪÇÐÈëµã£¬Öð²½½éÉܸ÷Àà·´»ìºÏÕ½Êõ£¬Ô®ÊÖ×êÑÐÈËÔ±ÓÐЧӦ¶Ô·ÖÆçµµ´ÎµÄ»ìºÏ¼¼ÊõÌôÕ½¡£
3.1 APK·´±àÒ빤¾ßµÄÆ¥µÐ
ÔÚ·ÖÎöAndroidÀûÓÃʱ£¬Ê×ÏȱØÒªÊ¹ÓÃAPK·´±àÒ빤¾ß£¨ÈçApktool¡¢Jadx£©ÌáÈ¡APKÎļþÖеÄÔ´´úÂëºÍ×ÊÔ´¡£È»¶ø£¬¶ñÒâÈí¼þÍùÍù»áͨ¹ý¶àÖÖ»ìºÏ¼¿Á©¶ÔAPK½øÐб£»¤£¬ÒÔ×ÌÈÅ·´±àÒë¹ý³Ì¡£ÀýÈ磬¶ñÒâÈí¼þ¿ÉÄÜÀûÓÃAndroidÔÚ½âÎöAPKÎļþʱδÑϸñУÑéZIPÌåʽµÄijЩ×ֶΣ¬´Ó¶øÍ¨¹ý´Û¸ÄAPKÎļþµÄZIPÌåʽ×Ö¶ÎÀ´Èƹý»ùÓÚZIPÌåʽ½âÎöµÄ·´±àÒ빤¾ß¡£ÕâÖÖ¼¿Á©ÓÈÆä³£¼ûÓÚһЩ»ùÓÚAndroidµÄÒøÐÐľÂí£¨ÈçBianLian¡¢CerberusºÍTeaBot£©ÖУ¬Ö÷ÕÅÊÇ×èÖ¹°²È«×êÑÐÈËÔ±ºÍ×Ô¶¯»¯·ÖÎöƽ̨ÓÐЧÌáÈ¡APKÎļþÄÚÈÝ£¬½ø¶øÆ¥µÐ¾²Ì¬·ÖÎöºÍ·´²¡¶¾¼ì²â¡£
ΪÁ˸üºÃµØÀí½â¶ñÒâÈí¼þµÄ»ìºÏÕ½Êõ£¬ÓÈÆäÊÇÈôºÎͨ¹ý´Û¸ÄZIPÌåʽ×Ö¶ÎÀ´×ÌÈÅ·´±àÒë¹ý³Ì£¬ÓбØÒªÏàʶһЩZIPÎļþ½á¹¹µÄ¸ù»ùÐÅÏ¢¡£¹ÌÈ»ZIPÌåʽµÄ¾ßÌå½á¹¹³¬³öÁ˱¾ÎĵĻáÉÌÁìÓò£¬µ«ÎÒÃÇÄܹ»µ¥Ò»½éÉÜһЩ³£¼ûµÄ¡¢¶ñÒâÈí¼þʱʱ´Û¸ÄµÄ×ֶΡ£ÎÒÃÇÒÔ Python µÄzipfile.py Ä£¿éÖÐµÄ ZipInfo ÀàΪÀý£¬Õ¹Ê¾ÁË ZIPÎļþÔªÊý¾ÝÖеĶà¸ö¹Ø¼ü×ֶΡ£¾ßÌå×ֶμ°ÆäÔ¢ÒâÈçͼËùʾ£º

ͼ5 ZipinfoÀàµÄ½á¹¹ÐÅÏ¢
ÆäÖУ¬compress_type¡¢extract_version¡¢reservedºÍflag_bits¶¼ÊǶñÒâÈí¼þʱʱ´Û¸ÄµÄ×ֶΡ£ÕâЩÅú¸ÄÄܹ»µ¼Ö·´±àÒ빤¾ßÔÚ½âÎöÎļþʱ³öÏÖÃýÎó»òÎÞ·¨ÕýÈ·¶ÁÈ¡ÎļþÄÚÈÝ£¬´Ó¶øÓÐЧµØ¹ÊÕϾ²Ì¬·ÖÎö¹ý³Ì¡£Í¨¹ý´Û¸ÄÕâЩ×ֶΣ¬¶ñÒâÈí¼þ²»½ö¿ÉÄܶã±Ü³£¼ûµÄ·´±àÒ빤¾ß£¬»¹ÄÜÔö³¤±»¼ì²âµÄÄѶȣ¬Ìá¸ßÆäÔÚ¾²Ì¬·ÖÎöÖеÄÒñ±ÎÐÔ¡£
ÔÚÏàʶÁ˶ñÒâÈí¼þÈôºÎͨ¹ý´Û¸ÄZIPÌåʽ×Ö¶ÎÀ´Æ¥µÐ¾²Ì¬·ÖÎöºó£¬½ÓÏÂÀ´ÎÒÃDZØÒª¹Ø×¢AndroidÀûÓÃÖÐÁíÒ»¸ö³£¼ûµÄ·´±àÒ뼿Á©¡ª¡ªAndroidManifest.xmlÎļþ£¨ÒÔϼò³Æ¡°Çåµ¥Îļþ¡±£©¡£Çåµ¥ÎļþÊÇ·´±àÒë¹ý³ÌÖбØÐë½âÎöµÄ¹Ø¼ü²¿ÃÅ£¬ËüÔ̺¬ÁËÀûÓõÄÖ÷ÌâÅäÖã¬Èç×é¼þ¡¢È¨ÏÞµÈÐÅÏ¢¡£Òò¶ø£¬ÌáÈ¡¡¢¶ÁÈ¡ºÍ·ÖÎöÇåµ¥ÎļþÊǾ²Ì¬·ÖÎöAPKÑù±¾Ê±µÄÊ×Òª²½Ö衣ΪÁ˶ã±Ü·´±àÒ빤¾ßµÄ¼ø±ð£¬¶ñÒâÈí¼þͨ³£Í¨¹ý¾«ÐÄ´Û¸ÄÇåµ¥ÎļþÀ´×ÌÈÅÆäÕý³£½âÎö¡£ÓÉÓÚÇåµ¥ÎļþÔÚ¾²Ì¬·ÖÎöÖеijÁÒªÐԺ͸´ÔÓÐÔ£¬Ëü³ÉΪÁ˶ñÒâÈí¼þ³£Óõķ´±àÒëÆ¥µÐ¼¿Á©Ö®Ò»¡£ÈôÊǶÁÕß¶ÔÇåµ¥ÎļþµÄ¾ßÌå½á¹¹²»Ì«Ïàʶ£¬Äܹ»×ÔÐнӼûÒÔÏÂÁ´½Ó£¨https://bbs.kanxue.com/thread-194206.html£©²éÔÄÓйØÐÅÏ¢¡£
½ÓÏÂÀ´£¬ÎÒÃǽ«½éÉܼ¸ÖÖ³£¼ûµÄÇåµ¥Îļþ»ìºÏ¼¿Á©£¬Ì½Çó¶ñÒâÈí¼þÊÇÈôºÎͨ¹ýÕâЩ¼¿Á©Æ¥µÐ·´±àÒ빤¾ß²¢°µ²ØÆä¶ñÒâÐÐΪµÄ£º
£¨1£©Åú¸ÄXMLÎļþµÄħÊõ£º¶ñÒâÈí¼þͨ¹ý´Û¸ÄÇåµ¥ÎļþÖеÄħÊõ×ֶΣ¬Ê¹µÃ¾²Ì¬·ÖÎö¹¤¾ßÔÚ½âÎöʱ³öÏÖÃýÎó¡£ÕâЩÅú¸Äͨ³£²»»áÓ°ÏìÀûÓõÄÕý³£ÔËÐУ¬µ«»áµ¼Ö·ÖÎö¹¤¾ßÎÞ·¨ÕýÈ·½âÎöÇåµ¥ÎļþµÄ½á¹¹£¬ÉõÖÁ¿ÉÄÜÒý·¢·´±àÒ빤¾ßµÄÒì³£ÃýÎ󣬴Ӷø×èÖ¹·´±àÒë¹ý³Ì£¬ÎÞ·¨ÌáȡԴ´úÂë¡£

ͼ6 ×óͼΪÕý³£µÄħÊõ£¬ÓÒͼΪ»ìºÏµÄħÊõʾÀý
£¨2£©´Û¸Ä¹Ø¼ü×ֶΣº¶ñÒâÈí¼þ¿ÉÄÜ»á´Û¸ÄÇåµ¥ÎļþÖеĹؼü×ֶΣ¬ÀýÈçͨ¹ýÅú¸ÄStringPoolÖÐ×Ö·û´®µÄ¸öÊý¡£¹ÌÈ»AndroidϵͳÔÚÔËÐÐʱ²¢²»ÒÀÀµÕâ¸ö×Ö¶ÎÀ´ÍÆËã×Ö·û´®µÄ¸öÊý£¬¶øÊÇͨ¹ý¶¯Ì¬ÍÆËãÀ´´¦ÖÃ×Ö·û´®£¬µ«Ò»Ð©·´±àÒ빤¾ßÈ´»áÒÀÀµÕâ¸ö×Ö¶ÎÀ´½âÎöXMLÎļþÖеÄÄÚÈÝ¡£Í¨¹ý´Û¸ÄÕâ¸ö×ֶΣ¬¶ñÒâÈí¼þÄܹ»×ÌÈÅ·´±àÒ빤¾ßµÄÕý³£½âÎö£¬µ¼Ö¹¤¾ß¶ÁÈ¡µ½ÃýÎóµÄ×Ö·û´®¸öÊý£¬´Ó¶øÎÞ·¨ÕýÈ·½âÎöÇåµ¥ÎļþµÄ½á¹¹£¬½ø¶øÓ°Ï쾲̬·ÖÎöµÄÕýÈ·ÐÔºÍÆëÈ«ÐÔ¡£ÕâÖÖ¼¿Á©ÓÐЧÔö³¤Á˾²Ì¬·ÖÎö¹¤¾ßµÄ·ÖÎöÄѶȣ¬ÌáÉýÁ˶ñÒâÈí¼þµÄÒñ±ÎÐÔ¡£

ͼ7 ´Û¸ÄStringPoolSizeµÄ»ìºÏʾÀý
ÔÚÉÏͼÖУ¬ÎÒÃÇÄܹ»¿´µ½£¬stringCountµÄֵΪ2907£¬¶øStringOffsetsÆðÍ·ÓÚÆ«ÒƵØÎ»36£¬´óÓ×Ϊ 11628¡£StringOffsetsÊÇÒ»¸öÔ̺¬Ã¿¸ö×Ö·û´®ÔÚ×Ö·û´®³ØÖеÄÏà¶ÔÆ«ÒÆÁ¿µÄÊý×飬Æä´óÓ×Ϊ stringCount * 4£¬¼´ 11628¡£·´±àÒ빤¾ßÒÀÕÕ»ìºÏºóµÄstringCountÖµÍÆËãStringOffsets´óÓ×£¬²¢½øÐнâÎö£¬Òò¶ø½âÎöÁ˾ַ¸´í¡£ÕâÖÖ²»Ò»ÖÂÐÔÊǵ¼Ö·´±àÒ빤¾ß½âÎöʧ°ÜµÄÔÒò¡£È»¶ø£¬AndroidϵͳÔÚ´¦ÖÃÇåµ¥Îļþʱ²¢Î´Ö±½ÓÒÀÀµstringCount×ֶεÄÖµ¡£Í¨¹ý²é¿´ Android Ô´ÂëÄܹ»·¢ÏÖ£¬AndroidϵͳÔÚÔËÐÐʱƾ¾ÝÏÖʵÊý¾Ý¶¯Ì¬ÍÆËã stringPoolSize£¬¶ø·ÇÖ±½ÓʹÓÃÎļþÖÐÌṩµÄÊýÖµ¡£

ͼ 8 AndroidϵͳԴÂëÖÐÍÆËãmStringPoolSizeµÄ´úÂëʾÀý
£¨3£©²åÈëÔàÊý¾Ý£ºÓÐЩ¶ñÒâÈí¼þ»áÓÐÒâÔÚÇåµ¥ÖвåÈëһЩÔàÊý¾Ý¡£ÕâÖÖÊý¾Ý²»»á±»ÏÖʵʹÓ㬵«»á·ÛËéÇåµ¥ÎļþµÄÌåʽ£¬Ê¹µÃ½âÎö¹¤¾ßÄÑÒÔ¼ø±ðÆäÖеÄÓÐЧÐÅÏ¢¡£

ͼ9 ×óͼÏÔʾ`startEle0`ÄÚÈÝ£¬ÓÒͼչʾ`startEle0`ºÍ`startEle1`µÄÆ«ÒÆÁ¿¼°´óÓ×
ÉÏͼչʾÁËÒ»¸ö»ìºÏºóµÄÇåµ¥Îļþ¡£ÔÚ×óͼÖУ¬µÚÒ»¸östartElementµÄ´óÓ××Ö¶ÎΪ196£¬µ«headerÖеÄsize×Ö¶ÎΪ224£¬Òâζ×ÅstartElementºó¸½¼ÓÁË28×Ö½ÚµÄδ֪Êý¾Ý¡£ÓÒͼÖУ¬µÚ¶þ¸östartElementµÄÕØÊ¼µØÎ»Îª0x15A4£¬ÕýºÃλÓÚ²åÈëµÄÕâ28×Ö½ÚÀ¬»øÊý¾ÝÖ®ºó£¨ÓÒͼÖÐÂÌÉ«²¿ÃÅËùʾ£©¡£ÕâЩÓÐÓàµÄ28×ֽڻᵼÖ·´±àÒ빤¾ßÔÚºóÐø½âÎöʱ·¸´í¡£Androidϵͳ¿ÉÄÜÕý³£½âÎö£¬ÊÇÓÉÓÚÏµÍ³ÍÆËãÿ¸östartElementµÄµØÎ»Ê±£¬½öÒÀÀµÉÏÒ»¸östartElementµÄÕØÊ¼µØÎ»ºÍ´óÓ××ֶΣ¬´Ó¶ø×Ô¶¯Ìø¹ýÀ¬»øÊý¾Ý¡£
£¨4£©²åÈ볬³¤×Ö·û´®»òÌØÊâ×Ö·û£ºÎªÁË×ÌÈž²Ì¬·ÖÎö¹¤¾ßµÄÕý³£½âÎö£¬¶ñÒâÈí¼þ¿ÉÄÜ»áÔÚÌØ¶¨×Ö¶ÎÖвåÈ볬³¤×Ö·û´®¡¢ÌØÊâ·ûºÅ¡¢emoji±íÇé»ò²»Ë½¼û×Ö·û¡£ÕâЩ×Ö·û¹ÌÈ»²»»áÓ°ÏìÀûÓõÄÕý³£Ö°ÄÜ£¬µ«ËüÃÇÏÔÖøÔö³¤ÁË·ÖÎö¹¤¾ßµÄ´¦ÖÃÄѶȡ£ÈôÊÇ·´±àÒ빤¾ßµÄÈÝ´íÄÜÁ¦½Ï²î£¬ÕâЩÅú¸Ä¿ÉÄܵ¼Ö¹¤¾ß±ÀÀ£»òÎÞ·¨ÕýÈ·½âÎöÇåµ¥Îļþ£¬´Ó¶øÊ¹¾²Ì¬·ÖÎö±äµÃÔ½·¢ÄÑÌâ¡£

ͼ10 ͨ¹ý²»Ë½¼û×Ö·ûʵÏÖ³¬³¤ÀûÓÃÃû³Æ£¨label£©µÄʾÀý
ÉÏͼÖУ¬Çåµ¥ÎļþÖеÄlabel×ֶδÓstring.xmlÖеÄapp_name×ֶζÁÈ¡£¬¶øapp_name×Ö¶ÎÔòÔ̺¬Á˲»Ë½¼û×Ö·û£¨Èç\u0000£©ºÍ³¬³¤×Ö·û´®¡£Í¨¹ýÕâÖÖ·½Ê½£¬¶ñÒâÈí¼þÄܹ»ÓÐЧ×ÌÈÅ·´±àÒ빤¾ßµÄ½âÎö¹ý³Ì¡£ÈôÊÇ×Ô¶¯»¯·ÖÎöƽ̨µÄÈÝ´í»úÔì²»¼°£¬ÈçÊý¾Ý¿â×ֶζÔapp_name»òversion×ֶ㤶Å×ÐÏÞ¶È£¬ÕâЩ´Û¸Ä¿ÉÄܵ¼ÖÂÒì³££¬½ø¶øÊ¹¶ñÒâÈí¼þÔÚ×Ô¶¯»¯·ÖÎöƽ̨ÉÏ¡°ÒþÉí¡±£¬ÄÑÒÔ±»¼ì²âµ½¡£
ÔÚÕý³£µÄÇåµ¥ÎļþÖУ¬Start Namespace Chunkͨ³£´æ´¢¶¨Ãû¿Õ¼äÐÅÏ¢£¬ÆäÖÐPrefixÊÇÒ»¸ö4×Ö½ÚµÄË÷Òý£¬Ö¸Ïò×Ö·û´®³ØÖÐÏàÓ¦µÄ×Ö·û´®£¬ÓÃÓÚ±êʶ¶¨Ãû¿Õ¼äǰ׺£»UriÒ²ÊÇÒ»¸öË÷Òý£¬Ö¸Ïò×Ö·û´®³ØÖаµÊ¾¶¨Ãû¿Õ¼äURIµÄ×Ö·û´®¡£ÀýÈ磬ÔÚÒ»¸öδ¾¹ý»ìºÏµÄÇåµ¥ÎļþÖУ¬ÎÒÃÇÄܹ»¿´µ½PrefixµÄÖµ¶ÔÓ¦µÄ×Ö·û´®Îªandroid£¬¼´ËüÒýÓÃÁ˳߶ȵÄAndroid¶¨Ãû¿Õ¼ä¡£

ͼ11 Õý³£µÄprefixǰ׺ʾÀý
È»¶ø£¬Í¨¹ý¶Ô¶ñÒâÈí¼þÖз¢Prefix×ֶνøÐжñÒâ´Û¸Ä£¬¹¥»÷ÕßÄܹ»µ¼Ö·´±àÒ빤¾ßÔÚ½âÎöʱ²úÉúÃýÎó¡£ÕâÖÖ»ìºÏ·½Ê½ÀûÓÃÁË·´±àÒ빤¾ß¶ÔPrefixµÄÒÀÀµ£¬Ê¹µÃÆäÔÚ½âÎöʱ²úÉúÒì³££¬×ÌÈÅ·ÖÎöÈËÔ±¶Ô¶ñÒâÈí¼þµÄÅжϡ£ÏÂͼÊÇÒ»¸ö¾¹ý»ìºÏµÄÇåµ¥Îļþ¡£

ͼ12 »ìºÏºóµÄprefixʾÀý
´ÓͼÖÐÄܹ»¿´µ½£¬¶¨Ãû¿Õ¼äµÄPrefixÏÔʾΪ·Ç³ß¶È×Ö·û´®¡£PrefixµÄË÷ÒýÖµÖ¸Ïò×Ö·û´®³ØÖеĵØÎ»67£¬¶øUriÏÔʾÕý³£¡£²é¿´×Ö·û´®³ØÖÐË÷Òý67µÄÄÚÈÝ£¬ÎÒÃÇ·¢ÏÖ¸Ã×Ö·û´®ÊÇÒ»¶Î³¤¶ÈΪ20470µÄÂÒÂë×Ö·û¡£ÈçÏÂͼËùʾ£º

ͼ13 Ë÷ÒýÖµ67´¦µÄprefix×Ö·û´®µÄֵʾÀý
ÕâÖÖ³¬³¤×Ö·û´®»áµ¼ÖÂApktoolÔÚ·´±àÒëʱ±ÀÀ£¡£ÔÚApktoolµÄÃýÎóÈÕÖ¾ÖУ¬ÏÔʾÁË¡°Array Size¡±Òì³£ÐÅÏ¢¡£

ͼ14 Apktool·´±àÒëʱ³öÏÖµÄÒì³£ÃýÎóʾÀý
¾¹ý¶Ô±ÀÀ£ÎÊÌâµÄÈÆ¹ý´¦Öúó£¬ÌìÉúµÄAndroidManifest.xmlÎļþ´ïµ½ÁË16.7MB£¬ÇÒÔ̺¬´óÁ¿ÂÒÂ룬ÄÑÒÔÔĶÁ¡£

ͼ15 Ô̺¬´óÁ¿À¬»ø×Ö·ûµÄAndroidManifest.xmlÎļþʾÀý
Ò»¸öÓÐЧµÄ´¦Öò½ÖèÊǽ«PrefixµÄË÷ÒýÖµÖ¸Ïò×Ö·û´®³ØÖн϶̵Ä×Ö·û´®£¬ÒÔ±ãÌìÉúµÄÇåµ¥ÎļþÄÚÈÝÕý³£ÏÔʾ£¬±ãÓÚºóÐø·ÖÎöºÍÔĶÁ¡£
´Ë±í£¬Ò»Ð©¶ñÒâÈí¼þ»áÔÚÇåµ¥ÖвåÈë·ûºÅ»ò±íÇé·ûºÅ£¬Èô·´±àÒ빤¾ßÔÚ½âÎöʱδÕýÈ·´¦ÖÃÕâÐ©ÌØÊâ×Ö·û£¬Ò²¿ÉÄܵ¼Ö·´±àÒ빤¾ß±ÀÀ£¡£²åÈë±íÇé·ûºÅ½øÐлìºÏµÄÇåµ¥ÈçÏÂͼËùʾ£º

ͼ16 ͨ¹ý±íÇé·ûºÅ½øÐлìºÏµÄʾÀý
³ýÁËͨ¹ý´Û¸ÄZIPÌåʽ×ֶκͻìºÏÇåµ¥ÎļþÀ´Æ¥µÐ·´±àÒ빤¾ß±í£¬¶ñÒâÈí¼þ»¹Ê±Ê±Ñ¡È¡Ò»ÖÖÇ¿ÓÐÁ¦µÄÕ½Êõ¡ª¡ª»ìºÏresources.arscÎļþ¡£resources.arscÎļþÊÇAndroidÀûÓÃÖд洢×ÊÔ´Ó³Éä¹ØÏµµÄÖ÷ÌâÎļþ£¬ËüÊØ»¤ÁË×ÊÔ´IDÓëÏÖʵ×ÊÔ´ÎļþÖ®¼äµÄÓ³Éä¡£¶ñÒâÈí¼þͨ¹ý´Û¸ÄÕâ¸öÎļþ£¬¿ÉÄÜÓÐЧ×ÌÈÅ·´±àÒ빤¾ß¶Ô×ÊÔ´µÄÕýÈ·½âÎö£¬ÉõÖÁ¿ÉÄܵ¼Ö·´±àÒ빤¾ß±ÀÀ£»òÒì³£Í˳ö¡£ÀýÈ磬BOOMSLANG£¨Ê÷òÅ£©Òƶ¯Ú²Æ¼Ò×å¾ÍÀûÓÃÕâÒ»Õ½ÊõÆ¥µÐApktoolµÄ·´±àÒë¹ý³Ì£¬ÏÂͼÊÇÆä·´±àÒëʧ°ÜʱApktoolÌáÐѵÄÃýÎóÐÅÏ¢¡£

ͼ17 »ìºÏºóµÄBOOMSLANGÑù±¾µ¼ÖÂApktool·´±àÒëʧ°Ü
3.2 ´úÂë»ìºÏÓë·´»ìºÏ¼¼Êõ
Ò»µ©×êÑÐÈËÔ±Í»ÆÆÁËAPK°üµÄ³õ²½»ìºÏ£¬½ÓÏÂÀ´±ã»á½øÈëµ½´úÂë²ãÃæµÄ·ÖÎö¡£ÔÚÕâÒ»²ãÃæ£¬¶ñÒâÈí¼þͨ³£Ñ¡È¡¸÷Àà»ìºÏ¼¼Êõ£¬´ó·ùµØÔö³¤Á˾²Ì¬ºÍ¶¯Ì¬·ÖÎöµÄÄѶȡ£
3.2.1 ±êʶ·û»ìºÏ
±êʶ·û³Á¶¨ÃûÊÇ´úÂë»ìºÏÖÐ×î³£¼ûÇÒ×îÓÐЧµÄ¼¼ÊõÖ®Ò»£¬Ö¼ÔÚͨ¹ý½«ÓÐÒâ˼µÄ°üÃû¡¢ÀàÃû¡¢²½ÖèÃûºÍ±äÁ¿Ãû´úÌæÎªÎÞÒâ˼µÄ¡¢Ëæ»úÌìÉúµÄÃû³Æ£¬´Ó¶ø×ÌÈÅÄæÏò¹¤³ÌʦµÄ·ÖÎö¹ý³Ì¡£´Ë±í£¬±êʶ·û»ìºÏ»¹ÄÜÓÐЧ±Ü¿ªÒ»Ð©×Ô¶¯»¯·ÖÎöƽ̨£¬ÕâЩƽ̨ͨ³£ÒÀÀµÓÚ±êʶ·ûÀ´Ôì¶©¼ì²â¹æ¶¨¡£Í¨¹ý»ìºÏ±êʶ·û£¬¶ñÒâÈí¼þ¿ÉÄܶã±Ü»ùÓÚ±êʶ·ûµÄ¼ì²â£¬Ï÷¼õ±»Ê¶´ËÍâ·çÏÕ¡£³£¼ûµÄ±êʶ·û»ìºÏÕ½ÊõÔ̺¬Ê¹ÓÃËæ»ú×Ö·û×éºÏ£¨ÈçÊý×Ö¡¢×Öĸ»òÌØÊâ·ûºÅ£©¡¢Ñ¡È¡·ÇÓ¢Óï˵»°µÄ±êʶ·û£¨ÈçÖÐÎÄ¡¢ÈÕÓï¡¢º«Óï¡¢¶íÎĵȣ©¡¢Ê¹Ó󬳤×Ö·û±êʶ·û£¬»òͨ¹ý´úÌæ×´Ì¬ÀàËÆµ«Ô¢Òâ·ÖÆçµÄ×Ö·û£¨Èç×Öĸ¡°O¡±ÓëÊý×Ö¡°0¡±¡¢×Öĸ¡°I¡±ÓëÓ×д×Öĸ¡°l¡±µÈ£©À´×ÌÈÅ·ÖÎö¡£ÕâЩ»ìºÏÕ½Êõʹ¶ñÒâÈí¼þ¿ÉÄÜÓÐЧ°µ²ØÆäÖ°Äܲ¢Ôö³¤ÄæÏò·ÖÎöµÄÄѶȣ¬´Ó¶øÑÓ»º±»¼ì²âºÍʶ´ËÍ⹦·ò¡£ÎªÁËÓ¦¶ÔÕâÖÖ»ìºÏ£¬°²È«×êÑÐÈËÔ±Äܹ»Ê¹ÓôøÓз´»ìºÏÖ°Äܵķ´±àÒ빤¾ß£¬ÈçGda¡¢Jeb¡¢JadxµÈ£¬ÕâЩ¹¤ÓµÓÐÖúÓÚ¼±¾ç¸´Ô±»»ìºÏµÄ´úÂë²¢Ô®ÊÖ¼ø±ð¶ñÒâÐÐΪ¡£±êʶ·û»ìºÏʾÀýÈçÏÂͼËùʾ£º

3.2.2 ×Ö·û´®¼ÓÃÜ
¶ñÒâÈí¼þͨ³£Ñ¡È¡±àÂë»ò¼ÓÃܼ¿Á©¶Ô´úÂëÖеÄÃô¸Ð×Ö·û´®½øÐд¦Öã¬ÒÔÔ¤·À¶ñÒâ¹Ø¼ü×Ö£¨Èç¶ñÒâURL¡¢ºÅÁî»òÆäËûÃô¸ÐÊý¾Ý£©ÔÚ·´±àÒë¹ý³ÌÖб»Ö±½Ó¶³ö¡£ÕâЩ¼¼ÊõÓÐЧµØ×èÖ¹ÁË·ÖÎöÈËÔ±´Ó·´±àÒëÁ˾ÖÖÐÌáÈ¡¹Ø¼üÐÅÏ¢£¬ÓÈÆäÔÚÆ¥µÐ×Ô¶¯»¯·ÖÎöƽ̨µÄ¾²Ì¬·ÖÎöʱ£¬ÓµÓнÏÇ¿µÄ·À»¤³ÉЧ¡£³£¼ûµÄ×Ö·û´®»ìºÏ²½ÖèÔ̺¬×Ö·û²ð·ÖºÍ±àÂë»ìºÏ¡£×Ö·û²ð·Ö½«Ãô¸Ð×Ö·û´®Ô׸î³É¶à¸ö²¿ÃÅ£¬·¨Ê½ÔÚÔËÐÐʱÔÙÆ´½Ó³ÉÆëÈ«µÄ×Ö·û´®£»¶ø±àÂë»ìºÏÔòͨ¹ý¶Ô×Ö·û´®½øÐмÓÃÜ»òʹÓñàÂë¼¼Êõ£¨ÈçBase64±àÂë¡¢µ¥Ò»¼ÓÃÜËã·¨µÈ£©£¬ÔÚ·¨Ê½ÔËÐÐʱÔÙ½øÐнâÂë¡£ÕâЩ¼¿Á©²»½öÔö³¤Á˾²Ì¬·ÖÎöµÄÄѶȣ¬Ò²Ê¹µÃ·ÖÎö¹¤¾ßÎÞ·¨Ö±½Ó¼ø±ð³ö¶ñÒâÐÐΪ¡£ÕâÖÖ¼¼ÊõʹµÃ¾²Ì¬·ÖÎö¹¤¾ßÎÞ·¨Ö±½Ó¿´µ½¹Ø¼üÊý¾Ý¡£°²È«×êÑÐÈËÔ±Äܹ»Ê¹Óö¯Ì¬·ÖÎö¹¤¾ß£¬ÈçFrida£¬À´×½ÄÃÔËÐÐʱµÄ½âÃܹý³Ì£¬½Òʾ¶ñÒâÈí¼þÔÚÔËÐÐʱËù×öµÄ²Ù×÷¡£×Ö·û´®¼ÓÃÜʾÀýÈçÏÂͼËùʾ£º

3.2.3 ½ÚÔìÁ÷»ìºÏ
½ÚÔìÁ÷»ìºÏ¼¼Êõͨ¹ý²åÈëÎÞÒâ˼µÄ½ÚÔì½á¹¹£¨ÈçÓÐÓàµÄǰÌá·ÖÖ§¡¢Ñ»·»òÈßÓà´úÂ룩£¬ÓÐÒâŤת·¨Ê½µÄÖ´ÐÐõè¾¶£¬´úÂë¿é³ÁÐÂÅÅÐòµÈ¼¿Á©Ê¹µÃ·ÖÎö¹¤¾ßÔÚ³¢ÊÔ½âÎö·¨Ê½Ê±£¬ÏÝÈë¹ýÓÚ¸´ÔӵĴúÂë½á¹¹ÖУ¬µ¼ÖÂÎÞ·¨ÕýÈ·µØ»¹Ô·¨Ê½µÄÕæÊµÂß¼¡£ÓÉÓÚ½ÚÔìÁ÷»ìºÏÒýÈëÁË´óÁ¿²»ÓÃÒªµÄÖ´ÐÐõè¾¶£¬¾²Ì¬·ÖÎö¹¤¾ß¿ÉÄÜÎÞ·¨ÓÐЧÌáÈ¡³ö·¨Ê½µÄÏÖ³¢ÊÔΪ¡£
ΪÁËÓ¦¶ÔÕâÖÖ»ìºÏ£¬°²È«×êÑÐÈËԱͨ³£±ØÒªÍ¨¹ý·ÂÕÕÖ´ÐÐÒÔ¼°¶¯Ì¬·ÖÎö¼¼ÊõÀ´¸¨¸±ÊÖ¶¯×·×Ù·¨Ê½µÄÖ´ÐÐÁ÷£¬Öð²½»¹Ô·¨Ê½µÄÕæÊµÂß¼¡£ÏÂͼչʾÁËÒ»¸öµ¥Ò»µÄ½ÚÔìÁ÷»ìºÏʾÀý£¬Õ¹Ê¾ÁËÔÚ»ìºÏǰºóµÄ½ÚÔìÁ÷½á¹¹²î¾à¡£

ͼ20 ½ÚÔìÁ÷»ìºÏǰºóµÄ²î¾à¶Ô±È
3.2.4 ·´Éä»úÔìÓ붯̬¼ÓÔØ
¶¯Ì¬¼ÓÔØ»úÔìÊǶñÒâÈí¼þ³£Óõķ´¾²Ì¬·ÖÎö¼¼Êõ£¬ÖØÒªÔ̺¬±¾µØÕð̬¼ÓÔØºÍÔ¶³Ì¶¯Ì¬¼ÓÔØÁ½ÖÖ·½Ê½¡£±¾µØÕð̬¼ÓÔØÍ¨¹ý¼ÓÔØ±¾µØ´æ´¢µÄ¶¯Ì¬¿â»òdexÎļþ£¬¶¯Ì¬Å²Óò½Öè»òÀ࣬ʹµÃ¶ñÒâÐÐΪÔÚ¾²Ì¬·ÖÎö½×¶ÎÎÞ·¨±»·¢ÏÖ¡£Ô¶³Ì¶¯Ì¬¼ÓÔØÔòͨ¹ýÔÚÔËÐÐʱ´ÓÔ¶³Ì·þÎñÆ÷ÏÂÔØ¶¯Ì¬¿â»òdexÎļþÀ´¼ÓÔØ²¢Ö´ÐжñÒâ´úÂ룬ÕâÖÖ·½Ê½½øÒ»²½¶ã±ÜÁ˾²Ì¬·ÖÎö¹¤¾ßµÄ¼ì²â£¬ÓÉÓÚ¶ñÒâ´úÂ벢δ³Ê´Ë¿ÌapkÎļþÖС£¶ñÒâÈí¼þÍùÍùͨ¹ý·´Éä¼¼Êõ½áºÏ¶¯Ì¬¼ÓÔØ£¬ÀûÓÃÔËÐÐʱµÄ·´ÉäŲÓûúÔì°µ²Ø¶ñÒâÐÐΪ£¬Ê¹µÃ³õÆÚ¾²Ì¬·ÖÎöÎÞ·¨¼ø±ðÕâЩ¶ñÒâ»î¶¯¡£ÎªÁËÓ¦¶ÔÕâÒ»ÌôÕ½£¬°²È«×êÑÐÈËԱͨ³£ÒÀÀµ¶¯Ì¬·ÖÎö¼¿Á©£¬Èçͨ¹ýFrida×¢Èë¾ç±¾¡¢Ê¹Óõ÷ÊÔ¹¤¾ß¶¯Ì¬¸ú×Ù»òͨ¹ýÈÕÖ¾·ÖÎö×½Ä÷´ÉäŲÓõĹý³Ì£¬´Ó¶ø½Òʾ¶ñÒâ´úÂëµÄÕæ³¢ÊÔΪ¡£ÕâЩ¶¯Ì¬·ÖÎö²½Öè¿ÉÄÜÈÆ¹ý¾²Ì¬·ÖÎöµÄÏÞ¶È£¬¼ø±ðͨ¹ý·´ÉäºÍ¶¯Ì¬¼ÓÔØ°µ²ØµÄ¶ñÒâÐÐΪ¡£
½ÓÏÂÀ´£¬ÎÒÃÇÀ´¿´Ò»¸öÀûÓñ¾µØÕð̬¼ÓÔØµÄ¶ñÒâ´úÂëʾÀý¡£ÏÂͼչʾÁ˸öñÒâ´úÂëµÄĿ¼½á¹¹¡£

ͼ21 Ŀ¼Ê÷ÐÅÏ¢
¹ÌÈ»´Ó±í±íÉÏ¿´£¬¸ÃĿ¼½öÔ̺¬¼¸¸ö²½Ö裬µ«Éî¿Ì·ÖÎöºó·¢ÏÖ£¬¶ñÒâ´úÂëͨ¹ýattachBaseContext²½ÖèŲÓÃÁËÒ»¸öÃûΪbµÄ²½Ö裬½øÒ»²½ÊµÏÖÁË´ÓassetsĿ¼¼ÓÔØ¼ÓÃܵĴúÂëÎļþ¡£¸ÃÎļþ¾¹ýÒì»ò½âÃܺó£¬Í¨¹ý¶¯Ì¬Å²Óõķ½Ê½±»¼ÓÔØ²¢Ö´ÐУ¬´úÂëÈçÏÂͼËùʾ£º

3.2.5 Native»ìºÏ
Native»ìºÏ¼¼ÊõÊÇͨ¹ý¶àÖÖ¼¿Á©¼Ó´ó¶Ô¶ñÒâÈí¼þÄæÏò·ÖÎöµÄÄѶȣ¬³£¼ûµÄ¼¼ÊõÔ̺¬ÒÔϼ¸ÖÖ£º
£¨1£©JNI½Ó¿Ú»ìºÏ£º¶ñÒâÈí¼þͨ¹ýJNI£¨Java Native Interface£©½«¹Ø¼üÂß¼×ªÒÆµ½.soÎļþÖУ¬²¢Í¨¹ý»ìºÏµÄJNI½Ó¿ÚŲÓñ¾µØ´úÂ롣ͨ¹ý½«Õý±¾Ç峺µÄ±¾´¦Ëù·¨Ãû´úÌæÎªÎÞÒâ˼µÄ·ûºÅ»òËæ»ú×Ö·û£¬¶ñÒâ´úÂëµÄÖ°Äܺͽṹ±äµÃÔ½·¢ÄÑÒÔÀí½âºÍ×·×Ù¡£

ͼ23 JNI½Ó¿Ú»ìºÏʾÀý
£¨2£©Session¼ÓÃÜ£º½«¹Ø¼ü²½Öè´æ´¢ÔÚ×Ô½ç˵µÄ.sectionÖУ¬²¢¶ÔÕâЩ×Ô½ç˵µÄ.sectionÄÚÈݽøÐмÓÃÜ¡£ÓÉÓÚ.soÎļþÔÚ¼ÓÔØÊ±»áÓÅÏÈÖ´ÐÐ.init_array¶Î£¬Òò¶ø½«½âÃÜÂ߼ǶÈëµ½.init_arrayÖС£ÔÚÔËÐÐʱ£¬Í¨¹ý½âÃܲ½Öè»ñÈ¡ÄÚ´æÖи÷¸ö.sectionµÄÕØÊ¼µØÖ·ºÍ´óÓ×£¬¶Ô¼ÓÃܵÄ.section½øÐнâÃÜ»¹Ô£¬´Ó¶ø¸´Ô¹Ø¼ü²½ÖèµÄÕý³£Ö´ÐС£

ͼ24 Session¼ÓÃܵÄʾÀý
£¨3£©º¯Êý¼ÓÃÜ£º½âÎö.soÎļþ£¬Í¨¹ý²½ÖèÃû¶¨Î»Ö¸±ê²½Öèºó£¬¶ÔÆä½øÐмÓÃÜ¡£ÔÚ¼ÓÔØ.soÎļþʱ£¬Í¨¹ýÖ¸¶¨²½ÖèµÄµØÖ·Å²ÓýâÃÜÂß¼£¬½«¼ÓÃܵIJ½Ö趯̬½âÃÜ»¹Ô£¬ÒÔʵÏֶԹؼüÂß¼µÄ±£»¤¡£

ͼ25 JNI¼Ó½âº¯Êý¾½âÃÜ»¹ÔµÄ²¿ÃÅ´úÂëʾÀý
£¨4£©×Ö·û´®¼ÓÃÜÓ붯̬½âÃÜ£º¶ñÒâÈí¼þͨ¹ý¼ÓÃܹؼü×Ö·û´®£¨ÈçURL¡¢ºÅÁî¡¢ÃÜÔ¿µÈ£©£¬²¢ÔÚÔËÐÐʱͨ¹ý¶¯Ì¬½âÃܸ´ÔÆäÔʼÄÚÈÝ¡£¼ÓÃܵÄ×Ö·ûͨͬ³£´æ´¢ÔÚ¾²Ì¬Êý¾ÝÇøÓò£¬¶ø½âÃÜÔòͨ¹ýÌØ¶¨Ëã·¨»òÔÚÄÚ´æÖж¯Ì¬ÊµÏÖ£¬´Ó¶øÊ¹µÃ¾²Ì¬·ÖÎö¹¤¾ßÎÞ·¨Ö±½ÓÌáÈ¡¶ñÒâÐÅÏ¢¡£

ͼ26 Native½âÃÜ×Ö·û´®Ê¾Àý
£¨5£©»¨Ö¸ÁîÓëÀ¬»ø´úÂë²åÈ룺ͨ¹ýÔÚ´úÂëÖвåÈëαָÁî»òÎÞЧ´úÂ룬¶ñÒâÈí¼þ¿ÉÄÜ»ìºÏ·¨Ê½µÄÏÖ³¢ÊÔΪ¡£ÕâЩ»¨Ö¸ÁîûÓÐÏÖʵְÄÜ£¬µ«Ôö³¤ÁËÄæÏò¹¤³ÌµÄ¸´ÔÓÐÔ¡£À¬»ø´úÂë²»½öÔö³¤ÁË·¨Ê½µÄÌå»ý£¬»¹Ê¹µÃ×·×ÙºÍÀí½â¶ñÒâ´úÂë±äµÃÔ½·¢ÄÑÌâ¡£

ͼ27 Ò»¸öµ¥Ò»µÄÀ¬»øÖ¸ÁîʾÀý
£¨6£©´úÂë¼Ó¿ÇÓë×ÔÅú¸Ä´úÂ룺ÔÚNative²ã£¬¶ñÒâÈí¼þʱʱʹÓüӿǼ¼ÊõÀ´°µ²ØÖ÷Ìâ¶ñÒâ´úÂë¡£¼Ó¿Çºó£¬¶ñÒâ´úÂëÒÔ¼ÓÃÜ»òѹËõ´ó¾Ö´æ´¢£¬Ö»ÓÐÔÚÔËÐÐʱ²Å»á½âÃÜ»ò½âѹ¡£×ÔÅú¸Ä´úÂë¼¼ÊõÔòÔÊÐí¶ñÒâÈí¼þÔÚÔËÐÐʱ¶¯Ì¬ÌìÉú¡¢Åú¸ÄºÍÖ´ÐдúÂ룬½øÒ»²½×èÖ¹¾²Ì¬·ÖÎö¹¤¾ß¼ø±ðÆëÈ«µÄ¶ñÒâÐÐΪ¡£

ͼ28 ͨ¹ýHookÅú¸Ä´úÂëµÄʾÀý
£¨7£©·´µ÷ÊÔÓë·ÂÕÕÆ÷¼ì²â£ºÎªÁ˵ֿ¹¶¯Ì¬·ÖÎö£¬¶ñÒâÈí¼þÍùÍù»áÔÚNative²ãǶÈë·´µ÷ÊÔ»úÔ죬ÀýÈçͨ¹ý¼ì²âµ÷ÊÔÆ÷µÄ´æÔÚ£¨Èçgdb»òFrida£©À´ÖжϷÖÎö¹ý³Ì¡£´Ë±í£¬¶ñÒâÈí¼þÒ²»á½øÐзÂÕÕÆ÷¼ì²â£¬Í¨¹ý²é³É豸ÊÇ·ñÔËÐÐÔÚ·ÂÕÕÆ÷»òɳºÐ»·¾³ÖÐÀ´Ô¤·À±»¶¯Ì¬·ÖÎö¹¤¾ß×½Äá£

ͼ29 ¼ì²â·ÂÕÕÆ÷ʾÀý
£¨8£©½ÚÔìÁ÷»ìºÏ£º½ÚÔìÁ÷»ìºÏͨ¹ýŤת·¨Ê½µÄÖ´ÐÐõè¾¶£¬Ê¹µÃ·ÖÎöÈËÔ±ÄÑÒÔÀí½â·¨Ê½µÄÏÖʵÁ÷³Ì¡£³£¼ûµÄ²½ÖèÔ̺¬²åÈëÎÞЧµÄ½ÚÔìÁ÷£¨ÈçÌø×ª¡¢·ÖÖ§Óï¾ä£©¡¢ÎÞÓõÄÑ»·ºÍº¯ÊýŲÓã¬ÇÖÈÅ·ÖÎö¹¤¾ß×·×ÙÖ¸ÁîµÄ°¤´Î¡£

ͼ30 Ò»¶Î½ÚÔìÁ÷»ìºÏ´úÂëʾÀý
£¨9£©LLVM»ìºÏ£ºLLVMÊÇÒ»ÖÖ׳´óµÄ±àÒëÆ÷¿ò¼Ü£¬¶ñÒâÈí¼þͨ¹ýʹÓÃLLVM¼¼ÊõÀ´¶ÔNative´úÂë½øÐи´ÔӵĻìºÏ´¦Öá£LLVM»ìºÏÄÜͨ¹ýÓÅ»¯±àÒë¹ý³Ì£¬ÌìÉúÄÑÒÔÔĶÁºÍÀí½âµÄ¶þ½øÔìÎļþ£¬Í¬Ê±¶ÔÎļþ´óÓ×Ó°Ïì½ÏÓס£ÕâÖÖ¼¼ÊõÓÐЧÔö³¤ÁËÄæÏò¹¤³ÌµÄ¸´ÔÓ¶È¡£

ͼ31 LLVM»ìºÏǰºó¶Ô±ÈʾÀý
ÕâЩNative»ìºÏ¼¼Êõͨ³£±»×éºÏʹÓ㬹¹½¨¶àµµ´ÎµÄ±£»¤»úÔ죬´Ó¶øÊ¹´«Í³µÄ¾²Ì¬·ÖÎöºÍ¶¯Ì¬·ÖÎö²½ÖèÃæ¶Ô¾Þ´óµÄÌôÕ½¡£½èÖúÕâЩ¼¼Êõ£¬¶ñÒâÈí¼þ¿ÉÄÜÓÐЧ°µ²ØÆäÕæ³¢ÊÔΪ£¬¶ã±Ü°²È«×êÑÐÈËÔ±µÄ¼ì²âÒÔ¼°·À»¤ÏµÍ³µÄÀ¹½Ø¡£´Ë±í£¬Ã³Ò׼ӹ̱£»¤½øÒ»²½ÌáÉýÁË·À»¤µÄÈ«ÃæÐÔ¡£¶ñÒâÈí¼þ³£ÀûÓÃóÒ׼ӹ̲úÆ·¶Ô×ÔÉí½øÐб£»¤£¬ÉõÖÁºÚ»Ò²úÈí¼þҲƵÈÔѡȡ´ËÀ༼Êõ½øÐзÀ»¤£¬ÈçÏÂͼËùʾ£º

3.2.6 ´úÂëÐé¹¹»¯
´úÂëÐé¹¹»¯ÊÇĿǰ×îÏȽøµÄ»ìºÏ¼¿Á©Ö®Ò»£¬Ëüͨ¹ý½«Ôʼ´úÂëת»»Îª×Ô½ç˵µÄÐé¹¹»úÖ¸Á¼«´óµØÌá¸ßÁË´úÂ븴ÔӶȺͷÖÎöÄѶȡ£Ó봫ͳµÄ½ÚÔìÁ÷»ìºÏ·ÖÆç£¬Ðé¹¹»¯¼¼Êõ½«¹Ø¼ü´úÂëµÄÖ´ÐÐÂß¼·â×°ÔÚÐé¹¹»úÖУ¬Ê¹µÃÖ÷ÌâÖ°ÄܺͽÚÔìÁ÷ÏÕЩÎÞ·¨Í¨¹ýͨÀý·´±àÒ뼿Á©»¹Ô¡£ÒÔÏ´ÓDEXÐé¹¹»¯ºÍSOÐé¹¹»¯Á½¸öά¶È½øÐзÖÎö£º
DEXÐé¹¹»¯¼¼ÊõÖØÒªÕë¶ÔAndroidÀûÓÃÖеÄDalvik×Ö½ÚÂë¡£ÕâÖÖ¼¼Êõͨ¹ý½«DEXÖеÄ×Ö½ÚÂëת»»³É×Ô½ç˵µÄÐé¹¹»úÖ¸Á¶øºóÓÉNative²ãÐé¹¹»úÚ¹ÊÍÖ´ÐУ¬´Ó¶ø±£»¤¹Ø¼ü´úÂëºÍÖ÷ÌâÂß¼¡£ÕâÖÖת»»Ê¹µÃ´«Í³µÄ·´±àÒ빤¾ßÄÑÒÔ»¹Ô´úÂëµÄÔʼÂß¼£¬ÓÉÓÚËüÃÇÎÞ·¨¼ø±ðת»»ºóµÄÖ¸Á¡£ÀýÈ磬ijµçÉÌÆ½Ì¨Í¨¹ý·ì϶ÌáȨִÐжñÒâÐÐΪ£¬²¢Îª°µ²ØÆäÖ÷Ìâ´úÂëÂß¼£¬Ñ¡È¡ÁËÒ»Ì×»ùÓÚJVM¹¹½¨µÄÐé¹¹»ú±£»¤£¨VMP£©¼¼Êõ¶Ô´úÂë½øÐмӹ̡£ÏÂͼչʾÁËÆä±£»¤ºóµÄ¶þ½øÔìÄÚÈÝ£¬Äܹ»ÏÔÖø¿´³ö£¬´úÂëÒѱ»Ðé¹¹»¯Îª¸ß¶È³éÏóµÄÐé¹¹»úÖ¸ÁʹµÃ´«Í³µÄ·´±àÒëºÍ¾²Ì¬·ÖÎö²½ÖèÏÕЩÎÞЧ¡£

ͼ33 ½âÎö¾vmp±£»¤µÄdexÎļþʾÀý
SOÐé¹¹»¯¼¼ÊõÔò¹Ø×¢ÓÚ±£»¤ÀûÓÃÖеÄNative´úÂ룬¼´SOÎļþ¡£ÕâÖÖ¼¼ÊõÄܹ»Í¨¹ý°µ²Ø·ûºÅ±í¡¢×ÊÔ´¼ÓÃܵȷ½Ê½À´±£»¤SOÎļþÖеÄÖ°Äܲ»±»µÈÏзÖÎöºÍ´Û¸Ä¡£ÀýÈ磬Virbox ProtectorÌṩÁ˶ÔSOÎļþµÄ±£»¤Ñ¡ÏÔ̺¬°µ²Ø·ûºÅ±íºÍ¶ÔÌØ¶¨SOÎļþµÄ¼ÓÃܱ£»¤¡£Í¨¹ýÕâÖÖ·½Ê½£¬¼´±ã¹¥»÷Õß¿ÉÄܽӼûµ½SOÎļþ£¬Ò²ÎÞ·¨µÈÏÐÀí½âÎļþÖеĺ¯ÊýºÍÂß¼£¬´Ó¶ø±£»¤ÁËÀûÓõݲȫ¡£

ͼ34 ijóÒ׼ӹ̲úÆ·¶ÔDEXºÍSOµÄÐé¹¹»¯±£»¤½éÉÜ
3.3 ÆäËû»ìºÏ¼¿Á©
һЩ¶ñÒâÈí¼þͨ¹ýÆæÃîÀûÓÃWindowsºÍAndroidÎļþϵͳµÄ²î¾àÐÔ£¬ÓÐЧƥµÐ¾²Ì¬·ÖÎöºÍÄæÏò¹¤³Ì¡£ÔÚWindowsϵͳÖУ¬ÎļþÃû²»·Ö±æ´óÓ×д£¬µ«»á±£ÁôÆäÔʼÌåʽ£¬¶øAndroidÎļþϵͳÔò·Ö±æ´óÓ×д¡£ÕâÖÖ²î¾àʹµÃijЩÔÚWindowsϵͳÉÏ¿ÉÄÜÒý·¢Ã¬¶Ü»òÃýÎóµÄÎļþÃû£¬¿ÉÄÜÔÚAndroidÉ豸ÉÏÕý³£Ê¹Óá£´Ë±í£¬Windowsϵͳ¶ÔÎļþÃûÖеÄÌØÊâ×Ö·û£¨Èç > < : " / \ | * ?£©ÓÐÑϸñÏÞ¶È£¬¶øAndroidϵͳÔÊÐíÕâЩ×Ö·ûµÄ´æÔÚ¡£¶ñÒâÈí¼þ³£Í¨¹ýÔÚÎļþÃûÖÐǶÈëÕâÐ©ÌØÊâ×Ö·û£¬×ÌÈÅ»ùÓÚWindowsµÄ·ÖÎö¹¤¾ß£¬µ¼ÖÂÎļþÎÞ·¨¶ÁÈ¡»ò´¦Ö㬴ӶøÔö³¤ÄæÏò·ÖÎöµÄÄѶȡ£
²»½öÈç´Ë£¬¶ñÒâÈí¼þ»¹¿ÉÄÜÀûÓÃAndroidÎļþϵͳÔÊÐíͬÃûÎļþºÍÎļþ¼Ð¹²´æµÄ¸öÐÔ£¬½øÒ»²½Ôö³¤·ÖÎöµÄ¸´ÔÓÐÔ¡£ÀýÈ磬ÔÚAndroidÖУ¬Ò»¸öÃûΪAndroidManifest.xmlµÄÎļþºÍÒ»¸öÃûΪAndroidManifest.xmlµÄÎļþ¼ÐÄܹ»Í¬Ê±´æÔÚ£¬µ«ÔÚWindowsϵͳÖÐÔò»áÒò¶¨Ãûì¶Ü¶øÎÞ·¨ÊµÏÖ¡£ÕâÖÖ²î¾à¿ÉÄܵ¼Ö»ùÓÚWindowsµÄ·ÖÎö¹¤¾ß´¦ÖÃÕâЩ½á¹¹Ê±·¸´í»òÌø¹ý½âÎöÕâЩ¹Ø¼üÎļþ»òÎļþ¼Ð£¬½ø¶øÎª¶ñÒâÈí¼þÌṩ¼Ù×°¡£ÀýÈ磬BOOMSLANG¶ñÒâÈí¼þµÄÒ»¸öÔÚÒ°Ñù±¾Ñ¡È¡ÁËÌØÊâ×Ö·û»ìºÏºÍͬÃûÎļþÓëÎļþ¼Ð¹²´æµÄÆ¥µÐ¼¼Êõ£¬ÆäAPKÎļþÔÚʹÓÃZIP¹¤¾ß´ò¿ªÊ±ÈçͼËùʾ£º

ͼ35 ͬÃûÎļþºÍÎļþ¼Ð»ìºÏʾÀý
´ÓͼÖÐÄܹ»¿´³ö£¬¶ñÒâÈí¼þ»áͬʱ´´½¨ ¡°\AndroidManifest.xml¡±ºÍ¡°AndroidManifest.xml¡±Ä¿Â¼£¬ÒÔ¼° ¡°\classes.dex¡± ºÍ¡°classes.dex¡±Ä¿Â¼¡£ÕâÖÖ²Ù×÷»áÔÚWindowsϵͳÉϵ¼ÖÂÎļþ¼ÐÏ໥¸²¸Ç£¬Ôì³ÉÎļþÄÚÈÝÃÔʧ£¬´Ó¶øÓ°Ïì·´±àÒëµÄÆëÈ«ÐÔ¡£´Ë±í£¬¶ñÒâÈí¼þ»¹»áʹÓ÷¸·¨ÎļþÃû£¬µ¼ÖÂÕâЩÎļþÔÚʹÓÃapktool·´±àÒëʱ±»ºöÂÔ£¬ÈçÏÂͼËùʾ£º

ͼ36 apktoolºöÂÔ·¸·¨ÎļþÃûµÄʾÀý
һЩ¶ñÒâÈí¼þ»¹»áÔÚÎļþÖÐǶÈëͬÃûµ«´óÓ×д·ÖÆçµÄÎļþ£¬Í¨¹ýÀûÓÃWindowsÎļþÃû²»·Ö±æ´óÓ×дµÄ¸öÐÔ×ÌÈÅ·ÖÎö¹¤¾ß£¬Ôì³É½âÎöÃýÎó»òÒì³£¡£ÒÔÏÂͼƬչʾÁËÒ»ÀýÔ̺¬Í¬Ãûµ«´óÓ×д·ÖÆçÎļþµÄ¶ñÒâAPKʾÀý¡£

ͼ37 WindowsÎļþϵͳ²»·Ö±æÎļþÃû´óÓ×дµÄʾÀý
ÔÚAndroid¶ñÒâÈí¼þÖУ¬×ÊÔ´»ìºÏÊÇÒ»ÖÖ³£¼ûµÄÆ¥µÐ¼¼Êõ£¬¿í·ºÀûÓÃÓÚassetsºÍresµÈÎļþ¼ÐÖеÄ×ÊÔ´Îļþ¡£³£¼ûµÄ×ÊÔ´»ìºÏ¼¿Á©Ô̺¬£º¶ÔassetsĿ¼ÖеÄ×ÊÔ´Îļþ½øÐмÓÃÜ´¦Ö㬴´½¨Éî²ãǶÌ×µÄĿ¼½á¹¹»òʹÓûûÐÎĿ¼Ãû³Æ£¬²åÈë´óÁ¿ÎÞÓÃÎļþ»ò¼Ù×°×ÊÔ´Îļþ£¬½«¹Ø¼ü×ÊÔ´ÓëÎÞЧ×ÊÔ´»ìºÏÔÚһ·£¬´Ó¶øÔö³¤·ÖÎöÄѶȣ»¶ÔresĿ¼ÖеÄ×ÊÔ´Îļþ½øÐлìºÏ£¬ÀýÈç´Û¸Ä×ÊÔ´Ó³Éä¹ØÏµ¡¢É¾³ý×ÊÔ´ÎļþÃû»ò¸ü¸ÄÎļþÀ©´óÃûµÈ¡£ÕâЩ¼¿Á©Ö¼ÔÚ×ÌÈÅ·ÖÎö¹¤¾ßµÄ½âÎö¹ý³Ì£¬Ê¹µÃ·ÖÎöÈËÔ±ÄÑÒÔ¼±¾ç¶¨Î»ºÍ¼ø±ð¹Ø¼üÊý¾Ý£¬½øÒ»²½Ìá¸ßÄæÏò¹¤³ÌµÄÄѶȡ£ÏÂͼÊÇÒ»¸ö²åÈëÀ¬»ø×ÊÔ´µÄʾÀý£º

ͼ38 ²åÈëÀ¬»ø×ÊԴʾÀý
һЩ¶ñÒâÈí¼þͨ¹ý½«ÔʼDEXÎļþÔ׸î³É¶à¸öÓ×µÄDEXÎļþ»ò²åÈëÀ¬»ø´úÂ룬Ôö³¤¾²Ì¬ºÍ×Ô¶¯»¯·ÖÎöµÄÄѶȡ£Ô׸îDEXÎļþʹ·ÖÎö¹¤¾ß±ØÒªÖð¸ö´¦Öã¬Ôö³¤ÁË·ÖÎö¹¦·òºÍ¸´ÔÓ¶È£¬ÇÒÕâЩÎļþͨ³£Í¨¹ý¶¯Ì¬¼ÓÔØ¼¼ÊõÔÚÔËÐÐʱ²Å»á¹é²¢£¬ÄÑÒÔÔÚ¾²Ì¬·ÖÎöÖмø±ð¡£´Ë±í£¬²åÈëµÄÀ¬»ø´úÂë²»Ö´ÐÐÏÖʵ²Ù×÷£¬µ«Í¨¹ýÐéαµÄÂß¼ºÍ¸´ÔӵĽÚÔìÁ÷×ÌÈÅ·ÖÎö£¬¸²¸Ç¶ñÒâÖ°ÄÜ¡£´ËÀàÕ½ÊõʹµÃ¶ñÒâÈí¼þµÄÐÐΪԽ·¢Òñ±Î£¬ÆÈʹ·ÖÎöÈËԱѡȡ¸ü¸´ÔӵĶ¯Ì¬·ÖÎöºÍÊÖ¶¯ÄæÏò¹¤³Ì²½Öè¡£Ò»¸öapkÖÐÔ̺¬´óÁ¿dexµÄÀý×ÓÈçÏÂͼËùʾ£º

ͼ39 Ô׸î¶à¸ödexʾÀý
³ýÁËÉÏÃæÌáµ½µÄ»ìºÏ¼¼Êõ£¬»¹ÓÐһЩÆäËû³£¼ûµ«Î´¾ßÌå½éÉܵļ¼Êõ£¬ÕâЩ¼¼ÊõÄܽøÒ»²½¼ÓÇ¿¶ñÒâÈí¼þµÄÄæÏò·ÖÎöÄѶȡ£ÒÔÏÂÊÇÒ»ÕÅ»ìºÏ¹¤¾ßµÄʾÀýͼƬ£¬ÆäÖÐչʾÁ˶àÖÖ»ìºÏÖ°ÄÜ£¬È磺Ôö³¤°üÌå»ý¡¢ÄÚ½¨¶ÀÁ¢ÊðÃûÖ¤Êé¡¢DEX´úÂë»ìºÏ¡¢×ÊÔ´»ìºÏ¡¢APK·À´Û¸ÄµÈ¶à¸öÖ°ÄÜ¡£

ΪÁ˸üºÃµØÀí½â»ìºÏ¼¼ÊõµÄÏÖʵÀûÓã¬ÒÔÏÂÊǼ¸¸ö³£¼ûµÄAndroid¶ñÒâÈí¼þµÄ»ìºÏ¼¼Êõ°¸Àý¡£
4.1 Joker¶ñÒâÈí¼þ»ìºÏ²½Öè
Joker£¨ÖÐÎÄÃû³Æ¡°Ó׳󡱣¬Ò²±»³ÆÎªBread£©ÊÇÒ»¸öÔÚGoogle PlayÉ̵êÖм«Îª»îÔ¾µÄ¶ñÒâÈí¼þ¼Ò×å¡£×Ô2016Äê12Ô³õ´Î±»¼ì²âµ½ÒÔÀ´£¬Joker¼Ò×åµÄ»î¶¯Ò»ÏòÔÚ³ÖÐø£¬²¢ÇÒÆä¶ñÒâÈí¼þµÄ±äÖÖÊýÁ¿Ò²ÔÚ²»ÐÝÔö³¤¡£±¾ÔÂ×îÐÂÅû¶µÄGoogle PlayÉ̵êÖÐJokerÑù±¾ÐÅÏ¢ÈçÏ£º

ͼ41 GooglePlayÉϵÄJokerľÂíÐÅÏ¢
Joker¼Ò×åµÄ¶ñÒâÈí¼þ¿ÉÄÜ·´¸´½øÈëGoogle¹Ù·½ÀûÓÃÊг¡£¬Æä¹Ø¼üÔÒòÔÚÓÚÆäѡȡÁ˶àÖָ߼¶´úÂë»ìºÏ¼¼Êõ£¬´Ó¶øÈƹýÁËGoogle Play StoreµÄ°²È«¼ì²âºÍÉó²é»úÔì¡£ÕâЩ»ìºÏ¼¼ÊõÔ̺¬µ«²»ÏÞÓÚ£º
£¨1£©×Ö·û´®¼ÓÃÜ£ºÍ¨¹ý¼ÓÃܹؼü×Ö·û´®£¬ÈçAPIÒªÇóºÍÅäÏàÐÅÏ¢£¬Ô¤·À¾²Ì¬·ÖÎö¹¤¾ßµÄÖ±½Ó¼ø±ð¡£
£¨2£©¶¯Ì¬¼ÓÔØ£º½«¶ñÒâ´úÂë·ÖÀëµ½µ¥¶ÀµÄPayloadÎļþÖУ¬½öÔÚÔËÐÐʱ¼ÓÔØ£¬ÒÔ¶ã±Ü¾²Ì¬´úÂëɨÃè¡£
£¨3£©·´ÉäŲÓãºÀûÓ÷´Éä»úÔ춯̬ŲÓò½Ö裬°µ²Ø¹Ø¼üÖ°ÄÜŲÓÃõè¾¶¡£
£¨4£©¶¯Ì¬Ï·¢ÅäÖãºÍ¨¹ýÍøÂçÒªÇó¶¯Ì¬»ñÈ¡ÅäÖûò¶ñÒâÖ¸Á½µµÍ±»¾²Ì¬¼ì²âµÄ·çÏÕ¡£
£¨5£©ÀûÓõÚÈý·½·þÎñ£ºÊ¹ÓÃGithubÒ³ÃæºÍ´æ´¢¿â´æ´¢¶ñÒâÅäÖûò´úÂ룬½øÒ»²½»ìºÏÆðÔ´ºÍÁ÷Á¿¡£
ÕâЩ¼¼ÊõµÄ×éºÏʹJoker¶ñÒâÈí¼þ¿ÉÄܳɹ¦¶ã±Ü¾²Ì¬·ÖÎö¼ì²â£¬ÆäÕæ³¢ÊÔΪÍùÍù°µ²ØÔÚ¸´ÔӵĶ¯Ì¬Á÷³ÌÖС£ÎªÁ˽ÒʾÆäÐÐΪ£¬·ÖÎöÈËԱͨ³£±ØÒªÒÀÀµ¶¯Ì¬µ÷ÊÔºÍÔËÐÐʱ½âÃܼ¼Êõ¡£Õë¶ÔÕâЩ»ìºÏ¼¿Á©£¬°²È«×êÑÐÈËÔ±Äܹ»½èÖú¶¯Ì¬·ÖÎö¹¤¾ß£¨ÈçFridaºÍXposed£©×·×Ù½âÃܹý³Ì£¬ÌáÈ¡¹Ø¼üÊý¾Ý²¢¼ø±ð¶ñÒâ API ŲÓ㬴ӶøÈ«Ãæ»¹ÔÆä¶ñÒâÐÐΪ¡£
4.2 BadPackµÄ»ìºÏ¼¿Á©
BadPackÊǶñÒâÈí¼þͨ¹ý´Û¸ÄZIPÎļþ½á¹¹Í·£¬Ê¹ApktoolºÍJadxµÈ·ÖÎö¹¤¾ßÎÞ·¨Õý³£½âÎö¡£Æäͨ¹ýʹÓ÷dz߶ȵÄѹËõËã·¨À´×ÌÈÅ·´±àÒ빤¾ßµÄÕý³£ÔËÐС£¾010 Editor·ÖÎö¸ÃAPKÎļþÌåʽ£¬·¢ÏÔìäѹËõ²½ÖèֵΪ0xF753£¬ÈçÏÂͼËùʾ£º

ͼ42 ´Û¸ÄapkÎļþѹËõËã·¨±êʶʾÀý
ÕâÒ»ÊýÖµ²¢²»ÊôÓÚÈκÎÒÑÖªµÄ³ß¶ÈѹËõ²½Ö裬Òò¶øµ¼Ö·´±àÒ빤¾ßÎÞ·¨¼ø±ðºÍ´¦ÖøÃÎļþ¡£Æ¾¾Ý³ß¶ÈZIPÌåʽ¹æ·¶£¬Ñ¹Ëõ²½ÖèµÄȡֵͨ³£ÈçͼËùʾ¡£

ͼ43 ZIPÖ§³ÖµÄ¸÷ѹËõ²½ÖèµÄ±êʶֵʾÀý
ƾ¾ÝAndroidϵͳԴ´úÂ룬µ±ÏµÍ³Óöµ½·ÇCOMP_DEFLATE£¨¼´ 0x08£©Ñ¹Ëõ²½Öèʱ£¬»áĬÈϽ«ÊäÈëÎļþ°´ ¡°Î´Ñ¹Ëõ¡± £¨COMP_STORED£¬¼´ 0x00£©·½Ê½´¦Ö᣾ßÌå¶øÑÔ£¬ÏµÍ³»áÖ±½Ó¶ÁÈ¡ÎļþµÄδѹËõÊý¾Ý³¤¶È£¬²¢ÒԴ˽øÐнâÎö¡£Òò¶ø£¬¶ñÒâÈí¼þÀûÓÃÁËAndroidϵͳ¶ÔZIPÌåʽµÄÈÝ´í»úÔ죬ͨ¹ýʹÓ÷¸·¨µÄѹËõËã·¨½øÐлìºÏ£¬´Ó¶ø´ïµ½¶ã±Ü·´±àÒ빤¾ßµÄÖ÷ÕÅ¡£ÕâÖÖ»ìºÏ¼¼Êõµ¥Ò»È´ÓÐЧ¡£ÔÚ·ÖÎöAndroid¶ñÒâÈí¼þʱ£¬ÈôÓöµ½ÀàËÆÇé¿ö£¬¿É½«Ñ¹Ëõ²½ÖèÅú¸ÄΪ0ÒÔ±ãÕýÈ·½âѹºÍ·ÖÎö¡£
APKα¼ÓÃÜͨ¹ýÅú¸ÄZIPÎļþµÄÍ·²¿£¬½«¼ÓÃܱêÖ¾ÉèÖÃΪtrue£¬µ«²¢Î´ÏÖʵ¶ÔÎļþÄÚÈݽøÐмÓÃÜ¡£ÕâÖÖ¼¼ÊõÀûÓÃÁËAndroidϵͳÔÚ´¦ ZIPÎļþʱ²»»áÑé֤ͷ²¿µÄ¼ÓÃܱêÖ¾£¬¶øÍ¨³£µÄ½âѹÈí¼þÔò»á¼ì²â¸Ã±êÖ¾¡£ÀýÈ磬µ±Ê¹ÓÃRAR¹¤¾ß½âѹ¸ÃAPKÎļþʱ£¬»áÌáÐÑÓû§ÊäÈëÃÜÂ룬ÈçÏÂͼËùʾ£º

ͼ44 α¼ÓÃܵĻìºÏʾÀý
ÓÉÓÚJebºÍJadx¶¼Ê¹Óó߶ȵÄZIP¿â£¬Òò¶øÎÞ·¨Õý³£½âѹ²¢·´±àÒë¸ÃÎļþ¡£ËüÃǵķ´±àÒëÃýÎóÐÅÏ¢ÈçÏÂͼËùʾ£º

ͼ45 ÎÞ·¨Ê¹ÓÃJadxºÍJeb´ò¿ªµÄ»ìºÏAPKʾÀý
ͨ¹ýѡȡBadPack¼¼Êõ£¬¶ñÒâÈí¼þ½«×ÔÉí¼ÙװΪÒì³£ÌåʽµÄÎļþ£¬ÀûÓ÷´±àÒ빤¾ß¶ÔÎļþ½âÎöµÄÑϸñÐÔ´¥·¢Òì³££¬´Ó¶øÏÔÖøÔö³¤¾²Ì¬·ÖÎöµÄÄѶȡ£ÕâÖÖÕ½ÊõÓÐЧ×ÌÈÅÁ˰²È«×êÑÐÈËÔ±µÄ·ÖÎöÁ÷³Ì£¬ÌáÉýÁ˶ñÒâÈí¼þµÄÒñ±ÎÐÔ¡£
Õë¶ÔÕâÒ»¼¼Êõ£¬Äܹ»Í¨¹ýÒÔϲ½Öè½øÐÐÓ¦¶Ô£º
£¨1£©Ê¹Óö©ÕýºóµÄZIP¿â£ºÍ¨¹ýÅú¸ÄZIP½âѹ¿âµÄ½âÎöÂß¼£¬ºöÂԷdz߶È×ֶλòÒì³£Ìåʽ£¬È·±£ÎļþÄÚÈÝ¿ÉÄÜÕýÈ·½âѹ¡£
£¨2£©±àд½¨¸´¾ç±¾£º·ÖÎöBadPackÎļþµÄÒì³£×ֶΣ¬Õë¶ÔÌØ¶¨ÌåʽÉè¼Æ¾ç±¾£¬×Ô¶¯½¨¸ÄÎļþ½á¹¹£¬Ê¹Æä¸´ÔΪ³ß¶ÈÌåʽÒÔ±ãºóÐø·ÖÎö¡£
ÕâЩӦ¶Ô´ëÊ©¿ÉÄÜÓÐÐ§ÈÆ¹ýBadPack¼¼ÊõµÄ»ìºÏ¼¿Á©£¬Îª¾²Ì¬·ÖÎöÌṩ¿¿µÃסµÄÊý¾ÝÖ§³Ö¡£
4.3 SpyNote¶ñÒâÈí¼þ»ìºÏÕ½Êõ
SpyNoteÊÇÒ»ÖÖ¼äµýÈí¼þ£¬³£Í¨¹ý¶ÌÐźʹ¹µöÍøÕ¾µÈ·½Ê½½øÐд«²¼¡£¹¥»÷Õßͨ³£·¢ËÍÔ̺¬¶ñÒâÁ´½ÓµÄSMSÐÂÎÅ»ò´´½¨¼Ù×°³ÉºÏ·¨ÍøÕ¾µÄ´¹µöÒ³Ãæ£¬ÓÕµ¼Ö¸±êÓû§µã»÷Á´½Ó²¢ÏÂÔØ¼Ù×°³ÉºÏ·¨ÀûÓ÷¨Ê½µÄ¶ñÒâÈí¼þ¡£×Ô2016ÄêÔÚ¶ñÒâÈí¼þÂÛ̳³õ´ÎÆØ¹âÒÔÀ´£¬SpyNoteÒ»Ïò×÷ΪһÖÖ³ÖÐøÍþвµÄ¶ñÒ⹤¾ßÔÚÈ«ÇòÁìÓòÄÚ»îÔ¾¡£¹«¿ªÊý¾ÝÏÔʾ£¬½ñÄê1ÔºÍ2ÔÂÆÚ¼ä£¬SpyNoteµÄÐÂÔöÑù±¾ÊýÁ¿Òѳ¬¹ý3400¸ö£¬Åú×¢ÆäÍþв»î¶¯ÈÔÔÚ¼±¾çÀ©É¢¡£×îÐÂÅû¶µÄÍþвµý±¨ÏÔʾ£¬SpyNote¼Ù×°³É°²È«ÀûÓ÷¨Ê½Ö´Ðй¥»÷£¬ÆäÖØÒªÖ¸±êÊǼÓÃÜÇ®±ÒÕË»§£¬ÇÔȡ˽ԿºÍÓà¶îÐÅÏ¢£¬ÓÈÆäÕë¶Ô±ÈÌØ±Ò¡¢ÒÔÌ«·»ºÍTetherµÈÈȵãÊý×Ö×ʲú¡£Óйع¥»÷ÊÂÎñÈçÏÂͼËùʾ£º

ͼ46 SpyNote·Âð°²È«Èí¼þÖ´Ðй¥»÷
SpyNote ³ýÁËͨ¹ý¶àÖÖÇþ·½øÐд«²¼£¬»¹Ñ¡È¡ÁËһϵÁи߼¶»ìºÏÓë°µ²ØÕ½Êõ£¬ÒÔ¶ã±Ü¼ì²âºÍ·ÖÎö¡£ÒÔÏÂÊÇÆäÖØÒª»ìºÏ¼¼ÊõµÄ¼òÒª¸ÅÊö£º
£¨1£©´Û¸Ä APK ÎļþµÄ ZIP Ìåʽ£¬´Ó¶øµ¼Ö·´±àÒëAPKToolÔÚ½âÎöʱʧ°Ü£¬ÈçÏÂͼËùʾ£º

ͼ47 Åú¸ÄzipÌåʽµ¼ÖÂApktool·´±àÒëʧ°ÜµÄʾÀý
£¨2£©´Û¸ÄÇåµ¥ÎļþħÊõ¡¢²åÈëÀ¬»ø×Ö·û´®¡£Åú¸ÄµÄħÊõʾÀýÈçÏÂͼ£º

ͼ48 Åú¸ÄħÊõ»ìºÏʾÀý
£¨3£©ÀûÓÃÏà½ü×Ö·ûʵÏÖ´úÂë»ìºÏ£¬ÈçÏÂͼËùʾ£º

ͼ49 Ïà½ü×Ö·û´úÂë»ìºÏʾÀý
£¨4£©¶Ôresources.arscÎļþ»ìºÏ£¬Ê¹jadx·´±àÒ빤¾ßÔÚ·ÖÎöʱ·¸´í£¬ÈçÏÂͼËùʾ£º

ͼ50 JadxÎÞ·¨½âÎöresources.arscÎļþ
Android¶ñÒâÈí¼þµÄ»ìºÏ¼¼Êõ²»Ðݽø»¯£¬´Óµ¥Ò»µÄ´úÂë³Á¶¨Ãûµ½¸´ÔӵĶ¯Ì¬¼ÓÔØÓë·´µ÷ÊÔ¼¼Êõ£¬¶ñÒâÈí¼þͨ¹ýÕâЩ¼¿Á©¼«´óµØÌáÉýÁ˶ñÒâ´úÂëµÄÒñ±ÎÐԺͷÖÎöÄѶȡ£Ëæ×Å»ìºÏ¼¼ÊõµÄ²»ÐÝ·¢Õ¹£¬°²È«×êÑÐÈËÔ±Ò²±ØÒª²»ÐݸüÐÂ×Ô¼ºµÄ·ÖÎö¼¿Á©£¬´Ó¾²Ì¬·ÖÎöÀ©´óµ½¶¯Ì¬·ÖÎö¡¢ÐÐΪ·ÖÎöµÈ¶àά¶ÈµÄ·ÖÎö²½Öè¡£
½«À´£¬Ëæ×Å»úе½ø½¨¡¢ÈËΪÖÇÄܵȼ¼ÊõµÄÒýÈ룬»ìºÏ¼¼ÊõºÍÄæÏò·ÖÎö¼¼Êõ½«³ÖÐø³öÏÖ³öÔ½·¢¸´ÔӺ͸ßЧµÄÌ¬ÊÆ¡£ÔÚÕâÖÖÇé¿öÏ£¬¿ª·¢¸ü׳´óµÄ×Ô¶¯»¯¼ì²âºÍ·ÖÎö¹¤¾ß½«ÊÇÆÆ½â¶ñÒâÈí¼þ·À»¤µÄ¹Ø¼ü¡£Í¬Ê±£¬¿ª·¢ÕߺͰ²È«×¨¼ÒÒ²Ó¦¼ÓÇ¿¶Ô»ìºÏ¼¼ÊõµÄ×êÑУ¬Ôì¶©³ö¸ü¾ßÕë¶ÔÐÔµÄÓ¦¶ÔÕ½Êõ£¬ÒÔÈ·±£Androidƽ̨µÄ°²È«ÐÔ¡£
ͨ¹ý³ÖÐøµÄ×êÑкͼ¼Êõ´´Ð£¬ÎÒÃÇÓÐÍû¿ÉÄܸüºÃµØÆ¥µÐ¶ñÒâÈí¼þµÄ»ìºÏ¼¼Êõ£¬±£»¤Óû§µÄÒþÖÔÓ밲ȫ¡£
GA»Æ½ð¼×»ý¼«·ÀÓù³¢ÊÔÊÒ£¨ADLab£©
ADLab³ÉÁ¢ÓÚ1999Ä꣬ÊÇÖйú°²È«ÐÐÒµ×îÔç³ÉÁ¢µÄ¹¥·À¼¼Êõ×êÑг¢ÊÔÊÒÖ®Ò»£¬Î¢ÈíMAPP´òËãÖ÷Ìâ³ÉÔ±£¬¡°ºÚȸ¹¥»÷¡±¸ÅÏëÊ×ÍÆÕß¡£½ØÖÁĿǰ£¬ADLabÒÑͨ¹ý CNVD/CNNVD/NVDB/CVEÀۼư䲼°²È«·ì϶5000Óà¸ö£¬³ÖÐøÎ¬³Ö¹ú¼ÊÍøÂ簲ȫÁìÓòÒ»Á÷Ë®×¼¡£³¢ÊÔÊÒ×êÑз½Ïòº¸Ç»ù´¡°²È«×êÑÓ×¢Êý¾Ý°²È«×êÑÓ×¢5G°²È«×êÑÓ×¢ÈËΪÖÇÄܰ²È«×êÑÓ×¢ÒÆ¶¯°²È«×êÑÓ×¢ÎïÁªÍø°²È«×êÑÓ×¢³µÁªÍø°²È«×êÑÓ×¢¹¤¿Ø°²È«×êÑÓ×¢ÐÅ´´°²È«×êÑÓ×¢ÔÆ°²È«×êÑÓ×¢ÎÞÏß°²È«×êÑÓ×¢¸ß¼¶Íþв×êÑÓ×¢¹¥·Àϵͳ½¨Éè¡£×êÑгɾÍÀûÓÃÓÚ²úÆ·Ö÷Ìâ¼¼Êõ×êÑÓ×¢¹ú¶È³Áµã¿Æ¼¼ÏîÄ¿¹¥¹Ø¡¢×¨Òµ°²È«·þÎñµÈ¡£


¾©¹«Íø°²±¸11010802024551ºÅ