
๐ Scan React Native APKs for Vulnerable npm Dependencies in 2 Minutes!
๐ What is This Tool?
React Native Vulnerability Scanner is a Python tool that helps security researchers and developers analyze React Native APKs for vulnerable npm dependencies by scanning modules.json
. It checks package versions against Snykโs vulnerability database to find security risks in outdated libraries.
๐ ๏ธ How to Use This Tool?
1๏ธโฃ Decompile the APK using apktool
To extract modules.json
, decompile the APK:
apktool d myapp.apk -o myapp_decompiled
Look for the file inside:
myapp_decompiled/assets/modules.json
2๏ธโฃ Scan for Vulnerabilities
Run the scanner to check for outdated dependencies:
python RNScanner.py -f myapp_decompiled/assets/modules.json
To save the results to a file:
python RNScanner.py -f myapp_decompiled/assets/modules.json -o
๐ Recompile & Repackage the APK
3๏ธโฃ Rebuild the APK
After modifications (if any), recompile the APK:
apktool b myapp_decompiled -o new_app.apk
4๏ธโฃ Sign the APK
Unsigned APKs wonโt install, so sign it:
jarsigner -keystore my-release-key.keystore -storepass password -keypass password -signedjar signed_app.apk new_app.apk alias_name
5๏ธโฃ Install the APK
adb install signed_app.apk
๐ Example Output
If vulnerabilities are found:
react-native : 0.76.7
lodash : 4.17.21
axios : 0.21.4
Results saved to vulnerable_packages.txt
โ
Done!
If no vulnerabilities are found:
No vulnerabilities found! ๐
โ
Done!
๐ Why Use This Tool?
โ
Identify security flaws in React Native apps
โ
Quickly analyze npm dependencies inside APKs
โ
Helpful for bug bounty, security audits & pen testing
๐ GitHub Repo: BhattJayD/react-native-vulnerability-scanner
๐ Try it now and secure your React Native apps! ๐