Tiredful API is intentionally designed broken app. The aim of this web app is to teach developers, QA or security professionals about flaws present in webservices (REST API) due to insecure coding practice.
- Web developers
- Web Pentesters
- Security Professionals
- Student
I tried to cover most of the vulnerabilities, I am sure that we have missed some vulnerabilities.Please ping me if you know any good vulnerability that should be included. For now I have included following vulnerabilities.
- Information Disclosure
- Insecure Direct Object Reference
- Access Control
- Throttling
- SQL Injection (SQLite)
- JWT Issues
- Cross Site Scripting.
Yes, you can help by sending us the details of vulnerabilities that we can implement in future versions of Tiredful API. Please mail us at siddharth [dot] bezalwar [at] gmail [dot] com with subject "Tiredful API Scenario".
Source can be downloaded from link.
Tiredful API is developed using Django Framework and Django Rest Framework, so for running the web server user needs execute following command.
- Navigate to the source folder and locate manage.py file.
- Then execute
python manage.py runserver
. - If static files are not getting load, then execute above command with insecure flag i.e.
python manage.py runserver --insecure
If you are facing any issue starting the web server please refer django documentation admin or django documentation tutorial. Please ping me if you are still not able to run development server.
Note: It is recommended to use required libraries with the version specified in the requirements.txt. Please refer this more details
You can run Tiredful via Docker. Simply execute:
docker build -t tiredful .
docker run -p 8000:8000 --name tiredful -it tiredful
Browse to http://localhost:8000/
and you are all set. Use CTRL-C
to shut down the server.
You can also spin up Tiredful API using Docker Compose. Simply execute:
docker compose -f docker-compose-dev.yml up
The application files will refresh automatically when you make changes to the source code. Use CTRL-C
to shut down the server.
If you want to run the application without refreshing the application files, execute:
docker-compose up -d
We would love to hear from you about your experience with Tiredful API. Please send us an email on siddharth [dot] bezalwar [at] gmail [dot] com with Subject "Tiredful API Issue" based on what you want to share. Please include the below in your email.
- Operating system with version.
- Django Framework used.
- Steps to replicate issue.
Siddharth Bezalwar
@fattu_medjai | siddharth [dot] bezalwar [at] gmail [dot] com