Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Model Center   Code  
»áÔ±   
   
 
     
   
 ¶©ÔÄ
  ¾èÖú
»ùÓÚɳºÐ¼¼ÊõµÄÆóÒµÒÆ¶¯Ó¦Óð²È«Æ½Ì¨Éè¼Æ
 
  1944  次浏览      27
 2018-8-13
 
±à¼­ÍƼö:
±¾ÎÄÀ´×ÔÓÚÍøÂç,±¾ÎÄÖ÷Òª½éÉÜÁËɳÏä¼¼ÊõÖ÷ÒªÓÃÓÚÆóÒµÓ¦ÓùÜÀíµÄ°²È«ÈÝÆ÷(°²È«×ÀÃæ)£¬MAM ÖÐ×î¹Ø¼üµÄ¼¼Êõ¾ÍÊÇ APP Wrapping ºÍ Secure Container ²¿·Ö¡£

ǰÑÔ

ÒÆ¶¯»¥ÁªÍøµÄ·ÉËÙ·¢Õ¹, ¸Ä±äÁËÆóÒµ´«Í³µÄÒµÎñģʽ, Ìá¸ßÁ˹¤×÷ЧÂÊ. µ«Í¬Ê±Ò²¸øÆóÒµµÄÊý¾Ý°²È«´øÀ´Á˾޴óµÄÌôÕ½, ÎÒÃÇÃæ¶Ô¸÷ÖÖ¹¥»÷µÄ¿ÉÄÜÐÔ»á´ó ´óÔö¼Ó, ÃæÁÙDZÔڵķçÏÕ:

1.ÒÆ¶¯É豸ÖеIJ»°²È«Ó¦ÓóÌÐò»áΣ¼°µ½ÆóÒµÍøÂçµÄ°²È«£»

2.ÒÆ¶¯É豸¿ÉÄÜÔÚ²»°²È«µÄÍøÂç(È繫¹² WiFi ÈÈ µã)ÖÐʹÓÃ, ÈÝÒ×Ôì³É¶ñÒâÈí¼þ¸ÐȾºÍÊý¾Ýй©£»

3.Ô½Óü»ò»ñÈ¡ Root ȨÏÞÒÆ¶¯É豸»á´ø¸ü¶à·çÏÕ£»

4.ÒÆ¶¯É豸±»µÁ, ÔÚδ¾­ÊÚȨµÄÇé¿öÏ·ÃÎʹ«Ë¾µÄÍøÂç»òÕßй©Ãô¸ÐÊý¾Ý¡£

ÆóÒµÒÆ¶¯Ó¦Óð²È«Æ½Ì¨ÓÉËIJ¿·Ö¹¦ÄÜ×é³É, °²×°ÔÚÊÖ»úÉ쵀 °²È«ÈÝÆ÷¡¢°²È«¼Ó¹Ì SDK, Web ¹ÜÀíÃÅ»§ ºÍ ͨÐÅ´úÀí, ¸÷²¿·ÖµÄ¹¦Äܼ°ÆäÏ໥¼äµÄ¹ØÏµÈçÏÂËùʾ:

Android °²È«¼Ü¹¹

Android ϵͳ²ÉÓ÷ֲãµÄÌåϵ½á¹¹£¬·Ö±ðΪ: Applications(ºËÐÄÓ¦ÓóÌÐò)¡¢Application Framework(¿ª·¢¿ò¼Ü°ü)¡¢Libraries(ϵͳÔËÐпâ»òÕßÊÇ c/c++ ºËÐÄ¿â)¡¢Hardware Abstraction Layer(Ó²¼þ³éÏó²ã)¡¢Linux Kernel(Linux ÄÚºË)¡£

Android ϵͳ²ÉÓ÷ֲãµÄϵͳ¼Ü¹¹½øÐÐÉè¼Æ£¬Ã¿²ã¶¼ÓÐÆäÑϸñµÄ°²È«¹æ·¶ºÍÇ¿½¡µÄ°²È«¼Ü¹¹¡£Android µÄÖ÷Òª°²È«»úÖÆÔÚÄں˲ãºÍϵͳ¿ò¼Ü²ã¡£ÔÚϵͳ¿ò¼Ü²ã£¬Android Ôò²ÉÓÃÁËȨÏÞ»úÖÆ¡¢Ç©Ãû»úÖÆºÍɳÏä»úÖÆ£¬À´±£»¤ÏµÍ³µÄ°²È«£¬¸ôÀ벻ͬ½ø³ÌÖ®¼äµÄ×ÊÔ´·ÃÎÊ£¬ÊÚȨ·ÃÎÊϵͳ×ÊÔ´ºÍ·þÎñ£¬½ûÖ¹·ÇÊÚȨ·ÃÎʵķ¢Éú¡£

ȨÏÞ»úÖÆÊÇ Android ϵͳ¿ò¼Ü²ãÌṩµÄ£¬ÊǶÔÓ¦Ó÷ÃÎʹ«¹²×ÊÔ´ºÍ·þÎñ½øÐÐÇ¿ÖÆ·ÃÎʵݲȫ²ßÂÔ¡£Ó¦ÓÃÈç¹ûҪʹÓù«¹²×ÊÔ´ºÍ·þÎñ£¬±ØÐëÒªÔÚÅäÖÃÎļþÖÐÉùÃ÷ÐèҪʹÓöÔÓ¦×ÊÔ´µÄȨÏÞ£¬·ñÔò½«ÎÞ·¨µÃµ½ÊÚȨ£¬ÖÂʹ²»ÄÜʹÓÃÆä×ÊÔ´£¬µ«ÊÇȨÏÞ»úÖÆ²ÉÓõÄÈ«²¿¿Ï¶¨ºÍÈ«²¿·ñ¶¨µÄ·½Ê½£¬°Ñ×îÖÕµÄÈ·¶¨È¨½»¸øÁËÓû§£¬Óû§ÔÚ²»¾ß±¸Ïà¹ØµÄ°²È«ÖªÊ¶µÄÇé¿öÏÂÊǺÜÄÑ×ö³öºÏÊʵÄÅжϵġ£

Ç©Ãû»úÖÆÊÇÓ¦ÓÃÖаüº¬Ò»¸ö²ÉÓ÷ǶԳƼÓÃÜ·½Ê½´æ´¢µÄÊý×ÖÖ¤Ê飬ÓÉÓÚ˽ԿÔÚ¿ª·¢ÈËÔ±ÊÖÖУ¬ËùÒÔÊý×ÖÖ¤ÊéÄܹ»±£Ö¤¿ª·¢ÈËÔ±¶ÔÆäÓ¦ÓõĺϷ¨ÓµÓÐȨ¡£ËäÈ» Android ϵͳÌṩÁËÇ©Ãû»úÖÆÀ´±£»¤¿ª·¢ÈËÔ±µÄºÏ·¨ÓµÓÐȨ£¬µ«ÊDz¢Ã»ÓÐÌṩÑéÖ¤Ó¦ÓÃÊÇ·ñ±»¶ñÒâµÄ¶þ´ÎÖØ´ò°ü£¬ÕâʹµÃÓ¦Óñ»×¢ÈëһЩ¶ñÒâµÄ´úÂ룬À´»ñÈ¡·Ç·¨µÄÊÕÒæ»ò´ï³É¶ñÒâµÄÄ¿µÄ¡£

ɳÏäËäÈ»ÌṩÁ˽ø³Ì¸ôÀëµÄ»úÖÆ£¬±£Ö¤ÔËÐÐʱӦÓõĽø³Ì¿Õ¼ä²»»á±»¶ñÒâµÄÐ޸쬵«ÊÇɳÏ䲢ûÓÐÔÚÔËÐÐʱÑéÖ¤ÊÇ·ñÔËÐл·¾³ÊÇ·ñ°²È«£¬ÊÇ·ñϵͳµÄ¹Ø¼üº¯ÊýµÄµØÖ··¢ÉúÁ˸ı䣬һµ©ÏµÍ³µÄÔÚ½øÈëɳÏäǰ¾ÍÒѾ­±»¶ñÒâÐ޸ģ¬É³ÏäÖеÄÓ¦ÓÃÒ²½«Êܵ½¶ñÒâµÄÍþв¡£

Ŀǰ»ùÓÚÈÝÆ÷µÄ Android ¼Ó¹Ì·½°¸ºÍɳÏä¼¼ÊõÃâ°²×°Ó¦ÓõĹÜÀí£¬±¾ÖÊÉ϶¼ÊÇ»ùÓÚ Android ϵͳ²å¼þ»¯µÄ¼¼Êõ£¬APK ɳÏäÐèÒª½â¾öÒÔϼ¸¸öÎÊÌ⣺

VirtualApp ɳÏäÔ­Àí

VirtualApp ÊÇÒ»¸ö¿ªÔ´µÄ Android App ÐéÄ⻯ÒýÇæ£¬ÔÊÐíÔÚÆäÖд´½¨ÐéÄâ¿Õ¼ä£¬²¢ÔÚÕâ¸öÐéÄâ¿Õ¼äÖÐÔËÐÐÆäËûÓ¦Óá£Android Ó¦ÓøôÀëÊÇ»ùÓÚ Linux ϵͳµÄ¶àÓû§»úÖÆÊµÏֵ쬼´Ã¿¸öÓ¦ÓÃÔÚ°²×°Ê±±»·ÖÅäÁ˲»Í¬µÄ Linux Óû§ uid/gid¡£¶øÔÚ VirtualApp ÖУ¬client Ó¦Óã¨Í¨¹ý VirtualApp °²×°µÄÓ¦Óã©Óë host Ó¦Ó㨼´ VirtualApp ±¾Éí£©ÊǾßÓÐÏàͬÓû§ uid µÄ¡£

Òò´Ë£¬VirtualApp ÔÚÔËÐÐʱ£¬°üº¬ÒÔÏÂÈý²¿·Ö£º

Main Process£¬½ø³ÌÃû io.virtualapp£¬Ö÷Òª¸ºÔð VirtualApp Óû§½çÃæ¼°Ó¦ÓùÜÀí

VA Server Process£¬½ø³ÌÃû io.virtualapp:x£¬Ö÷Òª¸ºÔðϵͳ·þÎñµÄ´úÀí£¬ÊÇͨ¹ý Content Provider Æô¶¯µÄ

Client App Process£¬½ø³ÌÃû io.virtualapp:p[0-¡­]£¬×÷Ϊ½«À´ÔËÐÐ client Ó¦ÓõĽø³Ì£¬µ± client Ó¦ÓÃÆô¶¯ºó£¬Æä½ø³ÌÃû»á¸üÐÂΪ client Ó¦ÓõİüÃû

ÏÂÃæÊÇÔÚ VirtualApp ÖÐÔËÐÐÓ¦Óúóͨ¹ý ps ÃüÁîµÃµ½µÄ½á¹û£º

¸÷ÁвÎÊýÒâÒ壺

USER: ½ø³Ìµ±Ç°Óû§£»

PID: Process ID£¬½ø³Ì ID£»

PPID: Process Parent ID£¬½ø³ÌµÄ¸¸½ø³Ì ID£»

VSIZE: Virtual Size£¬½ø³ÌµÄÐéÄâÄÚ´æ´óС£»

RSS: Resident Set Size£¬Êµ¼ÊפÁô"ÔÚÄÚ´æÖÐ"µÄÄÚ´æ´óС£»

WCHAN: ÐÝÃß½ø³ÌÔÚÄÚºËÖеĵØÖ·£»

PC: Program Counter£»

NAME: ½ø³ÌÃû.

¿ÉÒÔ¿´µ½£¬ÒÔÉϽø³Ì£¬¾ùÊÇÒÔ VirtualApp µÄÓû§ uid ÔËÐеġ£Òò´Ë£¬Android Ó¦ÓøôÀë´Ëʱ²»ÔÙÊÊÓã¬ÎÒÃÇ¿ÉÒÔ¶Ô client Ó¦ÓýøÐÐ hook ¶øÎÞÐè root ȨÏÞ¡£

VirtualApp Ô´Âë½á¹¹

1. java/android: ¸²¸ÇÁËϵͳµÄÒþ²ØÀà

content/pm/PackageParser: Ö÷Òª¶ÔÓ¦ android.content.pm.PackageParser£¬Ö÷Òª×÷ÓÃÊǽâÎö APK;

location/LocationRequest: ¶ÔÓ¦ÓÚ android.location.LocationRequest£¬¸ÃÀàÊÇÒ»¸ö¿É³Ö¾Ã»¯µÄ Parcelable£¬Ö÷Òª×÷ÓÃÊÇÉèÖà LocationManagerService µÄ²ÎÊý¡£

2. com.lody.virtual: ¿ò¼ÜµÄÖ÷Ìå´úÂë

client: ÔËÐÐÔÚ¿Í»§¶ËµÄ´úÂ룬ָ¼ÓÔØµ½ VA ÖеÄ×Ó³ÌÐòÔÚ±» VA ´úÀí(hook)Ö®ºó,ËùÔËÐеĴúÂë;

server: server ¶Ë´úÂ룬VA αÔìÁËÒ»Ì× framework ²ãϵͳ service µÄ´úÂ룬ËûÔÚÒ»¸ö¶ÀÁ¢µÄ·þÎñÖмǼ¹ÜÀí×é¼þµÄ¸÷ÖÖ Recorder£¬ÆäÂß¼­ÆäʵÓëϵͳԭÉúµÄÏà½ü£¬Í¨¹ý Binder Óë client ¶ËµÄ ipc °üÖÐµÄ VXXXXManager ͨѶ¡£ÖîÈç AMS(VAMS),PMS(VPMS);

remote: һЩ¿ÉÐòÁл¯ Model£¬¼Ì³ÐÓÚ Parcelable;

os: ´¦Àíϵͳ»·¾³£¬Èç¶àÓû§;

helper: ¿ò¼Ü¹¤¾ßÀà¡£

3. mirror£ºÏµÍ³ framework µÄ¾µÏñ

ʵÏÖÁËÓë framework ²ãÏà¶ÔÓ¦µÄ½á¹¹£¬·â×°ÁË·´Éä»ñȡϵͳÒþ²Ø×ֶκͷ½·¨µÄ£¬±ãÓÚÖ±½Óµ÷ÓûñÈ¡»òÕ߸³ÖµÒÔ¼°µ÷Ó÷½·¨¡£

MAM ·¢Õ¹µÄÏÖ×´

ÒÆ¶¯Ó¦ÓóÌÐò¹ÜÀí£¨MAM£©±³ºóµÄÏë·¨ÊÇÎÒÃǽ«°²È«²ßÂÔÓ¦ÓÃÓÚµ¥¸öÓ¦ÓóÌÐò¶ø²»ÊÇÕû¸öÉ豸¡£ÕâÒâζן÷ÖÖÓ¦ÓóÌÐò¿ÉÒÔÓ¦ÓöÀÌØµÄ²ßÂÔ£¬²¢ÇÒÎÞÂÛÉ豸µÄ¹ÜÀí״̬ÈçºÎ£¬ËüÃǶ¼½«Êܵ½±£»¤ºÍ¹ÜÀí¡£»ù±¾µÄÓ¦ÓóÌÐò¹ÜÀí¹¦ÄÜͨ³£°üÀ¨Éí·ÝÑéÖ¤£¬VPN£¬¼ÓÃܺÍÔ¶³Ì²Á³ý¡£Ó¦ÓóÌÐò»¹Á¬½Óµ½¿ÉÒÔ¿ØÖÆÉí·ÝÑéÖ¤£¬·¢³öÔ¶³Ì²Á³ýÃüÁî»òʹÓà IT ´´½¨µÄ²ßÂÔ¿ØÖÆÓ¦ÓóÌÐòµÄ·þÎñÆ÷¡£

ǰÑÔ²¿·ÖÎÒÃÇÎÒÃÇÖªµÀɳÏä¼¼ÊõÖ÷ÒªÓÃÓÚÆóÒµÓ¦ÓùÜÀíµÄ°²È«ÈÝÆ÷(°²È«×ÀÃæ)£¬MAM ÖÐ×î¹Ø¼üµÄ¼¼Êõ¾ÍÊÇ APP Wrapping ºÍ Secure Container ²¿·Ö£¬Ëü°ÑÒ»¸öÒÆ¶¯É豸»®·Ö³öÁ½¸ö¹¤×÷Çø£¬´Ó¶øÊµÏÖ¸öÈ˿ռäÓëÆóÒµ¹¤×÷¿Õ¼äµÄ¸ôÀë¡£ÕâЩ¹Ø¼ü¼¼ÊõͨË×Àí½â¾ÍÊÇ iOS¡¢Android£¬WinPhone ÉϵÄÓ¦ÓÃÐéÄ⻯£¬ËüûÓÐÒ»¸ö±ê×¼½Ó¿Ú¿É×ñÑ­£¬ÍêÈ«¿¿¸÷ MAM ³§ÉÌ×Ô¼ºµÄ¼¼Êõ¹¦Á¦À´ÊµÏÖ¡£

APP Wrapping (·â×°»òÕß´ò°ü) ¡ª¡ª ͸¹ý¶ÔÓ¦Ó÷â×°´ò°ü»òͨ¹ý¼¯³É SDK ·½·¨£¬¿ØÖÆ·þÎñºÍ°²È«¹ÜÀí£¬¶ÔÓÚÓ¦Óõķַ¢£¬·ÃÎʺͲßÂÔ¹ÜÀíÖÁ¹ØÖØÒª¡£

Secure container (ÈÝÆ÷»òɳºÐ) ¡ª¡ª Ó¦Óü¶±ðµÄÊú¾®£¬¼ÓÃÜ´æ´¢ºÍ´«Êä״̬µÄÊý¾Ý£¬¶ÔÏûÏ¢ºÍÓ¦ÓÃÊý¾ÝÌṩ¸ôÀë±£»¤£¬É豸ÆäËû²¿·ÖÎÞ·¨·ÃÎÊ¡£

   
1944 ´Îä¯ÀÀ       27
Ïà¹ØÎÄÕÂ

Éî¶È½âÎö£ºÇåÀíÀôúÂë
ÈçºÎ±àд³öÓµ±§±ä»¯µÄ´úÂë
ÖØ¹¹-ʹ´úÂë¸ü¼ò½àÓÅÃÀ
ÍŶÓÏîÄ¿¿ª·¢"±àÂë¹æ·¶"ϵÁÐÎÄÕÂ
Ïà¹ØÎĵµ

ÖØ¹¹-¸ÄÉÆ¼ÈÓдúÂëµÄÉè¼Æ
Èí¼þÖØ¹¹v2
´úÂëÕû½àÖ®µÀ
¸ßÖÊÁ¿±à³Ì¹æ·¶
Ïà¹Ø¿Î³Ì

»ùÓÚHTML5¿Í»§¶Ë¡¢Web¶ËµÄÓ¦Óÿª·¢
HTML 5+CSS ¿ª·¢
ǶÈëʽC¸ßÖÊÁ¿±à³Ì
C++¸ß¼¶±à³Ì