tag:blogger.com,1999:blog-5399811056563385935.post7151206382239447836..comments2023-09-21T14:48:16.670+02:00Comments on Security By Default: Forense de SQLite VI - Práctica Yago Jesushttp://www.blogger.com/profile/16830228750771246202noreply@blogger.comBlogger4125tag:blogger.com,1999:blog-5399811056563385935.post-85124949675868437222012-09-10T15:21:27.823+02:002012-09-10T15:21:27.823+02:00Un detalle aleatorio sobre este documento. En el p...Un detalle aleatorio sobre este documento. En el punto 6 dice:<br />'En la pagina 2 parece haber una celda borrada en el offset 0x20. Los primeros bytes (dedicados al tamaño del payload, identificador de fila y tamaño de la cabecera del payload estan a 0<br />Esto es debido a que cuando se borra un registro en sqlite ese trozo se marca como "fragmento". En el offset 7 de la cabecera de la pagina BTree tenemos el número de fragmentos (espacios libres de más de 4 bytes entre celdas). En cada fragmento, en los primeros 4 bytes se escribe el offset del siguiente fragmento y el tamaño de ese fragmento en la página. Volviendo a la solucion:<br />$ xxd -s `echo -e "ibase=16\n400+20"|bc` -l 10 -p personas.sqlite0000006e171529199019<br />0x0000 = indica que no hay más fragmentos.<br />0x006e = 110, lo que significa que ese fragmento ocupa 110 bytes, por eso no tiene sentido al intentar interpretarlo como tamaño del payloadMarcos Agüero Rodríguezhttp://www.facebook.com/wiredratnoreply@blogger.comtag:blogger.com,1999:blog-5399811056563385935.post-16214008545289863112012-09-10T14:57:13.572+02:002012-09-10T14:57:13.572+02:00Lo he estado leyendo y es genial !! Enhorabuena po...Lo he estado leyendo y es genial !! Enhorabuena por el currazo !! Lastima que no hayamos podido publicarloAlejandro Ramoshttp://www.securitybydefault.comnoreply@blogger.comtag:blogger.com,1999:blog-5399811056563385935.post-74602389412653274632012-09-10T04:40:47.247+02:002012-09-10T04:40:47.247+02:00Alex, genial la serie, te has pegado un buen curro...Alex, genial la serie, te has pegado un buen curro dejando masticadito for dummies el formato de sqlite, que tiene unos cuantos gotchas de los que te pueden tener horas si no lees con cuidado la specificacion.<br />Hace tiempo que tenia pensado echar un vistazo a algo asi. Los B-trees no son los arboles mas eficientes, pero son los que mas se usan en BD porque aprovechan la localidad espacial como cache (se balancean menos y cada nodo tiene mas informacion que en un binario balanceado), asi que con lo de que hace mucho que no le metia mano a nada de forense tampoco, me has dado la excusa perfecta para echar unas horas esta noche mirando esto en detalle y matar dos pajaros de un tiro.<br />Aqui dejo un link a las notas que he ido tomando con las contestaciones a las preguntas que planteas. Te dejo de bonus a la pregunta 9 las 12 operaciones que has realizado para dejar el fichero asi, jejeje. (Spoiler alert! El que no quiera las soluciones que no siga el enlace!)<br />https://docs.google.com/document/d/1SX3D-Ifflsm48hcairkxNTHtpZ4memSfmYWO0W-_otA/edit<br /><br /><br /><br />A ver que tal la herramienta que te has currado, porque haciendo esto se me han ocurrido un par de ideas sencillas de implementar que pueden quedar muy chulas.<br /><br /><br />Saludos y gracias de nuevo por la serie! Mas de esto!!Palakonoreply@blogger.comtag:blogger.com,1999:blog-5399811056563385935.post-59014410424801277552012-09-08T23:32:02.799+02:002012-09-08T23:32:02.799+02:00Mmm, no se si lo he hecho bien, pero creo que pued...Mmm, no se si lo he hecho bien, pero creo que puedo tener algunas:<br /><br /><br />2. 3<br />6. Robin Hood de los bosques<br />7.Comentarios de Dick Grayson y Clark kent<br /><br /><br />Uso OSX y en la primera parte no vi ninguna herramienta para mi plataforma. No hay alguna?Ivan Nietohttp://twitter.com/Valonoreply@blogger.com