✘ What is WebGoat?
WebGoat is a deliberately insecure web application maintained by OWASP designed to teach web
application security lessons. The project is a great way to learn about common web application
vulnerabilities and how to prevent them.
WebGoat is a Java web application that contains a number of
lessons that cover topics such as SQL injection, cross-site scripting, and more. The lessons are
designed to be hands-on and interactive, allowing users to learn by doing. WebGoat is a great tool for
anyone looking to learn more about web application security, whether you are a developer, tester, or
security professional.
✘ Why run it on Docker?
Docker is a containerization platform that allows you to package and run applications in isolated
environments called containers. By running WebGoat on Docker, you can easily deploy and run the
application on any system that supports Docker, without having to worry about dependencies or
configuration issues. This makes it easy to set up and run WebGoat in a consistent and reproducible
way, which is important when working with security tools like WebGoat.
Docker also provides
security benefits by isolating the application in its own container, which helps prevent
vulnerabilities in the application from affecting the host system. This is especially important when
working with insecure applications like WebGoat, as it helps protect the host system from potential
attacks.
Overall, running WebGoat on Docker is a great way to simplify the deployment and
management of the application, while also providing security benefits that help protect the host
system from potential attacks. And to me personally it was easy to learn and understand how Docker works.
✘ What did I really learn?
Some modules I did on WebGoat were [A3] SQL Injection, [A7] Identity & Auth Failure and [A9] Logging security. I learned how to exploit SQL injection vulnerabilities, how to bypass authentication controls, and how to log spooffing and log bleeding work. I also learned how to use tools like ZAP to identify and exploit vulnerabilities in web applications.
✘ Conclusion
Right now I am still doing WebGoat modules and learning more about cybersecurity. I am also learning
more about Docker and how to use it in different projects. I am planning to do more projects like this
in the future, as I believe that hands-on experience is the best way to learn about cybersecurity.
Docker is a great tool for containerizing applications and simplifying the deployment process. I personally
enjoyed working with Docker and WebGoat, and I look forward to using Docker in future projects.