Agregar archivos aca-shell, client-side, heres-johny

This commit is contained in:
2018-10-18 15:07:11 -05:00
parent 79a8eeb86e
commit 53a0d2ffd8
3 changed files with 106 additions and 0 deletions
+25
View File
@@ -0,0 +1,25 @@
# Aca-Shell-A
En este desafío nos encontramos pruebas relacionadas a comandos básicos de
sistemas operativos *nix.
Primero nos conectamos al servidor con `netcat`.
Seguimos las instrucciones que nos presenta el servidor. Entramos al directorio
`secret`, listamos los archivos y eliminamos todos los archivos de intel.
```
$ rm intel*
```
Nos movemos al directorio `executables` y ejecutamos el bianrio.
```
$ ./dontLookHere
```
Mostramos el usuario con `whoami` y copiamos el archivo `TopSecret` al
directorio `tmp`. Por últimos ubicamos el archivo `TopSecret` y mostramos su
contenido con `cat`.
Listo, con eso deberíamos de obtener la bandera.
+37
View File
@@ -0,0 +1,37 @@
# Client Side is Still Bad
Se nos da una dirección [URL](http://2018shell2.picoctf.com:55790/)
donde encontramos un portal de acceso. Revisando el código fuente encontramos
un script que ejecuta la página:
```javascript
<script type="text/javascript">
function verify() {
checkpass = document.getElementById("pass").value;
split = 4;
if (checkpass.substring(split*7, split*8) == '}') {
if (checkpass.substring(split*6, split*7) == 'd366') {
if (checkpass.substring(split*5, split*6) == 'd_3b') {
if (checkpass.substring(split*4, split*5) == 's_ba') {
if (checkpass.substring(split*3, split*4) == 'nt_i') {
if (checkpass.substring(split*2, split*3) == 'clie') {
if (checkpass.substring(split, split*2) == 'CTF{') {
if (checkpass.substring(0,split) == 'pico') {
alert("You got the flag!")
}
}
}
}
}
}
}
}
else {
alert("Incorrect password");
}
}
```
Si ponemos atención podremos ver que la función realiza la comparación
contra la flag, de aquí sólo queda unirla correctamente.
+44
View File
@@ -0,0 +1,44 @@
# HEEEEEEERE'S Johnny!
Para este problema se nos entregan dos archivos: `passwd` y `shadow`, desde
este momento es posible visualizar hacia donde va el problema:
El título hace referencia a `john`, un software especializado en realizar
_cracking_ de contraseñas. Para el correcto funcionamiento de `john`necesitamos
dos archivos, justo los dos que nos son entregados para el reto.
```
root:x:0:0:root:/root:/bin/bash
root:$6$LcvKHioa$67O1HA8Ti.KHeNbD4rE79ZMl1RbiCw4V7eM.r6AURp2wGnapUpXC.VdVB4WGoS2J5eVKP/1MFeMmXIdveJeOS0:17695:0:99999:7:::
```
Para realizar un crack simple de la contraseña ejecutamos:
```
# john shadow
```
Revisando la salida del comando nos encontramos lo sigueinte:
> El proceso es lento. En nuestro caso tomó de 3 a 5 minutos aprox.
Si revisamos los hints que nos ofrece el desafío podremos ver que hace
referencia a `rockyou`, el cual es un popular diccionario que contiene muchas
contraseñas obtenidas de Internet.
Ejecutamos el comando anterior, ahora agregando dos parámetro más:
```
# john --format=crypt --wordlist rockyou.txt shadow
```
> Agregamos la opción de formato del hash para una búsqueda más rápida.
Una vez que haya finalizado, podremos mostrar la contraseña:
```
# john --show shadow
thematrix
```
Eso debería completar las credenciales de acceso al servidor, una
vez que entremos se nos entregará la flag.