About Source code There is a perl script running on port 1616. To do this level, log in as the level16 account with the password level16. Files for this level can be found in /home/flag16. #!/usr/bin/env perl
use CGI qw{param};
print “Content-type: text/html\n\n”;
sub login { $username = $[0]; $password = $[1];
$username =~ tr/a-z/A-Z/; # conver to uppercase $username =~ s/\s.*//; # strip everything after a space
@output = egrep "^$username" /home/flag16/userdb.txt 2>&1;
foreach $line (@output) {
($usr, $pw) = split(/:/, $line);
if($pw =~ $password) {
return 1;
}
}
return 0; }
sub htmlz { print("
”); } else { print(“Your login failed
”); }
print(“Would you like a cookie?
\n”); }
htmlz(login(param(“username”), param(“password”)));