1
00:00:00,180 --> 00:00:05,340
En esta ocasión continuaremos con nuestro ataque anterior, así que lo que vamos a hacer es poner un

2
00:00:05,340 --> 00:00:06,930
poco en orden las cosas.

3
00:00:07,340 --> 00:00:08,220
Estoy acá.

4
00:00:08,430 --> 00:00:15,690
Voy a cerrar esto otro de acá y voy a entrar a mi directorio de Blueprint y desde este lado, una vez

5
00:00:15,690 --> 00:00:20,980
más voy a ser Serch y vamos a buscarlo de e-commerce.

6
00:00:21,100 --> 00:00:23,040
Pero estoy acá y.

7
00:00:24,480 --> 00:00:27,150
Borró este guión, borró también.

8
00:00:27,630 --> 00:00:34,590
Ahora esto lo voy a hacer para enseñarles otro de los usos que le podemos dar a Serge Toit y van a ver

9
00:00:34,590 --> 00:00:43,690
qué interesante que voy a decir Serge Plait menos M Y ahora voy a copiar esto lo hago por acá y digo

10
00:00:43,700 --> 00:00:44,080
enter.

11
00:00:44,690 --> 00:00:45,660
No sé como pueden ver.

12
00:00:45,660 --> 00:00:51,390
Dice que el exploit ha sido copiado hacia el directorio en el que me encuentro y si hacemos un L.S.

13
00:00:51,420 --> 00:00:57,380
Podemos ver que aquí está mi exploit y también tengo el escaneo que hice con In-App.

14
00:00:57,660 --> 00:01:03,750
Ahora lo que vamos hacer es ver qué propiedades tiene esto para ver si lo podemos editar y si, como

15
00:01:03,750 --> 00:01:08,610
pueden ver, tengo permiso de ejecución, de escritura y de lectura.

16
00:01:09,240 --> 00:01:14,550
Entonces vamos a abrir esto con una aplicación que me gusta mucho, que es Kiedis.

17
00:01:14,780 --> 00:01:16,180
Le recomiendo que le instalen.

18
00:01:16,180 --> 00:01:22,820
Si no la tienen, simplemente hacen sudo, get to edit y la instala.

19
00:01:23,070 --> 00:01:30,450
Entonces yo por acá voy a decir Yedioth y el nombre, el exploit y este signo de acá para poder seguir

20
00:01:30,450 --> 00:01:31,600
utilizando mi terminal.

21
00:01:33,390 --> 00:01:40,200
Entonces por acá vamos a editar el exploit y aquí viene la parte interesante, donde le he comentado

22
00:01:40,200 --> 00:01:48,150
ya anteriormente de que no es necesario ser un experto desarrollador, pero sí es necesario saber leer

23
00:01:48,150 --> 00:01:49,530
código por acá.

24
00:01:49,530 --> 00:01:52,980
Vamos a quitar todo esto de arriba que ya no nos interesa.

25
00:01:53,650 --> 00:02:02,460
Para tener esto un poco más limpio y ahora lo primero que vamos a editar es la BAYS o RLM, porque yo

26
00:02:02,460 --> 00:02:16,560
sé que tengo https y Chinto editar esto el DOCa Ojos por la AIPE en mi máquina que está de acá a copiar

27
00:02:16,620 --> 00:02:18,890
y vamos a pegar por acá.

28
00:02:20,350 --> 00:02:27,300
De igual modo, necesito llevarme esto hacia la parte de abajo.

29
00:02:28,380 --> 00:02:30,430
Vamos a evitar esto.

30
00:02:32,460 --> 00:02:39,960
No se copio todo, vuelvo a escribir https 2.los Caprica que más necesitamos editar.

31
00:02:40,350 --> 00:02:50,670
Yo también necesito editar la parte donde ingresar mi payload PHP Y qué tipo de pedido me interesa ingresar

32
00:02:50,670 --> 00:02:51,030
acá?

33
00:02:51,240 --> 00:02:52,020
Ya lo van a ver.

34
00:02:52,080 --> 00:02:54,360
Esa es una técnica muy interesante.

35
00:02:54,720 --> 00:02:58,860
Mi aplicación quizás directamente no es vulnerable a L.F.

36
00:02:59,250 --> 00:03:05,370
Pero yo la voy a convertir vulnerable por este lado de acá, como yo soy capaz de ejecutar código de

37
00:03:05,370 --> 00:03:06,330
manera remota.

38
00:03:06,780 --> 00:03:14,340
Yo voy a hacer que el servidor descargue un archivo que yo controlo y este archivo me va a permitir

39
00:03:14,460 --> 00:03:16,170
realizar inyección de comandos.

40
00:03:16,200 --> 00:03:17,820
Entonces vean qué interesante.

41
00:03:17,910 --> 00:03:23,680
Yo voy a obligar al servidor a descargar un archivo y he ahí la LF que voy a estar realizando.

42
00:03:23,940 --> 00:03:29,700
Luego yo voy a hacer que ese archivo que voy a subir me permita inyección de comandos.

43
00:03:30,240 --> 00:03:32,880
Entonces creo que ahora está claro lo que vamos a estar haciendo.

44
00:03:32,910 --> 00:03:35,430
Por tanto, es hora de ir manos a la obra.

45
00:03:35,550 --> 00:03:37,320
Acá vamos a personalizar esto.

46
00:03:37,410 --> 00:03:44,880
Iba mucho ocupar algo y vamos a ocupar una pequeña aplicación que tenemos en Windows para realizar descargas

47
00:03:44,940 --> 00:03:52,700
y esto se llama ser útil y para descargar con esto nosotros hacemos serch útil menos de la caché.

48
00:03:53,710 --> 00:04:01,710
Luego decimos menos F y aquí vamos a pasar la dirección de donde va a realizar la descarga, entonces

49
00:04:01,710 --> 00:04:09,310
va a mandar a descargar algo de mi dirección IP, la voy a revisar por acá rápidamente, solo voy a

50
00:04:09,310 --> 00:04:13,390
decir IPEA y tengo mi IP.

51
00:04:14,810 --> 00:04:16,250
Entonces ahora.

52
00:04:17,300 --> 00:04:18,350
La pegó por acá.

53
00:04:19,640 --> 00:04:23,790
Voy a mandar a descargar un archivo que de momento no existe.

54
00:04:23,810 --> 00:04:25,710
Voy a decir que descargue Hola!

55
00:04:26,640 --> 00:04:32,440
Y una vez que lo descargue quiero que a ese archivo que la descargó le llame también.

56
00:04:34,410 --> 00:04:40,150
Entonces aquí tengo mi salud y vamos a guardarlo, guardamos.

57
00:04:40,360 --> 00:04:44,640
Casi lo cierro, pero ya me acabo de fijar que otra cosa que necesito editar es esto.

58
00:04:44,680 --> 00:04:52,510
Recordemos que estoy en 2.3.4 en la parte de acá y yo tengo mi aplicación web, era hasta .4.

59
00:04:52,510 --> 00:04:54,250
Entonces también debo editar esto.

60
00:04:54,880 --> 00:05:00,400
Ahora, si guardamos los cambios y vamos a intentar ejecutar este código, entonces por acá vamos a

61
00:05:00,400 --> 00:05:01,150
hacer lo siguiente.

62
00:05:01,210 --> 00:05:12,130
Por un lado voy a montar mi 3 m http server para ver si el intento de descarga se realizó, pero esto

63
00:05:12,130 --> 00:05:15,530
lo vamos a hacer desde mi carpeta de Blueprint.

64
00:05:15,700 --> 00:05:20,560
Entonces copio Estoy acá y voy a borrar o ingresar a Blueprint.

65
00:05:21,070 --> 00:05:23,200
Y ahora si ejecutamos esto?

66
00:05:24,870 --> 00:05:27,530
Y por acá intentara ejecutar el script.

67
00:05:27,720 --> 00:05:31,740
Así que voy a decir Goitom y vamos a ejecutarlo.

68
00:05:31,830 --> 00:05:32,910
A ver qué pasa.

69
00:05:33,240 --> 00:05:34,980
Ocurrió un pequeño problema.

70
00:05:35,010 --> 00:05:37,710
Podríamos probar ahora con Peyton?

71
00:05:38,400 --> 00:05:41,820
Saber qué pasa y veamos que tengo un gran error.

72
00:05:42,290 --> 00:05:44,160
Y en el error que obtengo?

73
00:05:44,250 --> 00:05:49,410
Lo primero que logró localizar es ese SL.

74
00:05:50,280 --> 00:05:54,480
Seguramente estoy teniendo problemas con el certificado.

75
00:05:54,540 --> 00:05:57,330
Como pueden ver Certificate, pero estoy failed.

76
00:05:57,480 --> 00:06:00,300
Al parecer falló la verificación del certificado.

77
00:06:00,690 --> 00:06:06,300
Entonces vamos a volver a editar nuestro exploit y no vamos a ocupar el https.

78
00:06:06,440 --> 00:06:10,080
Vean que estas son las cosas que tienen que ir aprendiendo ahora.

79
00:06:10,080 --> 00:06:12,120
Qué pasa si yo dejo http?

80
00:06:12,210 --> 00:06:17,970
Yo sé que no hay nada en el puerto 80, pero recordemos que en el escaneo de enema vemos que el puerto

81
00:06:17,970 --> 00:06:19,290
80 80 está abierto.

82
00:06:19,320 --> 00:06:22,230
Podríamos ver si en la misma página está alojada en ese puerto.

83
00:06:22,440 --> 00:06:24,360
Eso lo podemos verificar rápidamente.

84
00:06:24,910 --> 00:06:25,590
Vamos a ver.

85
00:06:25,710 --> 00:06:27,750
Y en efecto, puerto 80 80.

86
00:06:27,920 --> 00:06:28,970
También tengo esta página.

87
00:06:29,400 --> 00:06:35,630
Entonces, poco a poco y ligando toda la información que he obtenido y también voy intentando, porque

88
00:06:35,640 --> 00:06:41,490
no siempre la primera que intenten la envasa el lector, pueden ver cómo voy agotando los recursos de

89
00:06:41,490 --> 00:06:42,630
poquito en poquito.

90
00:06:42,810 --> 00:06:48,900
Entonces ahora vamos a editar esto de acá también, porque debo indicar que la conexión será el puerto

91
00:06:48,900 --> 00:06:49,770
80 80.

92
00:06:49,950 --> 00:06:54,450
Guardamos y volvemos a intentar la ejecución solamente Cospeito.

93
00:06:54,680 --> 00:06:56,160
Sigue habiendo error entonces?

94
00:06:56,560 --> 00:06:59,740
Es y excelente como pueden ver a Funcionaba.

95
00:07:00,090 --> 00:07:05,750
Ahora también me gustaría mostrarles una manera de saber si voy a utilizar Payton o Payton III.

96
00:07:06,270 --> 00:07:09,660
Y es que la función me puede dar una gran pista.

97
00:07:10,020 --> 00:07:16,260
Si yo estoy en Payton III, seguramente veré algo como Pruitt y luego unos parentesis.

98
00:07:16,820 --> 00:07:21,090
Y qué pasa cuando se está Payton, cuando se está en Payton?

99
00:07:21,150 --> 00:07:28,500
No se suelen utilizar paréntesis, una característica que puedes examinar a la hora de ver el código,

100
00:07:28,990 --> 00:07:33,710
para así saber si en esa parte de acá vas a utilizar Pipe o Payton.

101
00:07:34,770 --> 00:07:40,620
Y si eso no es suficiente, entonces te sugiero que pruebes con alguno de los dos.

102
00:07:40,900 --> 00:07:44,070
Eventualmente vas a terminar acertando con el correcto.

103
00:07:44,430 --> 00:07:47,150
De todas formas, solamente son dos opciones las que tienes.

104
00:07:47,760 --> 00:07:56,820
Entonces, ahora que ejecutar con éxito mi primer ataque, lo que hacer es copiar esto y abrirlo en

105
00:07:56,820 --> 00:07:57,580
el navegador.

106
00:07:57,810 --> 00:08:01,850
Recuerden que las instrucciones que tenía al leer el exploit.

107
00:08:02,550 --> 00:08:10,580
Entonces ahora vamos a hacer esto y podemos ver que tenemos un error bastante interesante.

108
00:08:10,590 --> 00:08:15,420
Dice que System ha sido deshabilitado por razones de seguridad.

109
00:08:16,170 --> 00:08:25,080
Entonces el administrador no ha sido tan flojo porque ha previsto un ataque de este tipo, pero existen.

110
00:08:25,170 --> 00:08:29,070
No es la única manera de ejecutar códigos en PHP.

111
00:08:29,610 --> 00:08:36,300
Existe otra manera y esa es utilizando scheduled guión bajo EXEC.

112
00:08:36,780 --> 00:08:41,610
Vamos a guardar los cambios y vamos a volver a cargar.

113
00:08:42,710 --> 00:08:46,680
Tengo error porque no borré esto que había escrito antes.

114
00:08:47,310 --> 00:08:53,760
Ahora, si se fijan, terminan recibiendo un recordatorio de que debo abrir el link para que sea ejecutado

115
00:08:53,760 --> 00:08:58,740
mi código que copiamos y nuevamente vamos a intentar.

116
00:08:59,010 --> 00:09:03,240
Examinemos nuestro servidor por acá para ver qué ocurre y excelente.

117
00:09:04,020 --> 00:09:07,710
La ejecución de código ha sido todo un éxito, como pueden ver acá.

118
00:09:07,980 --> 00:09:10,320
Intentó hacer un get al archivo?

119
00:09:10,440 --> 00:09:10,860
Hola!

120
00:09:11,370 --> 00:09:13,350
Y como no hay ningún archivo.

121
00:09:13,440 --> 00:09:22,530
Hola, aquí en mi carpeta pueden ver que recibí un 404 porque ese archivo no existe, no está reflejado

122
00:09:22,530 --> 00:09:30,030
por acá porque no estoy visitando mi servidor local, pero sí que el 404 de este lado.

123
00:09:30,390 --> 00:09:32,990
Entonces ahora mejoramos un poco el exploit.

124
00:09:33,390 --> 00:09:41,480
Nosotros vamos a hacer lo siguiente en primer lugar, voy a guardar esto dentro de una variable.

125
00:09:42,420 --> 00:09:44,810
Vamos a llamar esto iguala.

126
00:09:45,370 --> 00:09:53,360
Voy a dar un poco más y ahora por acá voy a decir lo siguiente bailout más igual.

127
00:09:54,810 --> 00:09:56,920
Y vamos a añadir esto.

128
00:09:58,110 --> 00:10:07,710
Voy a imprimir lo que me devuelve la ejecución de este código, porque si yo ejecuto este código y supongamos

129
00:10:07,710 --> 00:10:10,890
que hubo un error en la ejecución, cómo puedo yo saberlo?

130
00:10:11,280 --> 00:10:15,570
Desde el navegador lo voy a saber con esto que estoy realizando acá.

131
00:10:15,750 --> 00:10:23,490
Entonces vamos a decir hehco a mi variable que acabo de declarar de este lado, así que ahora por acá

132
00:10:23,490 --> 00:10:23,870
cierro.

133
00:10:24,610 --> 00:10:33,230
Coma Voy a guardar y vamos a ejecutar nuevamente para ver si recibo un mensaje de información aquí en

134
00:10:33,230 --> 00:10:33,930
el navegador.

135
00:10:34,280 --> 00:10:37,530
Entonces hasta ahora vamos a decir esto nuevamente.

136
00:10:38,660 --> 00:10:42,680
Copiamos esto y lo vamos a llevar hacia acá.

137
00:10:43,310 --> 00:10:49,520
Como pueden ver ahora, si tengo algo de información acerca del comando que ejecuté en la parte de acá,

138
00:10:49,550 --> 00:10:57,830
no me aparecía nada acerca del comando Serch ni útil, y ahora sí me aparece y dice que el comando falló.

139
00:10:58,220 --> 00:11:05,210
Seguramente falló porque en este lado vemos que el archivo a descargar no fue encontrado.

140
00:11:05,630 --> 00:11:10,520
Entonces ahora vamos a continuar con la personalización de mi exploit.

141
00:11:11,370 --> 00:11:16,460
Voy a mandar a descargar sin mandar a descargar exploit PHP.

142
00:11:16,950 --> 00:11:20,090
Ya luego veremos que va a ser esto de exploit PHP.

143
00:11:21,010 --> 00:11:24,050
Por acá también va a ser exploit PHP.

144
00:11:24,710 --> 00:11:34,210
Guardamos ahora aquí y yo voy a entrar a Blueprint y vamos a crear el archivo exploit PHP.

145
00:11:34,730 --> 00:11:35,960
Entonces acaece, lavábamos.

146
00:11:35,970 --> 00:11:44,780
Vamos a decir lo siguiente voy a ingresar el siguiente código PHP, es decir, PHP, ecko y vamos a

147
00:11:44,780 --> 00:11:47,810
ocupar lo mismo que ya vimos antes.

148
00:11:48,470 --> 00:11:55,490
Hehco para ver qué es lo que me devuelve la ejecución del código y qué código PHP voy a ejecutar.

149
00:11:55,940 --> 00:12:02,020
Voy a hacer lo siguiente quiero que me recoja en la web R.L.

150
00:12:02,360 --> 00:12:08,840
Lo que va a estar dentro de un parámetro, entonces eso lo voy a hacer de la siguiente forma vea signo

151
00:12:08,840 --> 00:12:10,670
de dólar, ni un bajo.

152
00:12:11,750 --> 00:12:17,610
Ahora ocupo estos símbolos y por acá voy a ocupar estas comillas dobles.

153
00:12:18,180 --> 00:12:20,600
Y cuál va a ser el parámetro que va a estar en la Borrel?

154
00:12:20,710 --> 00:12:21,710
Va a ser CMD.

155
00:12:22,880 --> 00:12:30,350
Entonces aquí estoy diciendo quiero que ejecutes lo que se esté guardando dentro del parámetro CMD y

156
00:12:30,360 --> 00:12:34,130
me imprimación lo que ocurre con esa ejecución.

157
00:12:34,270 --> 00:12:36,110
Lo que te devuelve la ejecución de código.

158
00:12:37,290 --> 00:12:43,450
Entonces ahora por aquí vamos a cerrar la orden con puntico ma guardamos y vamos a cerrar también.

159
00:12:43,790 --> 00:12:48,550
Ahora que tenemos esto, vamos a volver a ejecutar nuestro exploit.

160
00:12:49,930 --> 00:12:57,850
Vamos a copiar y vamos a pegar por acá, por acá tengo los resultados y se que el comando Ser útil se

161
00:12:57,850 --> 00:13:05,860
ejecutó de manera exitosa, entonces ahora no es el error de antes, porque en esta ocasión sí encontré

162
00:13:05,860 --> 00:13:07,630
el archivo que iba a descargar.

163
00:13:07,870 --> 00:13:09,970
Lo pueden ver reflejado en este lado.

164
00:13:10,530 --> 00:13:16,190
Hizo un guests al exploit punto PHP con un mensaje de 200.

165
00:13:16,210 --> 00:13:17,590
Eso quiere decir un OK.

166
00:13:17,800 --> 00:13:19,450
Todo funcionó a la perfección.

167
00:13:20,530 --> 00:13:24,940
Ahora, en dónde se encuentra mi archivo que se acaba de descargar?

168
00:13:25,360 --> 00:13:30,010
Yo acabo de mandar a realizar la descarga desde este lugar.

169
00:13:31,060 --> 00:13:37,570
El archivo con confíar punto PHP fue el que se encargó de realizar la descarga.

170
00:13:37,830 --> 00:13:41,740
Entonces esta descarga debería estar en el directorio que vemos por acá.

171
00:13:42,340 --> 00:13:49,930
Vamos a borrar esto para ver si podemos enumerar lo que hay en el directorio y si se puede por acá tenemos

172
00:13:49,990 --> 00:13:51,820
el exploit punto PHP.

173
00:13:51,880 --> 00:13:53,380
Hacemos clic acá.

174
00:13:54,250 --> 00:13:57,830
Ahora vamos a ver si funciona el ataque de L.F.

175
00:13:57,830 --> 00:14:00,710
Y entonces signo de interrogación.

176
00:14:00,760 --> 00:14:09,250
Luego CMD iguala y como estamos en Windows, si queremos listar archivos dentro del directorio actual

177
00:14:09,250 --> 00:14:12,490
en el servidor necesitaríamos utilizar dir..

178
00:14:13,270 --> 00:14:20,890
Presionamos Enter y como pueden ver enumerado y como pueden ver, he logrado enumerar exitosamente mis

179
00:14:20,890 --> 00:14:21,580
archivos.

180
00:14:21,640 --> 00:14:27,640
Por acá tengo apliqué un punto PHP, configure PHP, exploit cunto, php.

181
00:14:28,480 --> 00:14:35,050
Eran las cosas que yo veía cuando borré esto y acá se fijan.

182
00:14:35,140 --> 00:14:38,200
Esto que vemos aquí es lo que me acaba de volver.

183
00:14:38,200 --> 00:14:44,320
De este lado podemos ejecutar el comando Guama para ver quiénes somos ahorita con esta ejecución de

184
00:14:44,320 --> 00:14:48,580
código y somos NT Authority, insisten.

185
00:14:48,690 --> 00:14:49,240
Excelente.

186
00:14:49,390 --> 00:14:54,880
Eso quiere decir que actualmente somos los dueños del servidor desde este lugar, pero no nos vamos

187
00:14:54,880 --> 00:14:56,140
a conformar con eso.

188
00:14:56,530 --> 00:14:59,710
Estar ejecutando comandos desde acá no es muy cómodo.

189
00:14:59,830 --> 00:15:08,500
Entonces, en la próxima clase nosotros estaremos viendo cómo obtener un H'El para trabajar desde acá

190
00:15:08,770 --> 00:15:13,300
en vez de estar trabajando de manera incómoda en este lugar, así que lo espero en la próxima.
