OWASP VulnerableApp OWASP VulnerableApp

OWASP Incubator License Java CI with Gradle PRs Welcome Docker Pulls codecov

ਜਿਵੇਂ ਕਿ ਅੱਜ ਕੱਲ੍ਹ ਵੈੱਬ ਐਪਲੀਕੇਸ਼ਨਾਂ ਤੇਜ਼ੀ ਨਾਲ ਪ੍ਰਸਿੱਧ ਹੋ ਰਹੀਆਂ ਹਨ, ਉਨ੍ਹਾਂ ਨੂੰ ਸੁਰੱਖਿਅਤ ਕਰਨ ਦੀ ਅਤਿਅੰਤ ਜ਼ਰੂਰਤ ਵੀ ਮਹਿਸੂਸ ਹੋ ਰਹੀ ਹੈ। ਭਾਵੇਂ ਕਈ ਕਮਜ਼ੋਰੀ ਸਕੈਨਿੰਗ ਟੂਲ ਮੌਜੂਦ ਹਨ, ਪਰ ਇਹਨਾਂ ਟੂਲਾਂ ਨੂੰ ਵਿਕਸਿਤ ਕਰਦੇ ਸਮੇਂ ਡਿਵੈਲਪਰਾਂ ਨੂੰ ਇਹਨਾਂ ਦੀ ਜਾਂਚ ਕਰਨੀ ਪੈਂਦੀ ਹੈ ਅਤੇ ਇਹ ਵੀ ਜਾਣਨਾ ਪੈਂਦਾ ਹੈ ਕਿ ਟੂਲ ਕਿੰਨਾ ਚੰਗਾ ਕੰਮ ਕਰ ਰਿਹਾ ਹੈ। ਫਿਲਹਾਲ ਅਜਿਹੀਆਂ ਬਹੁਤ ਘੱਟ ਕਮਜ਼ੋਰ ਐਪਲੀਕੇਸ਼ਨਾਂ ਮੌਜੂਦ ਹਨ ਜਿਨ੍ਹਾਂ ‘ਤੇ ਇਹਨਾਂ ਟੂਲਾਂ ਦੀ ਜਾਂਚ ਕੀਤੀ ਜਾ ਸਕੇ। ਮਾਰਕੀਟ ਵਿੱਚ ਜਾਣਬੁੱਝ ਕੇ ਕਮਜ਼ੋਰ ਐਪਲੀਕੇਸ਼ਨਾਂ ਮੌਜੂਦ ਹਨ, ਪਰ ਉਹ ਇਸ ਮਕਸਦ ਨਾਲ ਨਹੀਂ ਲਿਖੀਆਂ ਗਈਆਂ ਸਨ ਅਤੇ ਇਸ ਲਈ ਐਕਸਟੈਂਸੀਬਿਲਟੀ ਦੀ ਘਾਟ ਹੈ।

VulnerableApp ਇਹਨਾਂ ਸਾਰੇ ਕਾਰਕਾਂ ਨੂੰ ਧਿਆਨ ਵਿੱਚ ਰੱਖ ਕੇ ਬਣਾਇਆ ਗਿਆ ਹੈ। ਇਹ ਪ੍ਰੋਜੈਕਟ ਸਕੇਲੇਬਲ, ਐਕਸਟੈਂਸੀਬਲ, ਏਕੀਕ੍ਰਿਤ ਕਰਨ ਵਿੱਚ ਆਸਾਨ ਅਤੇ ਸਿੱਖਣ ਵਿੱਚ ਸਰਲ ਹੈ।

ਯੂਜ਼ਰ ਇੰਟਰਫੇਸ

VulnerableApp-facade UI

ਵਰਤੀਆਂ ਗਈਆਂ ਤਕਨੀਕਾਂ

  • Java 17
  • Spring Boot
  • ReactJS
  • Javascript/TypeScript

ਵਰਤਮਾਨ ਵਿੱਚ ਸਮਰਥਿਤ ਕਮਜ਼ੋਰੀ ਕਿਸਮਾਂ

  1. JWT ਕਮਜ਼ੋਰੀ
  2. ਕਮਾਂਡ ਇੰਜੈਕਸ਼ਨ
  3. ਕ੍ਰਿਪਟੋਗ੍ਰਾਫ਼ੀ ਅਸਫਲਤਾਵਾਂ
  4. ਫਾਈਲ ਅਪਲੋਡ ਕਮਜ਼ੋਰੀ
  5. ਪਾਥ ਟ੍ਰੈਵਰਸਲ ਕਮਜ਼ੋਰੀ
  6. SQL ਇੰਜੈਕਸ਼ਨ
    1. ਐਰਰ-ਬੇਸਡ SQL ਇੰਜੈਕਸ਼ਨ
    2. ਯੂਨੀਅਨ-ਬੇਸਡ SQL ਇੰਜੈਕਸ਼ਨ
    3. ਬਲਾਇੰਡ SQL ਇੰਜੈਕਸ਼ਨ
  7. XSS
    1. ਪਰਸਿਸਟੈਂਟ XSS
    2. ਰਿਫਲੈਕਟਡ XSS
  8. XXE
  9. ਓਪਨ ਰਿਡਾਇਰੈਕਟ
    1. HTTP 3xx ਸਟੇਟਸ ਕੋਡ ਆਧਾਰਿਤ
  10. SSRF
  11. IDOR

ਪ੍ਰੋਜੈਕਟ ਲਈ ਯੋਗਦਾਨ

ਤੁਸੀਂ ਹੇਠ ਲਿਖੇ ਤਰੀਕਿਆਂ ਨਾਲ ਪ੍ਰੋਜੈਕਟ ਵਿੱਚ ਯੋਗਦਾਨ ਦੇ ਸਕਦੇ ਹੋ:

  1. ਜੇ ਤੁਸੀਂ ਡਿਵੈਲਪਰ ਹੋ ਅਤੇ ਹੁਣੇ ਸ਼ੁਰੂਆਤ ਕਰ ਰਹੇ ਹੋ, ਤਾਂ ਇਸ਼ੂਜ਼ ਦੀ ਸੂਚੀ ਵੇਖੋ ਜਿਨ੍ਹਾਂ ਵਿੱਚ good first issue ਟੈਗ ਹੈ।
  2. ਜੇ ਤੁਸੀਂ ਨਵੀਂ ਕਮਜ਼ੋਰੀ ਕਿਸਮ ਜੋੜਨਾ ਚਾਹੁੰਦੇ ਹੋ, ਤਾਂ ./gradlew GenerateSampleVulnerability ਕਮਾਂਡ ਚਲਾਓ। ਇਹ ਇੱਕ ਸੈਂਪਲ ਟੈਂਪਲੇਟ ਬਣਾਵੇਗਾ — ਉਹ ਫਾਈਲਾਂ ਖੋਲ੍ਹੋ, ਪਲੇਸਹੋਲਡਰ ਭਰੋ ਅਤੇ ਪ੍ਰੋਜੈਕਟ ਬਿਲਡ ਕਰੋ।
  3. ਜੇ ਤੁਸੀਂ ਪ੍ਰਚਾਰ ਜਾਂ ਵਿਕਾਸ ਵਿੱਚ ਯੋਗਦਾਨ ਦੇਣਾ ਚਾਹੁੰਦੇ ਹੋ, ਤਾਂ ਡਿਸਕਸ਼ਨ ਸੈਕਸ਼ਨ ਵਿੱਚ ਆਪਣੇ ਵਿਚਾਰ ਸਾਂਝੇ ਕਰੋ।

ਪ੍ਰੋਜੈਕਟ ਚਲਾਉਣਾ

ਪ੍ਰੋਜੈਕਟ ਚਲਾਉਣ ਦੇ ਦੋ ਤਰੀਕੇ ਹਨ:

  1. Docker ਕੰਟੇਨਰਾਂ ਦੀ ਵਰਤੋਂ ਕਰਕੇ (ਸਾਰੇ ਹਿੱਸਿਆਂ ਸਮੇਤ ਪੂਰਾ VulnerableApp):
    1. Docker Compose ਡਾਊਨਲੋਡ ਅਤੇ ਇੰਸਟਾਲ ਕਰੋ
    2. ਇਸ GitHub ਰਿਪੋਜ਼ਟਰੀ ਨੂੰ ਕਲੋਨ ਕਰੋ
    3. ਟਰਮੀਨਲ ਖੋਲ੍ਹੋ ਅਤੇ ਪ੍ਰੋਜੈਕਟ ਦੀ ਰੂਟ ਡਾਇਰੈਕਟਰੀ ‘ਤੇ ਜਾਓ
    4. ਕਮਾਂਡ docker-compose pull && docker-compose up ਚਲਾਓ
    5. ਬ੍ਰਾਊਜ਼ਰ ਵਿੱਚ http://localhost ‘ਤੇ ਜਾਓ।

    ਨੋਟ: ਨਵੀਨਤਮ ਰਿਲੀਜ਼ਡ ਵਰਜ਼ਨ ਲਈ Docker latest ਟੈਗ ਵਰਤੋ।

  2. ਸਟੈਂਡਅਲੋਨ ਐਪਲੀਕੇਸ਼ਨ ਵਜੋਂ:
    1. GitHub ਦੇ ਰਿਲੀਜ਼ ਸੈਕਸ਼ਨ ਤੋਂ ਨਵੀਨਤਮ JAR ਫਾਈਲ ਡਾਊਨਲੋਡ ਕਰੋ
    2. ਕਮਾਂਡ java -jar VulnerableApp-* ਚਲਾਓ
    3. ਬ੍ਰਾਊਜ਼ਰ ਵਿੱਚ http://localhost:9090/VulnerableApp ‘ਤੇ ਜਾਓ।

ਪ੍ਰੋਜੈਕਟ ਬਿਲਡ ਕਰਨਾ

  1. Docker ਐਪਲੀਕੇਸ਼ਨ ਵਜੋਂ:
    1. ./gradlew jibDockerBuild ਨਾਲ Docker ਇਮੇਜ ਬਣਾਓ
    2. Docker-Compose ਡਾਊਨਲੋਡ ਕਰੋ ਅਤੇ docker-compose up ਚਲਾਓ
    3. ਬ੍ਰਾਊਜ਼ਰ ਵਿੱਚ http://localhost ‘ਤੇ ਜਾਓ।
  2. SpringBoot ਐਪਲੀਕੇਸ਼ਨ ਵਜੋਂ (ਡੀਬੱਗਿੰਗ ਲਈ):
    1. ਪ੍ਰੋਜੈਕਟ ਨੂੰ ਆਪਣੀ IDE ਵਿੱਚ ਇਮਪੋਰਟ ਕਰੋ ਅਤੇ ਚਲਾਓ
    2. ਬ੍ਰਾਊਜ਼ਰ ਵਿੱਚ http://localhost:9090/VulnerableApp ‘ਤੇ ਜਾਓ।

ਏਮਬੈੱਡਡ H2 ਡੇਟਾਬੇਸ ਨਾਲ ਕੁਨੈਕਟ ਕਰਨਾ

ਬ੍ਰਾਊਜ਼ਰ ਤੋਂ ਡੇਟਾਬੇਸ ਐਕਸੈੱਸ ਕਰਨ ਲਈ: http://localhost:9090/VulnerableApp/h2

JDBC Url: jdbc:h2:mem:testdb
User Name: admin
Password: hacker

ਸੰਪਰਕ

ਕਿਸੇ ਵੀ ਮੁੱਦੇ ਲਈ karan.sasan@owasp.org ‘ਤੇ ਈਮੇਲ ਕਰੋ ਜਾਂ ਇੱਕ ਇਸ਼ੂ ਉਠਾਓ।

ਦਸਤਾਵੇਜ਼ਾਂ ਅਤੇ ਹਵਾਲੇ

  1. ਦਸਤਾਵੇਜ਼ੀਕਰਨ
  2. ਡਿਜ਼ਾਈਨ ਦਸਤਾਵੇਜ਼ੀਕਰਨ
  3. OWASP VulnerableApp
  4. OWASP Spotlight ਲੜੀ ਦਾ ਸੰਖੇਪ ਵੀਡੀਓ
  5. ਸੰਖੇਪ ਵੀਡੀਓ

ਬਲੌਗ

  1. OWASP-VulnerableApp ਦਾ ਸੰਖੇਪ — Medium ਲੇਖ
  2. OWASP-VulnerableApp ਦਾ ਸੰਖੇਪ — Blogspot ਪੋਸਟ
  3. Kenji Nakajima ਦੁਆਰਾ OWASP VulnerableApp ਦੀ ਜਾਣ-ਪਛਾਣ
  4. ਜੈਨਰੇਟਿਵ AI ਆਧਾਰਿਤ ਪਲੇਟਫਾਰਮ Shannon

ਸਮੱਸਿਆ ਨਿਵਾਰਣ ਹਵਾਲੇ

  1. Reddit: SQL ਇੰਜੈਕਸ਼ਨ ਕਮਜ਼ੋਰੀ ਦੀ ਵਰਤੋਂ

ਹੋਰ ਭਾਸ਼ਾਵਾਂ ਵਿੱਚ README

  1. ਰੂਸੀ
  2. ਚੀਨੀ
  3. ਹਿੰਦੀ