El ataque de "oráculo de relleno" del que estás hablando es mejor conocido como ataque de Bleichenbacher contra RSA . El atacante envía claves cifradas mal formadas; algunos todavía (por pura casualidad) descifran correctamente, aunque con un contenido descifrado que el atacante no puede saber. Si el comportamiento del servidor cambia, dependiendo de si el descifrado falló ("mal relleno") o no (el servidor usa el resultado del descifrado y continúa), el atacante puede obtener información sobre la clave privada RSA.
Una solución común es, de hecho, ocultar el cambio de comportamiento: cuando falla el descifrado, el servidor simplemente usa un valor aleatorio en lugar del resultado del descifrado. Por lo tanto, el atacante ya no puede distinguir entre "relleno incorrecto" y "el relleno fue correcto y dio como resultado una basura descifrada al azar". De hecho, esto es bastante difícil de implementar correctamente, especialmente porque los atacantes industriales pueden aplicar ataques de tiempo y notificar cuando el servidor utiliza un reemplazo aleatorio, debido al tiempo extra necesario para generar el reemplazo.
OAEP es nominalmente inmune al ataque de Bleichenbacher, y fue diseñado precisamente con ese objetivo; sin embargo, esto todavía requiere que se implemente correctamente, lo cual, de nuevo, no es tan fácil como parece. Se aplica la recomendación habitual: si está escribiendo su propio protocolo o implementación de criptografía, entonces lo está haciendo mal. Debe usar un protocolo existente e implementaciones existentes donde se hayan explorado y corregido detalles como la resistencia a los ataques de sincronización a través de años de pruebas en el campo.