Lab 10 - Web Assembly
Este lab lo podrás hacer enteramente en tu sistema operativo nativo pues solo usaremos el browser Chrome (que tiene mejores capacidades de debugging wasm que Firefox )
Ejercicio 1
-
Accede a https://remoodle.fun/4702/wasm/4702-intro01.html. Entra un número entero en la caja y da Submit.
-
¿Cómo se llama el file .wasm que está siendo leido en el script de javascript del html? Muestra la línea de javascript que lee ese archivo.
-
¿Cómo se llama la función exportada del wasm que está siendo ejecutada por el javascript?
-
¿Cuántos argumentos recibe? Muestra evidencia y explica.
-
Haz reverse engineering al código wasm (puedes verlo en el debugger) para que deduzcas el número que revelará el mensaje de éxito.
Ejercicio 2
Has reverse engineering al https://remoodle.fun/4702/wasm/challenge1.html para que deduzcas cuál es el UserName y el Password que revelan el mensaje de éxito.
Algunas consideraciones que te pueden ayudar.
- ¿Cuál es el archivo
wasmque se está usando? - ¿Cuál es la función declarada en el
wasmque se está invocando desde el javascript? - ¿Cuántos parámetros recibe la función?
- Los argumentos que recibe esa función son direcciones a strings. ¿Que cambios realiza la
$func2al primer argumento que recibe ($var0)? Hint mira la memoria antes y después. - La
$func0recibe dos argumentos que corresponden a las direcciones de dos strings. ¿Qué contienen?