APK கோப்பின் உள்ளமைப்பை பகுப்பாய்வு செய்தல்
Android பயன்பாட்டு தொகுப்பு (APK) கோப்பை உங்கள் சாதனத்தில் நிறுவுவதற்கு முன்பு, அதன் உள்ளடக்கங்களையும் மெட்டாடேட்டாவையும் துல்லியமாக ஆய்வு செய்வது பாதுகாப்பிற்கு மிக அவசியமாகும். "APK தகவல் பார்வையாளர்" என்பது பயனர்கள் தங்களின் இணைய உலாவியிலேயே முழுமையாகச் செயல்படக்கூடிய ஒரு இலவச ஆன்லைன் கருவியாகும். இக்கருவி APK கோப்பில் உள்ள தொகுப்பு பெயர், பதிப்பு, தேவையான Android பதிப்புகள், கோரப்படும் அனுமதிகள், பின்னணி மற்றும் திரை கூறுகள், ஆதரிக்கப்படும் செயலி வகைகள், கையொப்பச் சான்றிதழ்கள் மற்றும் கோப்பு ஹேஷ்கள் போன்ற முக்கிய தொழில்நுட்ப விவரங்களை பிரித்தெடுத்துக் காட்டுகிறது.
பயன்பாட்டை இயக்காமலோ அல்லது நிறுவலோ செய்யாமல், அதன் உண்மைத்தன்மையை சரிபார்க்கவும், டெவலப்பரின் அதிகாரப்பூர்வ வெளியீடுகளுடன் ஒப்பிட்டுப் பார்க்கவும் உதவும் ஒரு நிலையான பகுப்பாய்வு (Static Analysis) கருவியாக இது செயல்படுகிறது.
உள்ளீட்டு விதிகள் மற்றும் கட்டுப்பாடுகள்
இக்கருவியைப் பயன்படுத்துவதற்கு பின்வரும் உள்ளீட்டு விதிகளைப் பின்பற்ற வேண்டும்:
- ஒற்றை APK கோப்பு:
.apkவடிவத்தில் உள்ள கோப்புகள் மட்டுமே ஏற்கப்படும். - அளவு வரம்பு: 500 MB வரையிலான கோப்புகள் மட்டுமே அனுமதிக்கப்படும்.
- எண்ணிக்கை வரம்பு: ஒரு நேரத்தில் ஒரு கோப்பு மட்டுமே ஆய்வு செய்யப்பட வேண்டும். பயனர் ஒரே நேரத்தில் பல கோப்புகளைப் பதிவேற்ற முயன்றால், முதல் கோப்பு மட்டுமே செயலாக்கப்படும், மேலும்
"ஒரு நேரத்தில் ஒரு கோப்பு மட்டுமே — முதலாவது ஆய்வு செய்யப்படுகிறது."என்ற குறிப்பு காட்டப்படும்.
கோப்பு அளவு 500 MB-ஐத் தாண்டினால், "இந்தக் கோப்பு 500 MB-ஐ விட அதிகம் — உலாவித் தாவலால் பாதுகாப்பாக ஆய்வு செய்ய முடியாத அளவுக்குப் பெரியது." என்ற பிழைச் செய்தி தோன்றும்.
இடைமுகத்தின் நிலைகள் மற்றும் செயல்பாட்டு குறிகாட்டிகள்
பயன்பாட்டின் போது பயனர் காணும் நிலைகள் மற்றும் செயல்பாட்டு குறிகாட்டிகள் பின்வருமாறு வரிசைப்படுத்தப்பட்டுள்ளன:
- கோப்பை இழுத்து விடுவதற்கு முன்பு:
தயார். ஆய்வு செய்ய ஒரு APK-ஐ இழுத்து விடவும். - கோப்பைப் படிக்கும்போது:
‹name› படிக்கப்படுகிறது… - கிரிப்டோகிராஃபிக் ஹேஷ்களைக் கணக்கிடும்போது:
கோப்பு ஹேஷ்கள் கணக்கிடப்படுகின்றன — ‹percent›% - தொகுப்பை அலசும்போது:
தொகுப்பு அலசப்படுகிறது… - அறிக்கை தயாரானதும்:
அறிக்கை தயார். - தரவுகள் அழிக்கப்பட்ட பின்:
அழிக்கப்பட்டது. - அறிக்கை பதிவிறக்கப்பட்ட பின்:
அறிக்கை பதிவிறக்கப்பட்டது.
கோப்பு இழுத்து விடும் பகுதியில் இங்கே ஒரு APK ஐ விடவும் அல்லது தேர்வு செய்ய சொடுக்கவும் மற்றும் ஒரு.apk கோப்பு, 500 MB வரை ஆகிய லேபிள்கள் காட்டப்படும்.
APK கோப்பின் கட்டமைப்பு மற்றும் தொழில்நுட்ப விவரங்கள்
ஒரு APK கோப்பு என்பது அடிப்படையில் ஒரு சுருக்கப்பட்ட கோப்பு வடிவமாகும். இதன் உள்ளே AndroidManifest.xml, DEX கோப்புகள், அசெட்டுகள் மற்றும் வளங்கள் (Resources) அடங்கியுள்ளன. இக்கருவி இவற்றை அலசி பின்வரும் பிரிவுகளாகத் தகவல்களைத் தருகிறது:
தேவைகள் (secRequirements)
பயன்பாட்டின் இணக்கத்தன்மை மற்றும் பாதுகாப்பு நடத்தைகளைத் தீர்மானிக்கும் SDK பதிப்புகள் இப்பிரிவில் காட்டப்படும்:
- குறைந்தபட்ச Android (
lMinSdk): இதுAndroid ‹version› (API ‹level›)அல்லதுAPI ‹level›எனத் தோன்றும். - இலக்கு Android (
lTargetSdk): இதுAndroid ‹version› (API ‹level›)அல்லதுAPI ‹level›எனத் தோன்றும். - அதிகபட்ச SDK: பொருந்தும் இடங்களில்
lMaxSdk(அதிகபட்ச SDK ‹n›) எனக் காட்டப்படும்.
அனுமதிகள் (secPermissions)
பயன்பாடு கோரும் அனுமதிகளின் பட்டியல் காட்டப்படும். Android அமைப்பால் தனிப்பட்ட தரவுகளை அணுகும் அனுமதி என வகைப்படுத்தப்பட்ட அனுமதிகளுக்கு அருகில் lDangerous (ஆபத்தானது) என்ற பேட்ஜ் முன்னுரிமை அடிப்படையில் பட்டியலின் மேலே காட்டப்படும்.
கூறுகள் (secComponents)
பயன்பாட்டின் செயல்பாட்டுக் கூறுகள் அதிகபட்சமாக ஒரு வகைக்கு 100 உள்ளீடுகள் வரை காட்டப்படும். அதற்கு மேற்பட்ட கூறுகள் இருந்தால் lMore (+‹count› மேலும்) என்ற லேபிள் சேர்க்கப்படும்.
- Activity-கள் (
groupActivities): பொருந்தும் இடங்களில்lExported(ஏற்றுமதி செய்யப்பட்டது) லேபிளுடன் காட்டப்படும். - Service-கள் (
groupServices): பொருந்தும் இடங்களில்lExported(ஏற்றுமதி செய்யப்பட்டது) லேபிளுடன் காட்டப்படும். - Receiver-கள் (
groupReceivers): பொருந்தும் இடங்களில்lExported(ஏற்றுமதி செய்யப்பட்டது) லேபிளுடன் காட்டப்படும். - Provider-கள் (
groupProviders): பொருந்தும் இடங்களில்lExported(ஏற்றுமதி செய்யப்பட்டது) லேபிள், வழங்குநர் அதிகாரம் அல்லதுnone(எதுவுமில்லை) உடன் காட்டப்படும்.
நேட்டிவ் கோடு (secNative)
பயன்பாடு ஆதரிக்கும் செயலி கட்டமைப்புகள் (ABIs) மற்றும் நேட்டிவ் லைப்ரரி எண்ணிக்கைகள் காட்டப்படும்.
வளங்கள் (secResources)
பயன்பாட்டின் கோப்பு விவரங்கள் பின்வருமாறு பட்டியலிடப்படும்:
lDensities(திரை அடர்த்திகள்)lResFiles(வளக் கோப்புகள்)lAssets(அசெட் கோப்புகள்)lDexFiles(கோடு கோப்புகள் (.dex))lEntries(தொகுப்பில் உள்ள கோப்புகள்)
குறியீட்டு கையொப்பங்கள் மற்றும் கோப்பு ஹேஷ்கள்
Android பாதுகாப்பு மாதிரியில் குறியீட்டு கையொப்பங்கள் முக்கியப் பங்கு வகிக்கின்றன. இக்கருவி v1 PKCS#7 தொகுதிகள் மற்றும் APK கையொப்பத் தொகுதிகளிலிருந்து (v2, v3, v3.1) X.509 சான்றிதழ்களைப் பிரித்தெடுத்துக் காட்டுகிறது.
கையொப்பங்கள் பிரிவு (Signatures)
ஒவ்வொரு கையொப்பமிட்டவருக்கும் பின்வரும் விவரங்கள் காட்டப்படும்:
கையொப்பமிட்டவர் ‹n›பொருள்வழங்கியவர்வரிசை எண்செல்லுபடியாகும் காலம் முதல்செல்லுபடியாகும் காலம் வரைகையொப்ப அல்காரிதம்விசை அல்காரிதம்- MD5, SHA-1, மற்றும் SHA-256 கைரேகைகள்.
கையொப்பத் தொகுதி எதுவும் கண்டறியப்படவில்லை எனில், அடையாளம் காணப்பட்ட கையொப்பத் தொகுதி எதுவும் இல்லை — இந்தத் தொகுப்பு கையொப்பமிடப்படாமல் இருக்கலாம் அல்லது மீண்டும் தொகுக்கப்பட்டிருக்கலாம். என்ற செய்தி காட்டப்படும். இக்கருவி சான்றிதழின் மெட்டாடேட்டாவை மட்டுமே பிரித்தெடுக்கிறது; கையொப்பங்களின் கிரிப்டோகிராஃபிக் ஒருமைப்பாட்டையோ, சான்றிதழ் நம்பகத்தன்மை சங்கிலியையோ அல்லது டெவலப்பரின் நிஜ உலக அடையாளத்தையோ சரிபார்க்காது.
கோப்பு ஹேஷ்கள் (File hashes)
பதிவேற்றப்பட்ட APK கோப்பின் ஒட்டுமொத்த MD5, SHA-1, மற்றும் SHA-256 ஹேஷ்கள் கணக்கிடப்பட்டு காட்டப்படும்.
பகுப்பாய்வு முடிந்ததும், பயனர் அறிக்கையைப் பதிவிறக்குக பொத்தானைப் பயன்படுத்தி அறிக்கையைப் பதிவிறக்கலாம் அல்லது அழி பொத்தானை அழுத்தி தரவுகளை அழிக்கலாம்.
பிழைகளைக் கையாளுதல்
பகுப்பாய்வின் போது ஏற்படும் பிழைகள் பின்வரும் செய்திகளுடன் கையாளப்படுகின்றன:
- கோப்பு அளவு வரம்பு: 500 MB-ஐத் தாண்டும் கோப்புகள் நிராகரிக்கப்பட்டு, பின்வரும் பிழைச் செய்தி காட்டப்படும்:
\"இந்தக் கோப்பு 500 MB-ஐ விட அதிகம் — உலாவித் தாவலால் பாதுகாப்பாக ஆய்வு செய்ய முடியாத அளவுக்குப் பெரியது.\". - ஆதரிக்கப்படாத வடிவங்கள்:
- XAPK, APKM போன்ற ஸ்பிளிட் தொகுப்புகள் நிராகரிக்கப்படும்போது:
\"இது ஒரு XAPK ஸ்பிளிட் தொகுப்பு — பல APKகளின் கொள்கலன். அடிப்படை APK-ஐப் பிரித்தெடுத்து அதற்கு பதிலாக அந்தக் கோப்பை ஆய்வு செய்யவும்.\" - Android App Bundle கோப்புகள் நிராகரிக்கப்படும்போது:
\"இது ஒரு Android App Bundle (.aab) — இது வெளியீட்டு வடிவம், நிறுவக்கூடிய APK அல்ல. அதற்குப் பதிலாக உருவாக்கப்பட்ட APK-ஐ ஆய்வு செய்யவும்.\" - APK அல்லாத பிற கோப்புகள்:
\"இது APK போலத் தெரியவில்லை: படிக்கக்கூடிய AndroidManifest.xml உள்ளே இல்லை.\"
- XAPK, APKM போன்ற ஸ்பிளிட் தொகுப்புகள் நிராகரிக்கப்படும்போது:
- சிதைந்த கோப்புகள்: சிதைந்த அல்லது முழுமையற்ற கோப்புகளுக்கு:
\"தொகுப்பு சேதமடைந்துள்ளது அல்லது துண்டிக்கப்பட்டுள்ளது, எனவே அதன் உள்ளடக்கங்களைப் படிக்க முடியவில்லை.\" - வாசிப்புத் தோல்வி: பொதுவான கோப்பு வாசிப்புப் பிழைகளுக்கு:
\"கோப்பைப் படிக்க முடியவில்லை. அதை மீண்டும் தேர்ந்தெடுக்கவும்.\" - பொதுவான தோல்வி: இதர பகுப்பாய்வுத் தோல்விகளுக்கு:
\"ஆய்வு தோல்வியடைந்தது. வேறு கோப்பை முயற்சிக்கவும்.\" - பல கோப்புகள்: பயனர் ஒரே நேரத்தில் பல கோப்புகளைப் பதிவேற்ற முயன்றால், கருவி முதல் கோப்பை மட்டுமே செயலாக்கி, பின்வரும் குறிப்பைக் காட்டும்:
\"ஒரு நேரத்தில் ஒரு கோப்பு மட்டுமே — முதலாவது ஆய்வு செய்யப்படுகிறது.\".
தனியுரிமை மற்றும் உள்ளூர் செயலாக்கம்
இக்கருவியின் அனைத்து கோப்பு வாசிப்பு, ஹேஷிங் மற்றும் பகுப்பாய்வு செயல்பாடுகளும் பயனரின் இணைய உலாவியில் உள்ள உள்ளூர் வொர்க்கர் (Local Worker) மூலமாகவே முழுமையாக நடைபெறுகின்றன. எந்தவொரு கோப்போ அல்லது தரவோ வெளிப்புற சேவையகத்திற்கு (Server) பதிவேற்றப்படுவதில்லை. மேலும், APK கோப்பு பயனரின் சாதனத்தில் ஒருபோதும் நிறுவப்படுவதோ அல்லது இயக்கப்படுவதோ இல்லை.
அடிக்கடி கேட்கப்படும் கேள்விகள் (FAQ)
ஒரு APK-ஐ நிறுவாமல் அதிலிருந்து என்ன தெரிந்து கொள்ளலாம்?
நிறைய தெரிந்து கொள்ளலாம்: ஆப்பின் தொகுப்பு பெயர் மற்றும் பதிப்பு, அதற்குத் தேவையான Android பதிப்புகள், அது கேட்கும் ஒவ்வொரு அனுமதி, அது அறிவிக்கும் திரைகள் மற்றும் பின்னணி கூறுகள், அது இயங்கும் செயலி வகைகள், மற்றும் அது கையொப்பமிடப்பட்ட சான்றிதழ்கள்.
இது ஒரு APK மால்வேரா என்பதைச் சொல்லுமா?
இல்லை — விரைவான ஸ்கேன் மூலம் தீர்ப்பு வழங்கும் எந்தவொரு கருதியையும் நம்ப வேண்டாம். இங்கே உங்களுக்குக் கிடைப்பது உண்மைகள்: அனுமதிகள், கூறுகள், கையொப்பமிட்டவர்கள் மற்றும் ஹேஷ்கள். டெவலப்பர் வெளியிட்டவற்றுடன் அவற்றை ஒப்பிட்டுப் பாருங்கள், மற்றும் எதிர்பாராத அனுமதிகள் அல்லது அதிகாரப்பூர்வ வெளியீட்டிலிருந்து வேறுபட்ட கையொப்பமிட்டவர் இருந்தால் விலகிவிடுவது நல்லது.
எந்தக் கோப்புகள் ஆதரிக்கப்படுகின்றன?
500 MB வரையிலான ஒற்றை APK கோப்புகள். ஸ்பிளிட் தொகுப்புகள் (XAPK, APKM) மற்றும் Android App Bundle (.aab) ஆகியவை கொள்கலன்கள் அல்லது வெளியீட்டு வடிவங்கள் ஆகும், எனவே குழப்பமான அறிக்கைக்குப் பதிலாக தெளிவான செய்தியுடன் அவை நிராகரிக்கப்படும்.
கையொப்ப விவரங்கள் எனக்கு என்ன சொல்கின்றன?
ஒவ்வொரு Android ஆப்பும் கையொப்பமிடப்பட்டுள்ளது, மேலும் சான்றிதழ் அதை வெளியிட்டவரை அடையாளம் காட்டுகிறது. தொகுப்பு கொண்டுள்ள கையொப்பத் திட்டங்கள் (v1, v2, v3) மற்றும் ஒவ்வொரு கையொப்பமிட்டவரின் பொருள், செல்லுபடியாகும் காலம் மற்றும் MD5, SHA-1, SHA-256 கைரேகைகளைப் பார்க்கலாம். ஒரே மாதிரியான கைரேகைகளைக் கொண்ட இரண்டு APKகள் ஒரே வெளியீட்டாளரிடமிருந்து வந்தவை — அந்த வெளியீட்டாளரை நீங்கள் நம்புகிறீர்களா என்பதை நீங்கள்தான் தீர்மானிக்க வேண்டும்.
அனுமதியில் உள்ள “ஆபத்தான” (Dangerous) பேட்ஜ் எதைக் குறிக்கிறது?
இது Android-இன் சொந்த வகைப்பாடு: ஆபத்தான அனுமதிகள் தனிப்பட்ட தரவை அணுகலாம் — இருப்பிடம், தொடர்புகள், கேமரா, மைக்ரோஃபோன், சேமிப்பகம் — எனவே வழங்குவதற்கு முன்பு சிஸ்டம் பயனரிடம் கேட்கிறது. இந்த பேட்ஜ் குற்றம் சாட்டுவது அல்ல; இருப்பிடத்தைக் கேட்கும் மேப்ஸ் ஆப் இயல்பானது. இது இருமுறை படிக்க வேண்டிய அனுமதிகளைக் குறிக்கிறது.