Skip to main content

¿Qué es el escalonamiento de privilegios?

Privilege escalation 750x485 18feb16 es

En mi entrada de blog anterior, examinamos las medidas que las organizaciones utilizan para hacer cumplir las políticas de autorización. Las políticas de autorización y los métodos que utilizamos para hacerlas cumplir ―los controles de acceso, permisos de usuario o privilegios―, están destinados a proteger la información sensible contra los accesos no autorizados, el uso compartido, la modificación o eliminación. Estas políticas también pueden proteger contra la ejecución no autorizada de aplicaciones en un equipo.

Los actores maliciosos, delincuentes o partes que participan en el espionaje informático están motivados ―financieramente, sociopolíticamente o por notoriedad― por derrotar las políticas de autorización para tener acceso a los datos empresariales clasificados o sensibles, para estafar a un comerciante de productos o para robar dinero. A menudo, estos atacantes comprometen las cuentas de usuario. En forma alternativa, pueden buscar vulnerabilidades que puedan aprovechar para obtener el control de un sistema informático o aplicación.

A través de tales vías de abuso iniciales, un atacante puede obtener ciertos privilegios de acceso. Luego, el atacante sondeará progresivamente al sistema que está comprometido para ganar más privilegios de los obtenidos inicialmente, con la esperanza de acceder a información sensible de otras cuentas, o incluso para obtener el control administrativo total sobre un sistema. Cuando un atacante amplía su acceso no autorizado inicial de esta manera, llamamos a esa actividad un ataque de escalonamiento de privilegios.

Escalonamiento de privilegios horizontal

Supongamos que un atacante ha ganado acceso a una cuenta bancaria en línea. Este atacante está intentando robar el dinero y el dinero que ha robado a partir de esta cuenta no es suficiente. Entonces sondeará información o intentará diversos abusos para obtener acceso a otras cuentas. Esto se llama un escalamiento de privilegios horizontal porque nuestro atacante se mueve lateralmente a través de cuentas de privilegios similares.

¿Cómo se mueve lateralmente? Tras ingresar, nuestro atacante puede examinar los hipervínculos que este banco devuelve para ver si revelan alguna información respecto a la manera en que el contenido está organizado en el sitio bancario. En los hipervínculos puede descubrir que el banco codifica el número de cuenta de un cliente de una determinada manera. Entonces escribirá e inyectará hipervínculos al sitio web para comprobar si la seguridad del sistema bancario es defectuosa y si el fallo le permite ver otros datos de las cuentas de cliente o (mejor), transferir fondos. Si tiene éxito, podrá acceder a varias cuentas antes de que el banco detecte sus actividades o un cliente informe un robo. A esto se le llama una técnica de referencia de objeto directo.

Escalonamiento de privilegios vertical

A menudo los ataques son motivados para obtener el control total de un sistema informático, a fin de colocar al sistema al servicio de cualquier uso que elijan. Cuando un atacante comienza con una cuenta de usuario comprometida y es capaz de ampliar o elevar los privilegios de usuario único que tiene cuando obtiene privilegios administrativos completos o "raíz", llamamos a tales ataques escalonamiento de privilegios vertical.

Consideremos un escenario en el cual nuestro atacante ha obtenido el acceso no autorizado a una cuenta de usuario dentro de un sistema informático. El atacante realizará un reconocimiento local para ver aquello que el usuario comprometido puede hacer y a qué tipo de información puede acceder, ya sea que pueda escribir códigos o compilar programas a partir de esta cuenta, y mucho más. Si es capaz de descargar y ejecutar el software en la computadora capturada, puede ejecutar el software abusivo. Hurgará hasta que encuentre un error de vulnerabilidad o un error de configuración que pueda aprovechar para convertirse en un administrador de la computadora que desea capturar, o abandonará este sistema y pasará a otra computadora.

Un atacante también puede pasar por alto el acceso a la información protegida o sensible a través de vías remotas. Por ejemplo, al diseñar cuidadosamente las consultas que se aprovechan de una vulnerabilidad en una aplicación web implementada en un sitio a capturar, un atacante puede insertar instrucciones directamente a la aplicación de base de datos del sitio, lo cual le permite acceder a los registros ostensiblemente protegidos o volcar todo el contenido de una base de datos (véase inyección de SQL). Los atacantes tienen una gran cantidad de abusos para probar, aunque a menudo los atacantes simplemente toman ventaja de la aplicación web que carece de alguna validación para el tipo de datos que un usuario envía: en este tipo de situaciones, la aplicación web pasa cualquier cosa que el atacante ingrese en un formulario web para la base de datos, y la base de datos ejecuta lo que recibe, a menudo con consecuencias desastrosas que incluyen la divulgación completa de la base de datos, la alteración o corrupción de datos.

¡Fortalezca la autenticación y valide todos los datos!

Existen tres remedios simples para reducir los ataques de escalonamiento de privilegios, ellos son: (1) que sus usuarios o clientes utilicen el método de autenticación más fuerte posible y lo utilicen de manera inteligente (por ejemplo, con contraseñas largas, fuertes o complejas); (2) analizar sus aplicaciones web en busca de vulnerabilidades conocidas para minimizar los ataques de abuso; y (3) validar los datos en cada envío de formularios utilizado en su sitio web. Aplique esto y reducirá la exposición de su organización a los ataques de escalonamiento de privilegios.

Comments

    Domain Name System
    Internationalized Domain Name ,IDN,"IDNs are domain names that include characters used in the local representation of languages that are not written with the twenty-six letters of the basic Latin alphabet ""a-z"". An IDN can contain Latin letters with diacritical marks, as required by many European languages, or may consist of characters from non-Latin scripts such as Arabic or Chinese. Many languages also use other types of digits than the European ""0-9"". The basic Latin alphabet together with the European-Arabic digits are, for the purpose of domain names, termed ""ASCII characters"" (ASCII = American Standard Code for Information Interchange). These are also included in the broader range of ""Unicode characters"" that provides the basis for IDNs. The ""hostname rule"" requires that all domain names of the type under consideration here are stored in the DNS using only the ASCII characters listed above, with the one further addition of the hyphen ""-"". The Unicode form of an IDN therefore requires special encoding before it is entered into the DNS. The following terminology is used when distinguishing between these forms: A domain name consists of a series of ""labels"" (separated by ""dots""). The ASCII form of an IDN label is termed an ""A-label"". All operations defined in the DNS protocol use A-labels exclusively. The Unicode form, which a user expects to be displayed, is termed a ""U-label"". The difference may be illustrated with the Hindi word for ""test"" — परीका — appearing here as a U-label would (in the Devanagari script). A special form of ""ASCII compatible encoding"" (abbreviated ACE) is applied to this to produce the corresponding A-label: xn--11b5bs1di. A domain name that only includes ASCII letters, digits, and hyphens is termed an ""LDH label"". Although the definitions of A-labels and LDH-labels overlap, a name consisting exclusively of LDH labels, such as""icann.org"" is not an IDN."