Hello tout le monde , je viens update cette conversation,
j'ai utilisé frida, voici mon code JS injecté
var connect_p = Module.getExportByName(null, 'connect');
Interceptor.attach(connect_p, {
onEnter: function (args) {
// int connect(int sockfd, const struct sockaddr *addr,
// socklen_t addrlen);
this.sockfd = args[0];
var sockaddr_p = args[1];
this.port = 256 * sockaddr_p.add(2).readU8() + sockaddr_p.add(3).readU8();
this.addr = "";
for (var i = 0; i < 4; i++) {
this.addr += sockaddr_p.add(4 + i).readU8(4);
if (i < 3) this.addr += '.';
}
var newport = 443;
sockaddr_p.add(2).writeByteArray([Math.floor(newport / 256), newport % 256]);
sockaddr_p.add(4).writeByteArray([127, 0, 0, 1]);
console.log("connection to:", this.addr, this.port);
},
onLeave: function (retval) {
console.log("retval:", retval.toInt32());
},
})
pour expliquer brièvement ce qu'elle fait ce code, c'est que pendant l'authentification, frida altère l'IP/port de destination.
après avoir envoyé ces packets de check (qui sont envoyé normalement par le modérateur), j'ai remarqué que j'ai les memes réponses, frida ne nous met pas à l'abris.
je vous tiens au courant dès que j'ai trouvé une solution