rev/vault_door_4
This commit is contained in:
@@ -0,0 +1,45 @@
|
||||
import java.util.*;
|
||||
|
||||
class VaultDoor4 {
|
||||
public static void main(String args[]) {
|
||||
VaultDoor4 vaultDoor = new VaultDoor4();
|
||||
Scanner scanner = new Scanner(System.in);
|
||||
System.out.print("Enter vault password: ");
|
||||
String userInput = scanner.next();
|
||||
String input = userInput.substring("picoCTF{".length(),userInput.length()-1);
|
||||
if (vaultDoor.checkPassword(input)) {
|
||||
System.out.println("Access granted.");
|
||||
} else {
|
||||
System.out.println("Access denied!");
|
||||
}
|
||||
}
|
||||
|
||||
// I made myself dizzy converting all of these numbers into different bases,
|
||||
// so I just *know* that this vault will be impenetrable. This will make Dr.
|
||||
// Evil like me better than all of the other minions--especially Minion
|
||||
// #5620--I just know it!
|
||||
//
|
||||
// .:::. .:::.
|
||||
// :::::::.:::::::
|
||||
// :::::::::::::::
|
||||
// ':::::::::::::'
|
||||
// ':::::::::'
|
||||
// ':::::'
|
||||
// ':'
|
||||
// -Minion #7781
|
||||
public boolean checkPassword(String password) {
|
||||
byte[] passBytes = password.getBytes();
|
||||
byte[] myBytes = {
|
||||
106 , 85 , 53 , 116 , 95 , 52 , 95 , 98 ,
|
||||
0x55, 0x6e, 0x43, 0x68, 0x5f, 0x30, 0x66, 0x5f,
|
||||
0142, 0131, 0164, 063 , 0163, 0137, 061 , 063 ,
|
||||
'd' , 'f' , '6' , '1' , '8' , 'a' , '2' , '3' ,
|
||||
};
|
||||
for (int i=0; i<32; i++) {
|
||||
if (passBytes[i] != myBytes[i]) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
Executable
+28
@@ -0,0 +1,28 @@
|
||||
#!/usr/bin/env python3
|
||||
|
||||
# byte[] myBytes = {
|
||||
# 106 , 85 , 53 , 116 , 95 , 52 , 95 , 98 ,
|
||||
# 0x55, 0x6e, 0x43, 0x68, 0x5f, 0x30, 0x66, 0x5f,
|
||||
# 0142, 0131, 0164, 063 , 0163, 0137, 061 , 063 ,
|
||||
# 'd' , 'f' , '6' , '1' , '8' , 'a' , '2' , '3' ,
|
||||
# };
|
||||
|
||||
my_bytes = [
|
||||
106 , 85 , 53 , 116 , 95 , 52 , 95 , 98 ,
|
||||
0x55, 0x6e, 0x43, 0x68, 0x5f, 0x30, 0x66, 0x5f,
|
||||
0o142, 0o131, 0o164, 0o63 , 0o163, 0o137, 0o61 , 0o63 ,
|
||||
'd' , 'f' , '6' , '1' , '8' , 'a' , '2' , '3' ,
|
||||
]
|
||||
|
||||
def main():
|
||||
print('picoCTF{', end='')
|
||||
for x in my_bytes:
|
||||
if type(x) == int:
|
||||
print(chr(x), end='')
|
||||
else:
|
||||
print(x, end='')
|
||||
print('}')
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
||||
|
||||
Reference in New Issue
Block a user