Phishing mobile application made in React Native v0.63.4 for both Android and iOS devices. One code for both platforms.
In addition to sending an email and password, application will send device information such as network interface MAC address and OS name and version.
You can modify and expand this application to your liking. You have everything you need to get started.
You can easily customize CSS and other settings in \src\phishing-app\constants.js to make it look more like the company you are testing, e.g. change colors, logo, etc.
Mobile application was tested on Samsung Galaxy J6 with Android v9.0 (Pie). Not yet tested on iOS device.
API was tested on XAMPP for Windows v7.4.3 (64-bit).
Made for educational purposes. I hope it will help!
Future plans:
- icon and name customizations,
- how to compile,
- border style for all four input border sides,
- email regular expression.
Import \db\phishing_mobile_app.sql to your database server.
Copy all the content from \src\api\ to your server's web root directory (e.g. to \xampp\htdocs\ on XAMPP).
Change the database settings inside \src\api\php\config.ini as necessary.
Open your preferred console from \src\phishing-app\ and run the commands shown below.
Install Node Version Manager, then, install and set Node.js to the required version:
nvm install 14.8.0
nvm use 14.8.0
Install React Native:
npm install -g create-react-native-app
Install Node.js modules:
npm install
Clean Gradle Wrapper:
cd android && gradlew clean && cd ..
Launch the application on an Android device:
npm run android
Launch the application on an iOS device:
npm run ios
You can place your logo in \src\api\img\ and then change the settings as necessary.
General (\root\):
- constants.js (change the server IP address)
- settings.js (Async Storage)
- App.js (Stack Navigator)
Network (\root\assets\network\):
Screens (\root\assets\screens\):
Components (\root\assets\components\):
Permissions (\root\android\app\src\main\):
Figure 1 - Phishing Application
Figure 2 - Database