Difference between revisions of "Google Code In 2013"

(→‎Code: Tasks related to writing or refactoring code: Updated text for JavaScript error checking issue to make it a little clearer - added a second bonus question to it to explain why JS security is insufficient.)

TASKS PROPOSAL FOR Google CODE –IN 2013 - OWASP

Welcome To OWASP!!

Hi there! if you are a young, fierce and creative youngster looking for action and hacking adventures this is your place.
OWASP is an organization that create awareness providing learning tools to programmers and developers on how to code secure and avoid being hacked.

Many of the tasks you will find in this page are about 'hacking' and protecting web applications.

If you want to learn more about web security and how to protect web applications and software from 'evil' hackers, this is a great place to be.

Code: Tasks related to writing or refactoring code

Your mission is to write one or more JavaScript functions that guarantee:

When user press ‘submit’ button Username cannot be longer than 10 characters and not small than 3 characters

The username he wrote will be wiped out(cleared) from the field if it doesn’t comply with the rule

A pop up message will appear in case the username is longer than 10 characters saying "Username is not valid"

If the username or password field has the following characters filled by the user: “<” or “>” , a pop message must appear saying “These characters are not allowed”

Bonus point question(1 point) : Explain
Why should we sanitize user input in web forms like this?
What are the risks associated with not validating user input?
Provide a code example of an attack associated with input of 'evil' users

Bonus point question(1 point) : Explain
Why implementing these checks in JavaScript is not sufficient to guarantee security on the server.

2. Fix the buffer overflow
The following code has a buffer overflow. Buffer overflows are the cause of many security issues in C and C++ code. Take your time to understand first what is a buffer overflow and how can you fix this. Can you say where the problem, why and fix it?

Bonus questions(1 point):
what is the relation between a 'worm' and a buffer overflow?
Provide a code example of a buffer overflow that caused a "worm".
Explain in your own words (max 500 words) how this happens

3. Clickjacking a website
The following code allows you to check if a website can be ‘clickjacked’ or if you can use a clickjack attack. Google info about this security vulnerability. Your mission is to: Find a website that can be clickjacked
Change the code so you can demonstrate the attack on the site you found to be vulnerable.
You win this tasks if you are able to make it look like a user is browsing the website and he can hardly see the difference between the ‘clickjack’ page and the real websites page

Bonus question (1 point) : How can you avoid clickjacking? Explain with a code example what can we do to avoid this attack (max 500 words)

4. Playing with Firebug and DOM (Document Object Model)
Firebug is a Mozilla plugin that allows you to change the code of the webpage cached in your browser.
Your mission, go to www.owasp.org and change the text that says “Welcome to OWASP”
Create a print screen to show us how you changed the code to “Welcome to Code-In 2013”

Bonus question (1 point) :
What kind of attacks can you do to a website by manipulating the DOM? Provide an example.

5. Create a flyer promoting secure coding: OWASP TOP TEN FLYER
Go the OWASP website and search for the OWASP top ten security vulnerabilities. Create a nice Poster (A3 format) with graphics about these security issues. Try to explain this using as much as you can graphics instead of words

6. XSS info on the OWASP website
We need your help finding all the URL links related to XSS in the Wiki pages of OWASP, your mission is to: Search and find all the webpages that mentioned or describe what is XSS(Cross Site Script)
Read the documentation about this and create a document with all the links you found in the OWASP site about this topic.

Is it clear for you after reading all the links what is XSS?

If it’s not clear what kind of recommendations will you give us? What should be changed?

7. Find out outdated Incubator CODE Projects
OWASP has many projects that are in a beginning phase, unfortunately, some of these pages have not been updated in a long time. We need help identifying when it was the last time these wiki pages were updated. The task: Go to https://www.owasp.org/index.php/OWASP_Project_Inventory#Incubator_Projects and create a table with the following info
Name of the project | Last updated on: (date written as day/month/year)8. Find out outdated Incubator TOOL Projects
OWASP has many projects that are in a beginning phase, unfortunately, some of these pages have not been updated in a long time. We need help identifying when it was the last time these wiki pages were updated. The task: Go to https://www.owasp.org/index.php/OWASP_Project_Inventory#Incubator_Projects and create a table with the following info
Name of the project | Last updated on: (date written as day/month/year)

Outreach/research: Tasks related to community management, outreach/marketing, or studying problems and recommending

9. Improve navigation in OWASP website
Go and navigate the OWASP website. How do you find the navigation of the website? provide us recommendations on how to improve it(max 1000 words)

10. Search for opinions about OWASP
We want to know what’s been said on the web about us. Do a google search and find as much as possible what is been said about us. Is it positive? Negative? Write your findings in an A4 format page ( 1000 words -word doc) and make sure to include references of all the URL and links you find out about OWASP

13. Tasks testing 1
Go to the lesson on Hidden Form Field Manipulation. Explain in less than 250 words how this happens and how can you fix this issue14. Task testing 2
Go to the lesson Parameter Manipulation. Explain in less than 250 words how this happens and how can you fix this issue15. Testing task 3
Go to the lesson Cross-site Scripting (XSS). Explain in less than 250 words how this happens and how can you fix this issue16. Test task 4
Go to the lesson Dangers of HTML Comments. Explain in less than 250 words how this happens and how can you fix this issue

Revamp the following wiki pages following the BRAND Guidelines (https://owasp.org/index.php/Marketing/Resources#tab=BRAND_GUIDELINES ). Code for the wiki pages should be delivered in a text format (just notepad++ text file). If you are using images, please deliver them in jpg format. The entire package should be delivered as a zip file (in case of multiple files)