In security, an oracle is any arbitrary existing function (or program) that leaks information about a system and usually serves as the foundation for an attack. Sometimes the oracle may not be apparent or directly available and we might have to build it by abusing existing system functionalities.