Del Manual de Gray Hat Hacking The Ethical Hacker, 4ª edición:
Enumeración de canalizaciones con nombre
Las canalizaciones con nombre son similares a las secciones compartidas en
que los desarrolladores solían pensar, incorrectamente, que las tuberías con nombre aceptan
solo datos confiables y bien formados de usuarios o programas que se ejecutan en el
mismo nivel de privilegio que el programa que ha creado la canalización con nombre.
Hay (al menos) tres amenazas de elevación de privilegios con nombre
tubería. Primero, las tuberías con nombre ACL débilmente pueden ser escritas por
atacantes de bajo privilegio, que pueden causar fallas lógicas o de análisis
en un programa que se ejecuta en un nivel de privilegio superior. Segundo, si los atacantes
puede engañar a los usuarios con privilegios más altos o procesos para conectarse a sus
en una tubería con nombre, los atacantes pueden suplantar al llamante. Esta
La funcionalidad de suplantación de identidad está integrada en la canalización con nombre.
infraestructura. Finalmente, los atacantes también pueden encontrar información.
reveló desde la tubería que de otro modo no podrían
acceso. AccessChk no parece admitir canalizaciones con nombre de forma nativa, pero
Mark Russinovich de Sysinternals creó una herramienta específicamente para
enumerar las tuberías con nombre. Aquí está la salida de PipeList.exe :
PipeList v1.1
by Mark Russinovich
http://www.sysinternals.com
Pipe Name Instances Max Instances
--------- --------- -------------
TerminalServer\AutoReconnect 1 1
InitShutdown 2 -1
lsass 3 -1
protected_storage 2 -1
SfApi 2 -1
ntsvcs 6 -1
scerpc 2 -1
net\NtControlPipe1 1 1
net\NtControlPipe2 1 1
net\NtControlPipe3 1 1
La GUI de Process Explorer mostrará el descriptor de seguridad para
tuberías con nombre. El ataque " en cuclillas " o "atrayente" (el segundo
amenaza de elevación de privilegios mencionada anteriormente) requiere una
atacante que tiene el SeImpersonatePrivilege para influir en el comportamiento
de un proceso que se ejecuta en un nivel de privilegio superior. Un ejemplo
descubierto por Cesar Cerrudo involucró a un atacante que pudo establecer el
ruta del archivo en el registro para la ruta del archivo de registro de un servicio a un
valor arbitrario. El ataque consistió en establecer la ruta del archivo de registro a
\ ?? \ Pipe \ AttackerPipe, creando esa canalización con nombre, causando que un evento
ser registrado, y suplantando a la persona que llama LocalSystem que se conecta a
\ ?? \ Pipe \ AttackerPipe.