 |
|
 |
¾Èµå·ÎÀÌµå ¾ÖÇø®ÄÉÀÌ¼Ç ¸®¹ö½º ¿£Áö´Ï¾î¸µ : ±âÃʺÎÅÍ °í±Þ±îÁö ¾Èµå·ÎÀÌµå ¾Û ¸®¹ö½Ì
|
|
|
¿¡ÀÌÄÜ ÇØÅ·°ú º¸¾È ½Ã¸®Áî1
¤Ó ³²´ëÇö
¤Ó
¿¡ÀÌÄÜÃâÆÇ
|
|
|
|

- Á¦ÈÞ¸ô ÁÖ¹® ½Ã °í°´º¸»ó, ÀϺΠÀ̺¥Æ® Âü¿© ¹× ÁõÁ¤Ç° ÁõÁ¤, ÇÏ·ç/´çÀÏ ¹è¼Û¿¡¼ Á¦¿ÜµÇ¹Ç·Î Âü°í ¹Ù¶ø´Ï´Ù.
-
-
-
[¾Èµå·ÎÀÌµå ¾ÖÇø®ÄÉÀÌ¼Ç ¸®¹ö½º ¿£Áö´Ï¾î¸µ]Àº ¾Èµå·ÎÀÌµå ¾ÖÇø®ÄÉÀÌ¼Ç ¼³Ä¡ ¹æ¹ýºÎÅÍ µ¿Àû µð¹ö±ë¿¡ À̸£´Â ´Ù¾çÇÑ ºÐ¼® ¹æ¹ýÀ» ´ãÀº Ã¥À̸ç, ³µ¶È ¹× ºÐ¼® ¹æÁö ¼Ö·ç¼Ç µî ºÐ¼®ÀÌ ¸·ÇûÀ» ¶§, µ¹ÆÄ±¸¸¦ ãÀ» ¼ö Àִ åÀÌ´Ù. ÀúÀÚµéÀÇ ´Ù³â°£ ¸ðÀÇÇØÅ· ¹× Ãë¾àÁ¡ ºÐ¼®À¸·Î Å͵æÇÑ ³ëÇϿ츦 ¹ÙÅÁÀ¸·Î ºÐ¼® ȯ°æ ±¸¼ººÎÅÍ °í±Þ Ȱ¿ë±îÁö ¸ðµÎ ´Ù·ð´Ù.
-
-
¡Ú ÀÌ Ã¥¿¡¼ ´Ù·ç´Â ³»¿ë ¡Ú
¡á ¾Èµå·ÎÀÌµå ¾ÖÇø®ÄÉÀÌ¼Ç ºÐ¼® ȯ°æ ¼³Á¤
¡á ¹«·á µµ±¸¸¦ ÀÌ¿ëÇÑ Á¤Àû ºÐ¼® ¹æ¹ý
¡á »ó¿ë µµ±¸¸¦ ÀÌ¿ëÇÑ ³µ¶È ¾ÖÇø®ÄÉÀÌ¼Ç ºÐ¼® ¹æ¹ý
¡á ºÐ¼® ¹æÁö ¼Ö·ç¼ÇÀÌ Àû¿ëµÈ ¾ÖÇø®ÄÉÀÌ¼Ç ºÐ¼® ¹æ¹ý
¡á °øÀ¯ ¶óÀ̺귯¸® µ¿Àû µð¹ö±ë ¹æ¹ý
¡á ÇØÅ· ´ëȸ ¹®Á¦¸¦ ÅëÇÑ ½ÇÀü ÀÀ¿ë
¡á °³¹ßÀ» ÅëÇÑ APK ÈÄÅ· ¹æ¹ý
¡Ú ÀÌ Ã¥ÀÇ ´ë»ó µ¶ÀÚ ¡Ú
¡á ¾Èµå·ÎÀÌµå ¾ÖÇø®ÄÉÀÌ¼Ç º¸¾ÈÀ» óÀ½ Á¢Çϰųª ÀÌÁ¦ ¸· ½ÃÀÛÇÏ·Á´Â µ¶ÀÚ
¡á °³¹ßÀÚ ¹× ½ÃÅ¥¸®Æ® ÆÄÆ®¿¡¼ º¸¾È Á¡°ËÀ» ´ã´çÇÏ´Â µ¶ÀÚ
¡á ¾Èµå·ÎÀÌµå ¾ÖÇø®ÄÉÀÌ¼Ç Ãë¾àÁ¡ Á¡°Ë ¸ðÀÇÇØÅ· ÄÁ¼³ÅÏÆ®
¡á ¾Èµå·ÎÀÌµå ¾ÖÇø®ÄÉÀÌ¼Ç ¸®¹ö½º ¿£Áö´Ï¾î¸µ¿¡ °ü½ÉÀÌ ¸¹Àº µ¶ÀÚ
¡Ú ÀÌ Ã¥ÀÇ ±¸¼º ¡Ú
1Àå, '¾Èµå·ÎÀÌµå ±âº» °³³ä'¿¡¼´Â ¾Èµå·ÎÀÌµå ¾ÖÇø®ÄÉÀÌ¼Ç ºÐ¼®¿¡ ¾Õ¼ ºÐ¼®À» ¾î´À ºÎºÐºÎÅÍ ÇØ¾ß ÇÏ´ÂÁö ¸ð¸£´Â µ¶Àڵ鿡°Ô ¾Èµå·ÎÀÌµå ¾ÖÇø®ÄÉÀ̼ÇÀÇ ³× °¡Áö ±¸¼º¿ä¼Ò¿¡ ´ëÇÑ °³³ä ¼³¸íÀ¸·Î ¾î´À ºÎºÐºÎÅÍ ºÐ¼®À» ½ÃÀÛÇØ¾ß ¸ð¸£´Â µ¶ÀÚµéÀÌ °³³äÀ» ¹ÙÅÁÀ¸·Î °ü·Ã Äڵ带 ½±°Ô ºÐ¼®ÇØ ³ª°¥ ¼ö ÀÖµµ·Ï ¾×ƼºñƼ(Activity), ¼ºñ½º(Service), ºê·ÎµåÄɽºÆ® ¼ö½ÅÀÚ(Broadcast Receiver), ÄÜÅÙÃ÷ Á¦°øÀÚ(Contents Provider)¿¡ °üÇØ ¼³¸íÇÑ´Ù.
2Àå, '¾Èµå·ÎÀÌµå ¸®¹ö½º ¿£Áö´Ï¾î¸µÀ» À§ÇÑ È¯°æ ±¸Ãà'¿¡¼´Â ºÐ¼®¿¡ ¾Õ¼ µð¹ÙÀ̽º¿¡ Á¢¼ÓÇϱâ À§ÇØ ADB Á¢¼ÓÀ» À§ÇÑ USBµð¹ö±ë Ȱ¼ºÈÇÏ´Â ¹æ¹ý, ÇÊ¿äÇÑ ¸í·É¾î µîÀ» »ç¿ëÇϱâ À§ÇØ Busybox µîÀ» ¼³Ä¡ÇÏ´Â ¹æ¹ý ¹× À©µµ¿ì, ¿ìºÐÅõ ȯ°æ¿¡ ¸Â°Ô ÀÚ¹Ù ¹öÀü È®ÀÎ ¹× ¾Èµå·ÎÀÌµå ½ºÆ©µð¿À(Android Studio)¸¦ ÀÌ¿ëÇØ SDK¸¦ ¼³Ä¡ÇÏ´Â ¹æ¹ýÀ» ½ÃÀÛÇÏ´Â »ç¶÷µéÀ» ±âºÐÀ¸·Î ÀÚ¼¼È÷ ¼³¸íÇÑ´Ù.
3Àå, '¾Èµå·ÎÀÌµå ¾Û ±¸¼º ¹× ÄÚµå ºÐ¼®'¿¡¼´Â ¾Èµå·ÎÀÌµå ¾ÖÇø®ÄÉÀ̼ÇÀÇ ±¸¼º, ¾Èµå·ÎÀÌµå ¾ÖÇø®ÄÉÀÌ¼Ç »ý¼º °úÁ¤°ú apktoolÀ» ÀÌ¿ëÇÑ ±âº»ÀûÀÎ APK Repackage °úÁ¤À» ¼³¸íÇÏ°í ¹«·á·Î ½±°Ô ±¸ÇÒ ¼ö ÀÖ´Â JD-GUI, JADX, Androguard, ByteCodeViewer¸¦ ÀÌ¿ëÇØ ºÐ¼®ÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ ¼³¸íÇÑ´Ù. ¶ÇÇÑ ¾Èµå·ÎÀÌµå ¾ÖÇø®ÄÉÀÌ¼Ç ºÐ¼® ¿ëµµ·Î ¸¹ÀÌ »ç¿ëµÇ°í ÀÖ´Â JEB, JEB2¸¦ ÀÌ¿ëÇÑ ÀÚ¼¼ÇÑ ºÐ¼® ¹æ¹ý°ú JEB2¿¡¼ Á¦°øÇÏ´Â µ¿Àû µð¹ö±ëÀ» ÇÒ ¼ö ÀÖ´Â ¹æ¹ý¿¡ ´ëÇØ ÀÚ¼¼È÷ ¼³¸íÇÑ´Ù.
4Àå, '¾Èµå·ÎÀÌµå ¾Û Á¤Àû ºÐ¼®'¿¡¼´Â ºÐ¼®À» À§ÇØ ¼³Ä¡µÈ ¾Èµå·ÎÀÌµå ¾ÖÇø®ÄÉÀÌ¼Ç ÃßÃâºÎÅÍ ºÐ¼®¹æÁö ¼Ö·ç¼ÇÀÌ Àû¿ëµÈ ¾ÖÇø®ÄÉÀ̼ÇÀÇ ½ÇÇàÄÚµå ÃßÃâ ¹æ¹ý ¹× À¯¿ëÇÑ ÆÁÀ» ¿¹Á¦¸¦ ¹ÙÅÁÀ¸·Î ¼³¸íÇϰí, ·¹º§ Å×½ºÆ® ¿ëµµ·Î Á¦ÀÛµÈ ¾Èµå·ÎÀÌµå ¾ÖÇø®ÄÉÀ̼ÇÀÇ Á¤Àû ºÐ¼® ¹æ¹ý¿¡ ´ëÇØ ¾Èµå·ÎÀÌµå ±âº» °³³äºÎÅÍ, ÄÚµå Ȱ¿ë±îÁö Â÷±ÙÂ÷±Ù ¼³¸íÇÑ´Ù.
5Àå, '¾Èµå·ÎÀÌµå ¾Û µ¿Àû ºÐ¼®'¿¡¼´Â ÀÌÀåÀÇ ³»¿ëÀº ´ëºÎºÐ °í±Þ°úÁ¤¿¡ ¼ÓÇÏ¸ç °³¹ß¿¡ ´ëÇÑ »çÀüÁö½ÄÀÌ ÇÊ¿äÇÏ´Ù. µû¶ó¼ ¾ÛÀ» Á÷Á¢ ºÐ¼®ÇÏÁö ¾Ê°í µ¿Àû ȯ°æÀ» ±¸¼ºÇØ ¾î¶² À̺¥Æ®°¡ ¹ß»ýÇÏ´ÂÁö È®ÀÎÇϱâ À§ÇØ ¾Èµå·ÎÀ̵å LKM(Loadable Kernel Module), ´ëÇ¥ÀûÀÎ ÇÁ·¹ÀÓ¿öÅ©¸¦ Ȱ¿ëÇÑ ÀÚ¹Ù API ÈÄÅ·À» ÅëÇØ ºÐ¼®Çسª°¡´Â ¹æ¹ý, API ÈÄÅ·À» ÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ¼ ÀÚ¼¼È÷ ¼³¸íÇÑ´Ù.
6Àå, '¾Èµå·ÎÀÌµå ¾Û(APK) µð¹ö±ë'¿¡¼´Â GDB, IDA, JEB2¸¦ ÅëÇØ¼ ¾Èµå·ÎÀÌµå ¾ÖÇø®ÄÉÀÌ¼Ç Äڵ忡 ´ëÇÑ µ¿Àû µð¹ö±ë ȯ°æ ±¸Ãà ¹× µ¿Àû µð¹ö±ë ¹æ¹ý, JNI ¶óÀ̺귯¸® µð¹ö±ë ¹æ¹ý¿¡ ´ëÇØ¼ ÀÚ¼¼È÷ ¼³¸íÇÑ´Ù.
¡Ú ÁöÀºÀÌÀÇ ¸» ¡Ú
¾Èµå·ÎÀ̵忡 °üÇÑ ¸¹Àº Ã¥ÀÌ ÀÖ´Ù. ¼ø¼ö ¾ÖÇø®ÄÉÀÌ¼Ç °³¹ß¿¡ ÃÊÁ¡À» ¸ÂÃá Ã¥, ¾Ç¼ºÄÚµå ºÐ¼®¿¡ ÃÊÁ¡À» ¸ÂÃá Ã¥, Ãë¾àÁ¡ ºÐ¼®¿¡ ÃÊÁ¡À» ¸ÂÃá Ã¥ µî ¾Èµå·ÎÀÌµå °ü·Ã ´Ù¾çÇÑ Ã¥µéÀÌ ÀÖ´Ù. ¿ì¸®´Â ¼ø¼öÇÏ°Ô ¾Èµå·ÎÀÌµå ¾ÖÇø®ÄÉÀÌ¼Ç ºÐ¼® ¹æ¹ý¿¡ ´ëÇÑ Ã¥À» ¸¸µé°í ½Í¾ú´Ù.
¾Èµå·ÎÀ̵å ...¾ÖÇø®ÄÉÀÌ¼Ç ¼³Ä¡ºÎÅÍ ´Ù¾çÇÑ ºÐ¼® µµ±¸¸¦ Ȱ¿ëÇÏ´Â ¹æ¹ý±îÁö ÀÚ¼¼È÷ ±â¼úÇÏ·Á°í ³ë·ÂÇß°í, ±íÀ̰¡ ¾ø´Ù´Â ÁöÀûÀ» ¹ÞÁö ¾Ê±â À§ÇØ °³¹ß Áö½ÄÀÌ ÇÊ¿äÇÑ ºÎºÐ±îÁö ¼³¸íÇÏ¿´´Ù. µ¿Àû ºÐ¼®¿¡¼´Â µð¹ö±ë, APK ÈÄÅ· µî ´Ù¾çÇÑ ¹æ¹ýÀ» ¼³¸íÇß´Ù.
±¹³»¿Ü µµ¼¸¦ ÅëÆ²¾î ÀÌ Ã¥º¸´Ù ¾Èµå·ÎÀÌµå ¾ÖÇø®ÄÉÀÌ¼Ç ¸®¹ö½º ¿£Áö´Ï¾î¸µ¿¡ Ãæ½ÇÇÑ Ã¥Àº ¾ø´Ù°í ÀÚºÎÇÑ´Ù. ÀÌÁ¦ ¸· ¾Èµå·ÎÀÌµå ¸®¹ö½º ¿£Áö´Ï¾î¸µÀ» ½ÃÀÛÇÏ·Á´Â »ç¶÷, ÇöÀç ¸ð¹ÙÀÏ ¾ÖÇø®ÄÉÀÌ¼Ç Ãë¾àÁ¡ ºÐ¼® ¹× ¸ðÀÇÇØÅ·¿¡ ¸ö´ã°í ÀÖ´Â »ç¶÷µé¿¡°Ô µµ¿òÀÌ µÉ ¼ö Àִ åÀ» ¸¸µé±â À§ÇØ ´Ù³â°£ÀÇ ³ëÇϿ츦 ³ì¿© ÁýÇÊÇß´Ù. ÀÌ Ã¥À» ÅëÇØ ÇÑ ´Ü°è µµ¾àÇÏ´Â °è±â°¡ µÇ¾úÀ¸¸é ÇÏ´Â ¹Ù¶÷ÀÌ´Ù.
-
-
1Àå. ¾Èµå·ÎÀÌµå ±âº» °³³ä
__1.1 ¾Èµå·ÎÀ̵å Çʼö ±¸¼º ¿ä¼Ò
____1.1.1 ¾×ƼºñƼ
____onCreate( )
____startActivity( )
____startActivityForResult( )
____setResult( )
____¾×ƼºñƼ »ý¸íÁÖ±â
____1.1.2 ¼ºñ½º
____¼ºñ½º »ý¸íÁÖ±â
____1.1.3 ºê·Îµåij½ºÆ® ¼ö½ÅÀÚ
____1.1.4 ÄÜÅÙÃ÷ Á¦°øÀÚ
2Àå. ¾Èµå·ÎÀÌµå ¸®¹ö½º ¿£Áö´Ï¾î¸µÀ» À§ÇÑ È¯°æ ±¸Ãà
__2.1 µð¹ÙÀ̽º ¼³Á¤
____2.1.1 ADB Á¢¼ÓÀ» À§ÇÑ USB µð¹ö±ë Ȱ¼ºÈ
____2.1.2 ·çÆÃ
____2.1.3 ´Ù¾çÇÑ ¸í·ÉÀ» »ç¿ëÇϱâ À§ÇÑ BusyBox ¼³Ä¡
__2.2 ¾Èµå·ÎÀ̵å SDK, NDK ¼³Ä¡
____2.2.1 À©µµ¿ì ȯ°æ¿¡¼ ¾Èµå·ÎÀ̵å SDK ¼³Ä¡
____ÀÚ¹Ù ¹öÀü È®ÀÎ
____ÀÚ¹Ù ´Ù¿î·Îµå
____ÀÚ¹Ù ¼³Ä¡
____2.2.2 ¾Èµå·ÎÀÌµå ½ºÆ©µð¿À¸¦ ÀÌ¿ëÇÑ ¾Èµå·ÎÀ̵å SDK ¼³Ä¡
____¾Èµå·ÎÀÌµå ½ºÆ©µð¿À ´Ù¿î·Îµå
____¾Èµå·ÎÀ̵å SDK ¼³Ä¡
____ȯ°æ º¯¼ö µî·Ï
__2.3 ¿ìºÐÅõ ȯ°æ¿¡¼ ¾Èµå·ÎÀ̵å SDK ¼³Ä¡
____2.3.1 ÀÚ¹Ù ¹öÀü È®ÀÎ ¹× ¼³Ä¡
____ÀÚ¹Ù ¹öÀü È®ÀÎ
____ÀÚ¹Ù ¼³Ä¡
____ÀÚ¹Ù ¹öÀü È®ÀÎ
____2.3.2 ¾Èµå·ÎÀ̵å SDKÀÇ ´Ù¿î·Îµå¿Í ¼³Ä¡
____2.3.3 ¾Èµå·ÎÀ̵å SDK ȯ°æ º¯¼ö ¼³Á¤
____2.3.4 ¾Èµå·ÎÀ̵å NDK ´Ù¿î·Îµå ¹× ...¼³Ä¡
____¾ÐÃà ÇØÁ¦
____2.3.5 ¾Èµå·ÎÀ̵å NDK ȯ°æ º¯¼ö µî·Ï
3Àå. ¾Èµå·ÎÀÌµå ¾Û ±¸¼º ¹× ÄÚµå ºÐ¼®
__3.1 ¾Èµå·ÎÀ̵å APK ±¸¼º
__3.2 APK Repackage
____3.2.1 Apktool
__3.3 ¹«·á µµ±¸¸¦ Ȱ¿ëÇÑ ÄÚµå ºÐ¼®
____3.3.1 JD - GUI
____½ÇÇà ¹®Á¦ ÇØ°á
____3.3.2 JADX
____3.3.3 Androguard
____3.3.4 ¹ÙÀÌÆ®ÄÚµå ºä¾î
__3.4 »ó¿ëµµ±¸¸¦ Ȱ¿ëÇÑ ÄÚµå ºÐ¼®
____3.4.1 JEB1
____½¬¿î ÇØÅ·´ëȸ ¹®Á¦ Ç®¾îº¸±â
____3.4.2 JEB2
____UI ¹èÄ¡
____¾ÆÆ¼ÆÑÆ® Ãß°¡
____¾ÖÇø®ÄÉÀÌ¼Ç µ¿Àû µð¹ö±ë
____SETPROPEX¸¦ ÀÌ¿ëÇÑ ¼³Á¤°ª º¯°æ
____CVE-2016-5195 Ãë¾àÁ¡À» ÀÌ¿ëÇÑ ¼³Á¤°ª º¯°æ
____JEB2 µ¿Àû µð¹ö±ë ±â´É »ç¿ë °ü·Ã ¹®Á¦ ÇØ°á
____JEB2¸¦ ÀÌ¿ëÇÑ ¾ÖÇø®ÄÉÀÌ¼Ç µð¹ö±ë
4Àå. ¾Èµå·ÎÀÌµå ¾Û Á¤Àû ºÐ¼®
__4.1 ¾Èµå·ÎÀ̵å APK ÃßÃâ
____4.1.1 ADB
____4.1.2 ¾Æ½ºÆ®·Î ÆÄÀϰü¸®ÀÚ
__4.2 ºÐ¼®¹æÁö ¼Ö·ç¼Ç ¿ìȸ
____¿¹Á¦ 1
____¿¹Á¦ 2
__4.3 ¾Èµå·ÎÀÌµå ¾ÖÇø®ÄÉÀÌ¼Ç Á¤Àû ºÐ¼®
____¿¹Á¦ 1
____¿¹Á¦ 2
__4.4 ³µ¶ÈµÈ ¾ÖÇø®ÄÉÀÌ¼Ç ºÐ¼®
____¿¹Á¦ 1.
____¿¹Á¦ 2.
5Àå. ¾Èµå·ÎÀÌµå ¾Û µ¿Àû ºÐ¼®
__5.1 ¾Èµå·ÎÀ̵å LKMÀ» Ȱ¿ëÇÑ µ¿Àû ºÐ¼®
____5.1.1 ¸ð¹ÙÀÏ ±â±â¿¡ ¸Â´Â Ä¿³Î ´Ù¿î·Îµå
____5.1.2 ÅøÃ¼ÀÎ ´Ù¿î·Îµå
__5.2 Java API HookingÀ» Ȱ¿ëÇÑ µ¿Àû ºÐ¼®
____5.2.1 Cydia Substrate¸¦ ÀÌ¿ëÇÑ ÀÚ¹Ù API ÈÄÅ·
____ÁÖÀԱ⠼³Ä¡
____ÀÚ¹Ù API ÈÄÅ· ¸ðµâ °³¹ß
____ºÐ¼® ¹× ÄÚµù ½ÃÀÛ
____Á÷Á¢ ¸¸µé¾îº¸ÀÚ
____5.2.2 Xposed¸¦ ÀÌ¿ëÇÑ ÀÚ¹Ù API ÈÄÅ·
____°³¹ß ȯ°æ ±¸Ãà
____¸ðµâ ¾÷µ¥ÀÌÆ®
____ÈÄÅ· ¸ðµâ °³¹ß
__5.3 Frida Ȱ¿ëÇÑ µ¿Àû ºÐ¼®
____5.3.1 Frida ¼³Ä¡
____5.3.2 Frida-trace¸¦ ÀÌ¿ëÇÑ ½Ã½ºÅÛÄÝ ÈÄÅ·
____5.3.3 Frida ¸ðµâÀ» ÀÌ¿ëÇÑ ½ºÅ©¸³Æ® ÀÛ¼º
____5.3.4 Frida¸¦ ÀÌ¿ëÇÑ ÀÚ¹Ù ÈÄÅ·
6Àå. ¾Èµå·ÎÀÌµå ¾Û(APK) µð¹ö±ë
__6.1 GDB¸¦ ÀÌ¿ëÇÑ Android Remote Debugging
____6.1.1 ADB¸¦ ÀÌ¿ëÇÑ ¾Èµå·ÎÀÌµå ±â±â Á¢¼Ó
__6.2 IDA Pro¸¦ ÀÌ¿ëÇÑ APK µð¹ö±ë
____6.2.1 ȯ°æ º¯¼ö ¼³Á¤
____6.2.2 ¾Û ¼³Ä¡
____6.2.3 µð¹ö±ë ½ÃÀÛ
____6.2.4 ¹®Á¦ ÇØ°á
__6.3 IDA ÇÁ·Î¸¦ ÀÌ¿ëÇÑ classes.dex & °øÀ¯ ¶óÀ̺귯¸® µð¹ö±ë
____6.3.1 ȯ°æ º¯¼ö µî·ÏÈ®ÀÎ
____6.3.2 Android NDK ¼³Ä¡
____6.3.3 ȯ°æ º¯¼ö µî·Ï
____6.3.4 ÄÄÆÄÀÏ
____6.3.5 custom_rules.xml ¼öÁ¤
____6.3.6 µÎ °³ÀÇ IDA ÀνºÅϽº »ý¼º
__6.4 IDA Pro¸¦ ÀÌ¿ëÇÑ JNI °øÀ¯ ¶óÀ̺귯¸® µð¹ö±ë ¹æ¹ý 1
____6.4.1 ȯ°æ ±¸Ãà
____6.4.2 Linker º¹»ç
____6.4.3 °øÀ¯ ¶óÀ̺귯¸® º¹»ç
____6.4.4 µµ±¸ °³¹ß
____6.4.5 Android.mk ÆÄÀÏ ÀÛ¼º
____6.4.6 Makefile ÀÛ¼º
____6.4.7 ÄÄÆÄÀÏ
____6.4.8 ¾Èµå·ÎÀÌµå ±â±â ÀÛ¾÷
____6.4.9 ADB Æ÷Æ® Æ÷¿öµù
____6.4.10 IDA Pro ¼³Á¤
____6.4.11 ºê·¹ÀÌÅ© Æ÷ÀÎÆ® ¼³Á¤
____6.4.12 µð¹ö±× ¼³Á¤
____6.4.13 ¾Èµå·ÎÀÌµå ±â±â ÀÛ¾÷
____6.4.14 Æ÷Æ® Æ÷¿öµù
__6.5 IDA Pro¸¦ ÀÌ¿ëÇÑ JNI °øÀ¯ ¶óÀ̺귯¸® µð¹ö±ë ¹æ¹ý 2
__6.6 IDA Pro¸¦ ÀÌ¿ëÇÑ JNI °øÀ¯ ¶óÀ̺귯¸® µð¹ö±ë ¹æ¹ý 3
____6.6.1 STEP 1 ´Þºò ·±Å¸ÀÓ ÈÄÅ·
____6.6.2 STEP 2 SDK¿¡ Æ÷ÇÔµÈ ddms ½ÇÇà
____6.6.3 STEP 3 ¾Èµå·ÎÀÌµå ¼¹ö Àü¼Û ¹× ½ÇÇà
____6.6.4 STEP 4 adb forward
____6.6.5 STEP 5 ¾ÖÇø®ÄÉÀÌ¼Ç ¼³Ä¡ ¹× ½ÇÇà
____6.6.6 STEP 6 IDA ½ÇÇà ¹× µð¹ö°Å ¿¬°á
__6.7 ¸¶Ä¡¸ç
-
-
 |
³²´ëÇö [Àú]
|
 |
-
ÇöÀç ½º¸¶Æ®TV º¸¾È Ãë¾àÁ¡ Áø´ÜÀ» Çϰí ÀÖ°í, º¸¾ÈÇÁ·ÎÁ§Æ®¿¡¼ ¸ð¹ÙÀÏ PMÀ¸·Î Ȱµ¿ ÁßÀÌ´Ù. °ø±â¾÷, ÀºÇà, Áõ±Ç, Ä«µå »ç µîÀÇ ¸ðÀÇÇØÅ·, SÀüÀÚ ¹«¼±»ç¾÷ºÎÀÇ ¸ð¹ÙÀÏ Ãë¾àÁ¡ Áø´ÜÀ» ¼öÇàÇß´Ù. ¸ð¹ÙÀÏ º¸¾È, Source Auditing, ÀÓº£µðµå, »ç¹°ÀÎÅͳÝ(IoT) º¸¾È¿¡ °ü½ÉÀÌ ¸¹°í ¿À´Ãµµ Áñ±â°í ÀÖ´Ù.
-
-
Àüü 0°³ÀÇ ±¸¸ÅÈıⰡ ÀÖ½À´Ï´Ù.

 |
ÀÎÅÍÆÄÅ©µµ¼´Â °í°´´ÔÀÇ ´Ü¼ø º¯½É¿¡ ÀÇÇÑ ±³È¯°ú ¹Ýǰ¿¡ µå´Â ºñ¿ëÀº °í°´´ÔÀÌ ÁöºÒÄÉ µË´Ï´Ù.
´Ü, »óǰÀ̳ª ¼ºñ½º ÀÚüÀÇ ÇÏÀÚ·Î ÀÎÇÑ ±³È¯ ¹× ¹ÝǰÀº ¹«·á·Î ¹Ýǰ µË´Ï´Ù. |
|
±³È¯ ¹× ¹ÝǰÀÌ °¡´ÉÇÑ °æ¿ì |
»óǰÀ» °ø±Þ ¹ÞÀº ³¯·ÎºÎÅÍ 7ÀÏÀ̳» °¡´É
°ø±Þ¹ÞÀ¸½Å »óǰÀÇ ³»¿ëÀÌ Ç¥½Ã, ±¤°í ³»¿ë°ú ´Ù¸£°Å³ª ´Ù¸£°Ô ÀÌÇàµÈ °æ¿ì¿¡´Â °ø±Þ¹ÞÀº ³¯·ÎºÎÅÍ 3°³¿ù À̳», ȤÀº ±×»ç½ÇÀ» ¾Ë°Ô µÈ ³¯ ¶Ç´Â ¾Ë ¼ö ÀÖ¾ú´ø ³¯·ÎºÎÅÍ 30ÀÏ À̳»
»óǰ¿¡ ¾Æ¹«·± ÇÏÀÚ°¡ ¾ø´Â °æ¿ì ¼ÒºñÀÚÀÇ °í°´º¯½É¿¡ ÀÇÇÑ ±³È¯Àº »óǰÀÇ Æ÷Àå»óÅ µîÀÌ ÀüÇô ¼Õ»óµÇÁö ¾ÊÀº °æ¿ì¿¡ ÇÑÇÏ¿© °¡´É |
|
±³È¯ ¹× ¹ÝǰÀÌ ºÒ°¡´ÉÇÑ °æ¿ì |
±¸¸ÅÈ®Á¤ ÀÌÈÄ(¿ÀǸ¶ÄÏ»óǰ¿¡ ÇÑÇÔ)
°í°´´ÔÀÇ Ã¥ÀÓ ÀÖ´Â »çÀ¯·Î »óǰ µîÀÌ ¸ê½Ç ¶Ç´Â ÈÑ¼ÕµÈ °æ¿ì
(´Ü, »óǰÀÇ ³»¿ëÀ» È®ÀÎÇϱâ À§ÇÏ¿© Æ÷Àå µîÀ» ÈѼÕÇÑ °æ¿ì´Â Á¦¿Ü)
½Ã°£ÀÌ Áö³²¿¡ µû¶ó ÀçÆÇ¸Å°¡ °ï¶õÇÒ Á¤µµ·Î ¹°Ç°ÀÇ °¡Ä¡°¡ ¶³¾îÁø °æ¿ì
Æ÷Àå °³ºÀµÇ¾î »óǰ °¡Ä¡°¡ ÈÑ¼ÕµÈ °æ¿ì |
|
´Ù¹è¼ÛÁöÀÇ °æ¿ì ¹Ýǰ ȯºÒ |
´Ù¹è¼ÛÁöÀÇ °æ¿ì ´Ù¸¥ Áö¿ªÀÇ ¹ÝǰÀ» µ¿½Ã¿¡ ÁøÇàÇÒ ¼ö ¾ø½À´Ï´Ù.
1°³ Áö¿ªÀÇ ¹ÝǰÀÌ ¿Ï·áµÈ ÈÄ ´Ù¸¥ Áö¿ª ¹ÝǰÀ» ÁøÇàÇÒ ¼ö ÀÖÀ¸¹Ç·Î, ÀÌÁ¡ ¾çÇØÇØ Áֽñ⠹ٶø´Ï´Ù. |
|
Áß°í»óǰÀÇ ±³È¯ |
Áß°í»óǰÀº Á¦ÇÑµÈ Àç°í ³»¿¡¼ ÆÇ¸Å°¡ ÀÌ·ç¾îÁö¹Ç·Î, ±³È¯Àº ºÒ°¡´ÉÇÕ´Ï´Ù. |
|
¿ÀǸ¶ÄÏ »óǰÀÇ È¯ºÒ |
¿ÀǸ¶ÄÏ»óǰ¿¡ ´ëÇÑ Ã¥ÀÓÀº ¿øÄ¢ÀûÀ¸·Î ¾÷ü¿¡°Ô ÀÖÀ¸¹Ç·Î, ±³È¯/¹Ýǰ Á¢¼ö½Ã ¹Ýµå½Ã ÆÇ¸ÅÀÚ¿Í ÇùÀÇ ÈÄ ¹Ýǰ Á¢¼ö¸¦ ÇϼžßÇϸç, ¹ÝǰÁ¢¼ö ¾øÀÌ ¹Ý¼ÛÇϰųª, ¿ìÆíÀ¸·Î º¸³¾ °æ¿ì »óǰ È®ÀÎÀÌ ¾î·Á¿ö ȯºÒÀÌ ºÒ°¡´ÉÇÒ ¼ö ÀÖÀ¸´Ï À¯ÀÇÇϽñ⠹ٶø´Ï´Ù. |
|
|
 |
¹è¼Û¿¹Á¤ÀÏ ¾È³» |
ÀÎÅÍÆÄÅ© µµ¼´Â ¸ðµç »óǰ¿¡ ´ëÇØ ¹è¼Û¿Ï·á¿¹Á¤ÀÏÀ» À¥»çÀÌÆ®¿¡ Ç¥½ÃÇϰí ÀÖ½À´Ï´Ù.
|
<ÀÎÅÍÆÄÅ© Á÷¹è¼Û »óǰ> |
»óǰÀº ¿ù~Åä¿äÀÏ ¿ÀÀü 10½Ã ÀÌÀü ÁÖ¹®ºÐ¿¡ ´ëÇÏ¿© ´çÀÏ Ãâ°í/´çÀÏ ¹è¼Û¿Ï·á¸¦ º¸ÀåÇÏ´Â »óǰÀÔ´Ï´Ù. |
»óǰÀº ¼¿ïÁö¿ª/ÆòÀÏ ÁÖ¹®ºÐÀº ´çÀÏ Ãâ°í/ÀÍÀÏ ¹è¼Û¿Ï·á¸¦ º¸ÀåÇϸç,
¼¿ï¿ÜÁö¿ª/ÆòÀÏ ÁÖ¹®ºÐÀÇ °æ¿ì´Â ¿ÀÈÄ 6½Ã±îÁö ÁÖ¹®ºÐ¿¡ ´ëÇÏ¿© ÀÍÀÏ ¹è¼Û¿Ï·á¸¦ º¸ÀåÇÏ´Â »óǰÀÔ´Ï´Ù.
(´Ü, ¿ù¿äÀÏÀº 12½Ã±îÁö ÁÖ¹®¿¡ ÇÑÇÔ)
|
»óǰÀº, ÀÔ°í¿¹Á¤ÀÏ(Á¦Ç°Ãâ½ÃÀÏ)+Åùè»ç¹è¼ÛÀÏ(1ÀÏ)¿¡ ¹è¼Û¿Ï·á¸¦ º¸ÀåÇÕ´Ï´Ù. |
~
»óǰÀº À¯ÅëÆ¯¼º»ó ÀÎÅÍÆÄÅ©¿¡¼ Àç°í¸¦ º¸À¯ÇÏÁö ¾ÊÀº »óǰÀ¸·Î ÁÖ¹®ÀÏ+±âÁØÃâ°íÀÏ+Åùè»ç¹è¼ÛÀÏ(1ÀÏ)¿¡ ¹è¼Û¿Ï·á¸¦ º¸ÀåÇÕ´Ï´Ù.(Åä/°øÈÞÀÏÀº ¹è¼Û±â°£¿¡ Æ÷ÇÔµÇÁö ¾Ê½À´Ï´Ù.)
¡Ø±âÁØÃâ°íÀÏ:ÀÎÅÍÆÄÅ©°¡ »óǰÀ» ¼ö±ÞÇÏ¿© ¹°·ùâ°í¿¡¼ Æ÷Àå/Ãâ°íÇϱâ±îÁö ¼Ò¿äµÇ´Â ½Ã°£
|
|
<¾÷ü Á÷Á¢¹è¼Û/¿ÀǸ¶ÄÏ »óǰ> |
~
»óǰÀº ¾÷ü°¡ ÁÖ¹®À» È®ÀÎÇϰí, Ãâ°íÇϱâ±îÁö °É¸®´Â ½Ã°£ÀÔ´Ï´Ù. ÁÖ¹®ÀÏ+±âÁØÃâ°íÀÏ+Åùè»ç¹è¼ÛÀÏ(2ÀÏ)¿¡ ¹è¼Û¿Ï·á¸¦ º¸ÀåÇÕ´Ï´Ù.(Åä/°øÈÞÀÏÀº ¹è¼Û±â°£¿¡ Æ÷ÇÔµÇÁö ¾Ê½À´Ï´Ù.)
¡Ø5ÀÏÀ̳» Ãâ°í°¡ ½ÃÀÛµÇÁö ¾ÊÀ»½Ã, ¿ÀǸ¶ÄÏ »óǰÀº ÀÚµ¿À¸·Î ÁÖ¹®ÀÌ Ãë¼ÒµÇ¸ç, °í°´´Ô²² ǰÀýº¸»ó±ÝÀ» Áö±ÞÇØ µå¸³´Ï´Ù.
|
|
|
¹è¼Ûºñ ¾È³» |
µµ¼(Áß°íµµ¼ Æ÷ÇÔ)¸¸ ±¸¸ÅÇϽøé : ¹è¼Ûºñ 2,000¿ø (1¸¸¿øÀÌ»ó ±¸¸Å ½Ã ¹«·á¹è¼Û)
À½¹Ý/DVD¸¸ ±¸¸ÅÇϽøé : ¹è¼Ûºñ 1,500¿ø (2¸¸¿øÀÌ»ó ±¸¸Å ½Ã ¹«·á¹è¼Û)
ÀâÁö/¸¸È/±âÇÁÆ®¸¸ ±¸¸ÅÇϽøé : ¹è¼Ûºñ 2,000¿ø (2¸¸¿øÀÌ»ó ±¸¸Å ½Ã ¹«·á¹è¼Û)
µµ¼¿Í À½¹Ý/DVD¸¦ ÇÔ²² ±¸¸ÅÇϽøé : ¹è¼Ûºñ 1,500¿ø 1¸¸¿øÀÌ»ó ±¸¸Å ½Ã ¹«·á¹è¼Û)
µµ¼¿Í ÀâÁö/¸¸È/±âÇÁÆ®/Áß°íÁ÷¹è¼Û»óǰÀ» ÇÔ²² ±¸¸ÅÇϽøé : 2,000¿ø (1¸¸¿øÀÌ»ó ±¸¸Å ½Ã ¹«·á¹è¼Û)
¾÷üÁ÷Á¢¹è¼Û»óǰÀ» ±¸¸Å½Ã : ¾÷üº°·Î »óÀÌÇÑ ¹è¼Ûºñ Àû¿ë
* ¼¼Æ®»óǰÀÇ °æ¿ì ºÎºÐÃë¼Ò ½Ã Ãß°¡ ¹è¼Ûºñ°¡ ºÎ°úµÉ ¼ö ÀÖ½À´Ï´Ù.
* ºÏīƮ¿¡¼ ¹è¼Ûºñ¾ø¾Ö±â ¹öưÀ» Ŭ¸¯Çϼż, µ¿ÀϾ÷ü»óǰÀ» Á¶±Ý ´õ ±¸¸ÅÇϽøé, ¹è¼Ûºñ¸¦ Àý¾àÇÏ½Ç ¼ö ÀÖ½À´Ï´Ù.
|
|
ÇØ¿Ü¹è¼Û ¾È³» |
ÀÎÅÍÆÄÅ©µµ¼¿¡¼´Â ±¹³»¿¡¼ ÁÖ¹®ÇϽðųª ÇØ¿Ü¿¡¼ ÁÖ¹®ÇÏ¿© ÇØ¿Ü·Î ¹è¼ÛÀ» ¿øÇÏ½Ç °æ¿ì DHL°ú Ư¾àÀ¸·Î Ã¥Á¤µÈ ¿ä±ÝÇ¥¿¡
ÀÇÇØ °³ÀÎÀÌ ÀÌ¿ëÇÏ´Â °æ¿ìº¸´Ù ¹è¼Û¿ä±ÝÀ» Å©°Ô ³·Ã߸ç DHL(www.dhl.co.kr)·Î ÇØ¿Ü¹è¼Û ¼ºñ½º¸¦ Á¦°øÇÕ´Ï´Ù.
ÇØ¿Ü¹è¼ÛÀº µµ¼/CD/DVD »óǰ¿¡ ÇÑÇØ ¼ºñ½ºÇϰí ÀÖÀ¸¸ç, ´Ù¸¥ »óǰÀ» ºÏīƮ¿¡ ÇÔ²² ´ãÀ¸½Ç °æ¿ì ÇØ¿Ü¹è¼ÛÀÌ ºÒ°¡ÇÕ´Ï´Ù.
ÇØ¿ÜÁÖ¹®¹è¼Û ¼ºñ½º´Â ÀÎÅÍÆÄÅ© µµ¼ ȸ¿ø °¡ÀÔÀ» Çϼž߸¸ ½Åû °¡´ÉÇÕ´Ï´Ù. |
|
¾Ë¾ÆµÎ¼¼¿ä!!! |
µµ¸Å»ó ¹× Á¦ÀÛ»ç »çÁ¤¿¡ µû¶ó ǰÀý/ÀýÆÇ µîÀÇ »çÀ¯·Î Ãë¼ÒµÉ ¼ö ÀÖ½À´Ï´Ù.
¿ÀǸ¶ÄϾ÷üÀÇ ¹è¼ÛÁö¿¬½Ã ÁÖ¹®ÀÌ ÀÚµ¿À¸·Î Ãë¼ÒµÉ ¼ö ÀÖ½À´Ï´Ù.
Ãâ°í°¡´É ½Ã°£ÀÌ ¼·Î ´Ù¸¥ »óǰÀ» ÇÔ²² ÁÖ¹®ÇÒ °æ¿ì Ãâ°í°¡´É ½Ã°£ÀÌ °¡Àå ±ä ±âÁØÀ¸·Î ¹è¼ÛµË´Ï´Ù.
À¯ÅëÀÇ Æ¯¼º»ó Ãâ°í±â°£Àº ¿¹Á¤º¸´Ù ¾Õ´ç°ÜÁö°Å³ª ´ÊÃçÁú ¼ö ÀÖ½À´Ï´Ù.
Åùè»ç ¹è¼ÛÀÏÀÎ ¼¿ï ¹× ¼öµµ±ÇÀº 1~2ÀÏ, Áö¹æÀº 2~3ÀÏ, µµ¼, »ê°£, ±ººÎ´ë´Â 3ÀÏ ÀÌ»óÀÇ ½Ã°£ÀÌ ¼Ò¿äµË´Ï´Ù. |
|
 |
|
|