Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

What non-language specific vulnerabilities are present in this code? And what exactly is happening at the line 43 block? ///////////////////////////////////////////// package owasp.webgoat.lessons; import java.util.ArrayList; import

What non-language specific vulnerabilities are present in this code? And what exactly is happening at the line 43 block?

/////////////////////////////////////////////

package owasp.webgoat.lessons; import java.util.ArrayList; import java.util.List; import java.Util.*; /* -This is a java code that performs a certain utility. -To reduce code size some of the methods and souce codes to higher classes/dependencies have been deleted. -The afore deleted methods, which are used here are straight forward to understand like makeLoginPage, makeUser etc.... */ /***************************************************************************************************/ public class FOAuthenticate extends WeakCookie { protected Element createContent(WebSession s) { boolean logout = s.getParser().getBooleanParameter(LOGOUT, false); if (logout) { s.setMessage("Goodbye!"); s.eatCookies(); return (makeLoginPage(s)); } try { String username = ""; String password = ""; try { username = s.getParser().getRawParameter(USERNAME); password = s.getParser().getRawParameter(PASSWORD); // if credentials are bad, ask for login again if (username.equals("") || !password.equals("")) { s.setMessage("Invalid username and password entered."); return (makeLoginPage(s)); } } catch (Exception e) { if (username.length() > 0 && e.getMessage().indexOf("not found") != -1) { if ((username != null) && (username.length() > 0)) { makeSuccess(s); return (makeUser(s, username, "Welcome!!!!")); } } } if (password.length() == 0) { if (username.length() != 0) { s.setMessage("Invalid username and password entered."); } return (makeLoginPage(s)); } if ((username != null) && (username.length() > 0) && (password.length() >0) && (password!=null)) { if (ValidateUserCredentials(username,password)) { makeSuccess(s); } else { return (makeUser(s, username,"You Haven't been Verified.")); } } } catch (Exception e) { s.setMessage("Error generating " + this.getClass().getName()); } return (makeLoginPage(s)); } } }

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Project Management in Practice

Authors: Samuel J. Mantel Jr., Jack R. Meredith, Sco

4th edition

470533013, 978-0470533017

Students also viewed these Databases questions