»Ë»Ñ Æ÷·³

P11 ±Û·Î¹ú·Ò 5¿ù ÀÌÈÄ ¾÷µ¥ÀÌÆ® ¹æ¹ý »ó¼¼ »ðÁú ³»¿ë37

  • °«ÆÄ´õ
  • µî·ÏÀÏ 2021-11-03 10:43
  • Á¶È¸¼ö 20318

¾÷µ¥ÀÌÆ® ¹æ¹ýÀ» ÀûÀº °Ô½Ã±ÛÀÌ ¿ë·® ÃÊ°ú¶ó¼­ ¾Æ·¡ ºÎºÐÀº º°µµ °Ô½Ã±Û·Î ÀÛ¼ºÇÕ´Ï´Ù.

 

--------------------------------------------------------------------------------------------------

 

¿©±â¼­ºÎÅʹ Ȥ½Ã³ª ÇØ´ç °ªÀ» ãÀº °úÁ¤¿¡ °ü½É ÀÖÀ» ºÐµéÀ» À§ÇÑ ³»¿ëÀÔ´Ï´Ù. ¾÷µ¥ÀÌÆ®¸¸ ÇÏ½Ç °Å¸é ¾È º¸¼Åµµ µÅ¿ä!

 

¸ÕÀú ¹«ÇѺÎÆÃÀÌ °É·ÈÀ» ¶§ÀÇ logcat Áß ´«¿¡ ¶è ºÎºÐÀÌ ÀÖ¾ú½À´Ï´Ù.

 

10-31 22:03:45.774  1034  1034 I bootstat: Canonical boot reason: shutdown,region_error


region_error¿¡ ÀÇÇØ shutdownÀÌ µÇ¾ú´Ù°í Çؼ®ÇÒ ¼ö ÀÖ´Â »óȲÀ̾ú½À´Ï´Ù.

Ȥ½Ã³ª Çؼ­ region_error¸¦ bootstat ½ÇÇàÆÄÀÏÀÌ ±¸±Û ¼Ò½º¿¡µµ °¡Áö°í ÀÖ³ª È®ÀÎÀ» Çغ¸¾Ò´Âµ¥ ¾ø¾ú±â ¶§¹®¿¡ ·¹³ë¹ö°¡ ³ÖÀº°Ô ¸Â±¸³ª È®½ÅÀ» Çß¾ú³×¿ä.

±×·¡¼­ region °ü·ÃÇؼ­ Ȥ½Ã ´Ù¸¥ ·Î±×°¡ ÀÖ³ª ½Í¾î¼­ »ìÆ캻 °á°ú

 

10-31 22:03:20.791   836   836 I NvProxy-TAG-JNI: android_native_read_FactoryNV tmp[0] = 26 ,&

10-31 22:03:20.791   836   836 I NvProxy-TAG-JNI: android_native_read_FactoryNV tmp[1] = ca ,ʍ

10-31 22:03:20.791   836   836 I NvProxy-TAG-JNI: android_native_read_FactoryNV tmp[2] = 1a ,

10-31 22:03:20.791   836   836 I NvProxy-TAG-JNI: android_native_read_FactoryNV tmp[3] = 01 ,

10-31 22:03:20.791   836   836 I NvProxy-TAG-JNI: android_native_read_FactoryNV tmp[4] = 00 ,

10-31 22:03:20.791   836   836 I NvProxy-TAG-JNI: android_native_read_FactoryNV tmp[5] = 00 ,

10-31 22:03:20.791   836   836 I NvProxy-TAG-JNI: android_native_read_FactoryNV tmp[6] = 00 ,

10-31 22:03:20.792  1503  1513 D CheckRegion: nv flag: 

10-31 22:03:20.792  1503  1513 E CheckRegion: checkRegion: region not match.

 

À§¿Í °°ÀÌ ÀϺΠ´«¿¡ ¶ç´Â ·Î±×°¡ ÀÖ¾ú½À´Ï´Ù. ƯÈ÷ region not match°¡ ´«¿¡ È® µé¾î¿Ô½À´Ï´Ù.

Çؼ­ 0923 QFIL¿ë ·ÒÆÄÀÏÀÇ super_2.img ÆÄÀÏ¿¡¼­ system ÆÄƼ¼ÇÀ» ÃßÃâÇÏ¿© ÇØ´ç ·Î±×¸¦ ¹ß»ý½ÃÅ°´Â ÆÄÀÏÀ» ã¾Æ³Â°í, ±×°Ô libcheckregion.so¿´½À´Ï´Ù.

(ÀÌ ÆÄÀÏÀº 5¿ù ±Û·Î¹ú·Ò¿¡ ¾ø°í ºÎÆà logcat¿¡µµ ÇØ´çÇÏ´Â ·Î±×°¡ ¹ß»ýÇÏÁö ¾Ê¾Ò½À´Ï´Ù.)

À§ ¶óÀ̺귯¸®°¡ ÇÏ´Â ¿ªÇÒÀ» ¾Ë¾Æº¸±â À§ÇØ ÇØ´ç ÆÄÀÏÀ» µðÄÄÆÄÀÏÀ» Çغ¸´Ï ´ÙÀ½°ú °°Àº ºÎºÐÀÌ º¸¿´½À´Ï´Ù. (Ghidra µðÄÄÆÄÀÏ·¯ »ç¿ë)

 

 

ÀÌÂÊÀº ro.boot.target.region property °ª¿¡ µû¶ó RegionÀ» È®ÀÎÇÏ´Â ºÎºÐÀ̾ú½À´Ï´Ù.

Äڵ尡 º¸´Â °ªÀº unknown(75 6E 6B 6E 6F 77 6E), PRC(50 52 43), ROW(52 4F 57), RESET(52 45 53 45 54) µîÀ̾ú½À´Ï´Ù.

¿©±â¼­ ƯÈ÷, PRC¸é bVar8¿¡ 1ÀÇ °ªÀ», ROW¸é 2ÀÇ °ªÀ» ³Ö´Â ºÎºÐ¿¡ ÁýÁßÇÏ¿´½À´Ï´Ù.

¿Ö³ÄÇϸé 5¿ù ±Û·Î¹ú ·Ò¿¡¼­ adb¸¦ ÅëÇØ getpropÀ» ¼öÇàÇغôõ´Ï

 

[ro.boot.name]: [LenovoTB-J606F_PRC]

[ro.boot.target.region]: [ROW]

 

À§¿Í °°ÀÌ PRC¿Í ROW°¡ °øÁ¸ÇÏ´Â °É ºÃ¾ú±â ¶§¹®ÀÔ´Ï´Ù. °Ë»öÇغ¸´Ï PRC°¡ Áß±¹, ROW°¡ Áß±¹ ¿Ü ±¹°¡¸¦ ÀǹÌÇÏ´õ±º¿ä.


 

±×¸®°í ÃÖÁ¾ÀûÀ¸·Î local_2ec¿Í local_250 °ªÀ» ºñ±³ÇÏ¿© ´Ù¸£¸é region not match¸¦ ·Î±×·Î Ãâ·ÂÇÏ´Â °ÍÀ» º¼ ¼ö ÀÖ½À´Ï´Ù.

À̶§ local_2ec¿¡ ÀúÀåµÈ °ªÀº PRCÀÏ °æ¿ì 1, ROWÀÏ °æ¿ì 2ÀÎ »óȲÀ̾ú°í local_250°ªÀº vendor.lenovo.hardware.factory@1.0.so¿¡¼­ °¡Á®¿À´Â ½ÄÀ̾ú½À´Ï´Ù.

±×¸®°í vendor.lenovo.hardware.factory@1.0.so ¶óÀ̺귯¸®¸¦ º¸ÀÚ¸¶ÀÚ µü »ý°¢ÀÌ ³­°Ô À§ÀÇ

 

10-31 22:03:20.791   836   836 I NvProxy-TAG-JNI: android_native_read_FactoryNV tmp[0] = 26 ,&

10-31 22:03:20.791   836   836 I NvProxy-TAG-JNI: android_native_read_FactoryNV tmp[1] = ca ,ʍ

10-31 22:03:20.791   836   836 I NvProxy-TAG-JNI: android_native_read_FactoryNV tmp[2] = 1a ,

10-31 22:03:20.791   836   836 I NvProxy-TAG-JNI: android_native_read_FactoryNV tmp[3] = 01 ,

10-31 22:03:20.791   836   836 I NvProxy-TAG-JNI: android_native_read_FactoryNV tmp[4] = 00 ,

10-31 22:03:20.791   836   836 I NvProxy-TAG-JNI: android_native_read_FactoryNV tmp[5] = 00 ,

10-31 22:03:20.791   836   836 I NvProxy-TAG-JNI: android_native_read_FactoryNV tmp[6] = 00 ,

 

ÀÌ ·Î±×¿´½À´Ï´Ù. ¾Æ¸¶ QCNÀ» ÀÐ°Ô ÇØÁÖ´Â ¶óÀ̺귯¸®ÀÏ °Å¶ó ¿¹»óÀÌ µÇ´Â ºÎºÐÀ̾ú½À´Ï´Ù.

È®½ÅÀ» °¡Áö±â À§ÇØ checkRegion ÇÔ¼ö¸¦ system ÆÄƼ¼Ç¿¡¼­ °Ë»öÀ» Çغ¸´Ï libbootanimation.so°¡ ÇØ´ç ÇÔ¼ö¸¦ ½ÇÇàÇÏ´Â °É È®ÀÎÇÒ ¼ö ÀÖ¾ú½À´Ï´Ù.

 

 

º¸½Ã´Ù½ÃÇÇ service.bootanim.exit°¡ 0ÀÌ ¾Æ´Ï¸é, Áï ºÎÆ®¾Ö´Ï¸ÞÀ̼ÇÀÌ ³¡³ª¸é Region Check ÄÚµå ¿µ¿ªÀ¸·Î µé¾î¿À´Â °ÍÀ» º¼ ¼ö ÀÖ¾ú½À´Ï´Ù.

checkRegion¿¡ ½ÇÆÐÇÏ°í Region Error ±×¸²ÆÄÀÏÀ» ¾ÆÁ÷ º¸¿©ÁÖÁö ¾Ê°í ÀÖ´Ù¸é º¸¿©ÁÖ°í 10ÃÊ(10000000us) µÚ¿¡ rebootÀ» ³¯¸®´Â °É º¼ ¼ö Àֳ׿ä.

 

¿©±â±îÁö »ìÆ캻 ÀÌÈÄ¿¡ óÀ½¿¡´Â À§ ·Î±×ÀÇ 26 ca 1a 01 °ªÀÌ ¾îµò°¡¿¡ ÀúÀåµÇ¾î ÀÖÀ» °Å¶ó ¿¹»óÇؼ­ º°ÁþÀ» ´Ù Çغó׿ä.

QFIL·Î ¸ðµç ÆÄƼ¼ÇÀ» ´Ù ReadÇؼ­ È®ÀÎÇغ¸±âµµ ÇÏ°í, ¹é¾÷ÇÑ QCNÀ» ¿­½ÉÈ÷ Åо±âµµ Çߴµ¥ °¨À» ¸ø Àâ¾Ò¾ú½À´Ï´Ù.

±×·¯´Ù°¡ Áß±¹ ±¹°¡ÄÚµå·Î ÀúÀåÇÑ QCN°ú Çѱ¹ ±¹°¡ÄÚµå·Î º¯°æ ÈÄ ÀúÀåÇÑ QCNÀ» ºñ±³Çغôµ¥ ¿©±â¼­

 

 

ÀÌ°É ¹ß°ßÇÏ°í ¸Ó¸®¸¦ Ź ÃƳ׿ä. ¹Ù·Î CNXX(43 4E 58 58)¿Í KRXX(4B 52 58 58)À̾ú½À´Ï´Ù.

±¹°¡ÄÚµå º¯°æÇÒ ¶§ Àǹ®ÀÇ X X¼³Á¤µµ À§ÀÇ NV item¿¡ ÀúÀåµÇ´Â °ªÀ̾ú´ø °Å¿´½À´Ï´Ù. ([ro.boot.countrycode]: [CNXX])

½ÉÁö¾î Á¦°¡ °¡¸° ºÎºÐÀº ÅÂºí¸´ÀÇ ½Ã¸®¾ó ³Ñ¹ö¿Í lenovo psn(??)À» Æ÷ÇÔÇÏ°í ÀÖ¾ú½À´Ï´Ù.

ÀÌ ½ÃÁ¡¿¡¼­ »ç½Ç À̸§ ¶§¹®¿¡ ÀǽÉÇÏ°í ÀÖ¾ú´ø

 

 

ÀÌ NV item¿¡ ´ëÇÑ È®½ÅÀ» ÇÏ°Ô µË´Ï´Ù. À§ ±¹°¡ÄÚµåÀÇ °æ¿ì FACTORY_DATA, ÀǽÉÇÏ´ø itemÀº OEM_ITEMÀ̴ϱî¿ä.

±×¸®°í ´Ù½Ã À§ ·Î±×¸¦ º¸´Â ¼ø°£ ¶Ç ±ú´ÞÀº ºÎºÐÀÌ ÀÖ½À´Ï´Ù.

 

10-31 22:03:20.791   836   836 I NvProxy-TAG-JNI: android_native_read_FactoryNV tmp[0] = 26 ,&

10-31 22:03:20.791   836   836 I NvProxy-TAG-JNI: android_native_read_FactoryNV tmp[1] = ca ,ʍ

10-31 22:03:20.791   836   836 I NvProxy-TAG-JNI: android_native_read_FactoryNV tmp[2] = 1a ,

10-31 22:03:20.791   836   836 I NvProxy-TAG-JNI: android_native_read_FactoryNV tmp[3] = 01 ,

10-31 22:03:20.791   836   836 I NvProxy-TAG-JNI: android_native_read_FactoryNV tmp[4] = 00 ,

10-31 22:03:20.791   836   836 I NvProxy-TAG-JNI: android_native_read_FactoryNV tmp[5] = 00 ,

10-31 22:03:20.791   836   836 I NvProxy-TAG-JNI: android_native_read_FactoryNV tmp[6] = 00 ,

 

6858 = 0x1ACA À̾ú±â ¶§¹®ÀÔ´Ï´Ù. 0x26Àº ã¾Æº¸´Ï NV item Read ¸í·É¿¡ ÇØ´çÇÏ´Â ºÎºÐÀ̾ú½À´Ï´Ù.

µû¶ó¼­ À§ ·Î±×´Â '1ACA ¹øÁöÀÇ °ªÀ» Read(0x26)Çß´õ´Ï °ªÀÌ 1ÀÌ¿¡¿ä' ¶ó°í ¾Ë·ÁÁØ °Å¿´ÁÒ.

À̸¦ ¹ÙÅÁÀ¸·Î QFILÀ» ÅëÇØ QCNÀ» ¹é¾÷ÇÏ°í ÇØ´ç °ªÀ» 1¿¡¼­ 2·Î ¼öÁ¤ÇÑ µÚ º¹¿øÀ» ÇÏ¿´°í ±× °á°ú´Â ¼º°øÀ̾ú½À´Ï´Ù.

»ç½Ç ±¹°¡ÄÚµå º¯°æ ¸Þ´º°¡ º°µµ·Î ¾ø¾ú´Ù¸é Àú 2497 ÁÖ¼ÒÀÇ ±¹°¡Äڵ嵵 ¾Æ¸¶ Á÷Á¢ ¼öÁ¤ÇØÁá¾î¾ß ÇÏÁö ¾Ê¾ÒÀ»±î ½Í³×¿ä.

 

¸¶Áö¸·À¸·Î ####6030#ÀÌ Á¤¸»·Î ÇØ´ç NV itemÀ» ¹Ù²Ù´Â°Ô ¸Â´ÂÁö È®ÀÎÀ» Çϱâ À§ÇØ system ÆÄƼ¼ÇÀ» ¶Ç µÚÁ®º» °á°ú

(JADX·Î ¿­¾îº» system/app/EngineeringCode/EngineerCode.apk)

 

 

À§¿Í °°ÀÌ setCountryCode°¡ ¼öÇàµÉ ¶§ ¿ª½Ã³ª ·¹³ë¹ö ¶óÀ̺귯¸®¸¦ °ÅÄ¡´Â °É È®ÀÎÇÒ ¼ö ÀÖ¾ú½À´Ï´Ù.

±×¸®°í À§ÀÇ ÇÔ¼ö°¡ writeCountryCode ÇÔ¼ö¿¡ ÀÇÇØ ºÒ¸° ÈÄ ¾Æ·¡¿Í °°ÀÌ °­Á¦ °øÀåÃʱâÈ­ ¸í·ÉÀ» ³¯¸°´Ù´Â °É ÅëÇØ È®½ÅÀ» ¾ò¾ú³×¿ä.

 

 

´ýÀ¸·Î ANDROID 10 ¹Ú½º ¹öÀü P11ÀÌ ¹®Á¦ ¾øÀÌ ¾÷µ¥ÀÌÆ®°¡ °¡´ÉÇÏ´Ù°í »ý°¢µÇ´Â »ó¼¼ÀÌÀ¯¸¦ º¸¸é ´ÙÀ½°ú °°½À´Ï´Ù.

 

 

óÀ½¿¡ NV°ªÀÌ -0x67ÀÎÁö¸¦ º¸´Âµ¥ unsigned·Î´Â 0x99¿¡ ÇØ´çÇÕ´Ï´Ù. ÀÌ°Ô RESET °ªÀÎ °Í °°³×¿ä.

´ÙÀ½À¸·Î 0x00ÀÌ¸é ¿ª½Ã ¸¶Áö¸· ÄÚµå·Î ÁøÇàÀÌ µÇ°Ú³×¿ä.

µû¶ó¼­ NV¿¡ 0x00°ªÀ̳ª 0x99°ªÀÌ µé¾îÀÖÀ¸¸é ¸¶Áö¸·ÀÇ ·Î±×ó·³ °ªÀ» ÇöÀç ·Ò¿¡ ¸ÂÃç¼­ ¾²Áö ¾ÊÀ»±î ½Í½À´Ï´Ù.

-> 0520 ±Û·Î¹ú·Ò¿¡¼­ °ªÀ» 0x99À̳ª 0x00À¸·Î ¾²°í 0805 ±Û·Î¹ú·ÒÀ¸·Î QFIL µ¹·È´õ´Ï Àú °ªÀÌ 0x2·Î ¹Ù²ï °É È®ÀÎÇß½À´Ï´Ù. °¡¼³ÀÌ ¸Â¾Ò³×¿ä!

    0x00µµ µÇ±ä ÇÏ´Ï±î ¾÷üµéÀº NV item ÀÌ°ÍÀú°Í ¹Ð¾îº¸´Ù°¡ ¹ß°ßÇÑ °Í °°±âµµ Çϳ׿ä. ±×·¯´Ù ºíÅõ ÁÖ¼Ò³ª ½Ã¸®¾ó ³¯·Á¸Ô´Â ±×·± ½Ã³ª¸®¿À°¡ ³ª¿À³×¿ä.

 

    11-03 11:47:52.058  1531  1556 D CheckRegion: nv flag: 0x99

    11-03 11:47:53.309  1531  1556 D CheckRegion: nvRegion is empty or reset, set nv to ROW, result: 1

 

°¨»çÇÕ´Ï´Ù!

44
ÃßõÇϱ⠴ٸ¥ÀÇ°ß 0
ºÏ¸¶Å©¹öÆ° °øÀ¯¹öÆ°

´Ù¸¥ÀÇ°ß 0 Ãßõ 0 oriflamme
2021-11-03 Á¡¾ÆÀÌÄÜ
  1. ´ñ±ÛÁÖ¼Òº¹»ç

´Ù¸¥ÀÇ°ß 0 Ãßõ 0 ¿ªº´ÀǹÎÃÊ
2021-11-03 Á¡¾ÆÀÌÄÜ
  1. ´ñ±ÛÁÖ¼Òº¹»ç

´Ù¸¥ÀÇ°ß 0 Ãßõ 0 ¿ªº´ÀǹÎÃÊ
2021-11-03 Á¡¾ÆÀÌÄÜ
  1. ´ñ±ÛÁÖ¼Òº¹»ç

´Ù¸¥ÀÇ°ß 0 Ãßõ 0 ÀÏ´çõÀÌ¿ä
2021-11-03 Á¡¾ÆÀÌÄÜ
  1. ´ñ±ÛÁÖ¼Òº¹»ç

´Ù¸¥ÀÇ°ß 0 Ãßõ 0 Dr@ke
2021-11-03 Á¡¾ÆÀÌÄÜ
  1. ´ñ±ÛÁÖ¼Òº¹»ç

´Ù¸¥ÀÇ°ß 0 Ãßõ 0 ¹Ù¶÷µ¹ÀÌ~
2021-11-03 Á¡¾ÆÀÌÄÜ
  1. ´ñ±ÛÁÖ¼Òº¹»ç

´Ù¸¥ÀÇ°ß 0 Ãßõ 1 ±èÇØ¿ì°ø
2021-11-03 Á¡¾ÆÀÌÄÜ
  1. ´ñ±ÛÁÖ¼Òº¹»ç

´Ù¸¥ÀÇ°ß 0 Ãßõ 0 È­´Ï75
2021-11-03 Á¡¾ÆÀÌÄÜ
  1. ´ñ±ÛÁÖ¼Òº¹»ç

´Ù¸¥ÀÇ°ß 0 Ãßõ 0 ±Û·£½º¾î
2021-11-03 Á¡¾ÆÀÌÄÜ
  1. ´ñ±ÛÁÖ¼Òº¹»ç

´Ù¸¥ÀÇ°ß 0 Ãßõ 0 liiiliiiiliil
2021-11-03 Á¡¾ÆÀÌÄÜ
  1. ´ñ±ÛÁÖ¼Òº¹»ç

´Ù¸¥ÀÇ°ß 0 Ãßõ 0 doob+
2021-11-03 Á¡¾ÆÀÌÄÜ
  1. ´ñ±ÛÁÖ¼Òº¹»ç
1 2 3 4
  • ¾Ë¸² ¿å¼³, »óó ÁÙ ¼ö ÀÖ´Â ¾ÇÇÃÀº »ï°¡ÁÖ¼¼¿ä.
©¹æ »çÁø  
¡â ÀÌÀü±Û¡ä ´ÙÀ½±Û -¸ñ·Ïº¸±â