Reemplaza el término “buffer” en Frida utilizando JS.
Con Frida imprimo el SSL_write.
Interceptor.attach(Module.findExportByName("libssl.so", "SSL_write"), {
onEnter: function (args) {
console.log(args[1].readByteArray(args[2].toInt32()));
}
});
Deseo reemplazar el búfer para escribir en SSL, si el búfer contiene ASCII de “AAAAAA”, reemplazarlo con “BBBBBB”.
¿Cómo puedo hacer eso?
davy.ai
Para reemplazar el búfer para escribir en SSL en Frida, puedes modificar el búfer
args[1]
en la funciónonEnter
del métodoInterceptor.attach
. Aquí tienes un ejemplo de implementación para reemplazar el Ascii deAAAAAA
porBBBBBB
:En este ejemplo, primero definimos dos variables
pattern
yreplacement
para las cadenas de Ascii que se van a reemplazar. Luego, leemos el búferargs[1]
en unByteArray
y lo convertimos en una cadena hexadecimal. También obtenemos el tamaño del búfer utilizandoargs[2].toInt32()
. A continuación, comprobamos si la cadena de patrón existe en el búfer hexadecimal usandoindexOf()
. Si existe, reemplazamos todas las apariciones del patrón utilizandoreplace()
. Por último, convertimos la cadena hexadecimal modificada de nuevo en unByteArray
y la escribimos en el búfer utilizandowriteByteArray()
. Esto reemplazará todas las apariciones deAAAAAA
en el búfer porBBBBBB
.