SCW图标
英雄背景无分隔线
博客

Coders Conquer Security: Serie Share & Learn - Control de acceso roto

Jaap Karan Singh
发布于 2019 年 5 月 09 日
最后更新于 2026年3月6日

Cuando crea una aplicación empresarial, ya sea para uso interno o externo por parte de sus clientes, es probable que no permita que todos los usuarios realicen todas las funciones. Si lo hace, puede ser vulnerable a que se interrumpa el control de acceso.

Veamos qué es un control de acceso roto, por qué es tan peligroso y cómo solucionarlo.

Comprenda el control de acceso roto

El control de acceso interrumpido se produce cuando el código de la aplicación no cuenta con los controles de seguridad o acceso adecuados. También puede ocurrir cuando una aplicación está mal configurada de alguna manera, lo que permite el acceso a funciones o páginas a las que el usuario no debería tener acceso.

Si te ocupas de las finanzas de tu empresa, es posible que puedas depositar dinero en ciertas cuentas o transferir dinero entre las cuentas de tu empresa. Sin embargo, no deberías tener acceso a retirar efectivo de esas cuentas ni a transferir dinero a otras cuentas. Si no se cuenta con los controles de acceso adecuados, es posible que tus empleados puedan realizar más funciones de las necesarias.

Estas comprobaciones se pueden realizar dentro del código o en los archivos de configuración. Por ejemplo, puede haber archivos de configuración XML que indiquen al marco de la aplicación web qué usuarios pueden acceder a qué páginas. Esto garantiza que los usuarios solo puedan acceder a las funciones que están autorizados a usar.

Por qué es peligroso romper el control de acceso

Considera este ejemplo: un atacante se ha dado cuenta de que el código de creación de tu cuenta de usuario puede manipularse, lo que le permite crear un usuario administrador con una simple solicitud de publicación. Pueden enviar una solicitud con el nombre de usuario y la contraseña y, a continuación, cambiarla para incluir el rol de administrador en la URL como parámetro o en el cuerpo de la solicitud. El atacante inicia sesión en la aplicación y obtiene instantáneamente derechos de administrador.

No siempre tiene que ser un atacante malintencionado que penetre en un sistema. Sin los controles de acceso adecuados, es posible que se divulgue información confidencial que no debería compartirse entre departamentos. Imagínese si cualquier empleado de la empresa pudiera ver los datos financieros o de nómina de RRHH. ¿Qué pasaría si algún empleado pudiera ver que se avecinan despidos debido a la mala situación financiera de la empresa? Esto podría dañar su moral y la reputación de su empresa.

También se podría perder la información confidencial de los clientes. Las empresas suelen almacenar información personal de los clientes que utilizan sus servicios. Tenga cuidado de no exponer esta información accidentalmente debido a la falta de control de acceso. Por ejemplo, si su sistema permite a los usuarios solicitar su historia clínica, ¿también tienen la posibilidad de solicitar y ver la información médica de otras personas? Si la URL contiene un número de identificación de cliente, los atacantes podrían aumentar ese número de identificación de cliente una y otra vez hasta encontrar uno que coincida con otro cliente, revelando así sus datos personales.

Derrota el control de acceso roto

El control de acceso basado en roles (RBAC) es una herramienta muy eficaz para implementar un control de acceso por sonido. Quienes utilizan Active Directory pueden estar familiarizados con la idea de creación de grupos y dar acceso a ciertos elementos del grupo, en lugar de hacerlo de forma individual. Las aplicaciones funcionan de la misma manera, ya que utilizan roles para definir quién puede ver qué.

Esto tiene dos ventajas. En primer lugar, no es necesario cambiar una función cuando alguien deja el rol de administrador. Si alguien anteriormente era administrador y ahora ya no debería serlo, basta con colocar a una nueva persona en el rol de administrador y eliminar a la persona anterior del rol. El código comprueba si el usuario tiene la función de administrador en lugar de comprobar si cada usuario individual tiene acceso a una página o función determinada.

La segunda ventaja es evitar una pesadilla de mantenimiento. Con el tiempo, será imposible gestionar un control de acceso tan detallado que permita a cada persona asociarse con cada función o página posible. Los roles facilitan mucho las cosas, ya que se pueden agregar varias personas a un rol. Un rol puede incluir a toda la empresa, mientras que otro puede tener solo cinco personas. Esto hace que la gestión de las funciones sea más eficiente, ya que habrá menos funciones que gestionar. Una empresa de 10 000 personas podría tener solo 100 funciones en lugar de tener 10 000 veces la cantidad de funciones de su aplicación. Investigue el marco de aplicación que haya elegido para ver qué opciones existen para un control de acceso sólido.

También es fundamental utilizar el control de acceso a nivel de función. Proteja el acceso a todas las funciones exigiendo a los usuarios que pasen determinadas comprobaciones de control de acceso. Utilice el principio del mínimo privilegio, denegando el acceso de forma predeterminada y abriendo el acceso únicamente cuando sea necesario. Puede resultar difícil recordar cómo implementar el control de acceso para cada función. Utilice un componente central para administrar y hacer cumplir el control de acceso.

Proteja sus funciones delicadas

La interrupción del control de acceso puede dejar sus datos y su aplicación abiertos a ataques y explotación. Los datos de los clientes que no estén protegidos adecuadamente podrían provocar una violación masiva de datos, lo que perjudicaría su reputación y sus ingresos.

La interrupción del control de acceso también podría provocar la apropiación de la cuenta si los atacantes pueden acceder a funciones a las que no deberían acceder. Usa un control de acceso adecuado a nivel funcional y mantendrás tu aplicación a salvo de atacantes malintencionados e incluso de intrusos accidentales.

¿Crees que estás harto del acceso a nivel funcional? Ahora puedes ponerte el reto de reparar un control de acceso roto: [Empieza aquí]

查看资源
查看资源

Cuando crea una aplicación empresarial, ya sea para uso interno o externo por parte de sus clientes, es probable que no permita que todos los usuarios realicen todas las funciones. Si lo hace, puede ser vulnerable a que se interrumpa el control de acceso.

感兴趣了解更多吗?

Jaap Karan Singh是一位安全编码布道者,首席辛格和Secure Code Warrior 的共同创始人。

了解更多

Secure Code Warrior 您的组织在软件开发全生命周期中保护代码安全,并营造将网络安全置于首位的企业文化。无论您是应用安全管理员、开发人员、首席信息安全官,还是任何与安全相关的工作人员,我们都能助力您的组织降低不安全代码带来的风险。

预约演示
分享到:
领英品牌社交x 标志
作者
Jaap Karan Singh
2019年5月9日出版

Jaap Karan Singh是一位安全编码布道者,首席辛格和Secure Code Warrior 的共同创始人。

分享到:
领英品牌社交x 标志

Cuando crea una aplicación empresarial, ya sea para uso interno o externo por parte de sus clientes, es probable que no permita que todos los usuarios realicen todas las funciones. Si lo hace, puede ser vulnerable a que se interrumpa el control de acceso.

Veamos qué es un control de acceso roto, por qué es tan peligroso y cómo solucionarlo.

Comprenda el control de acceso roto

El control de acceso interrumpido se produce cuando el código de la aplicación no cuenta con los controles de seguridad o acceso adecuados. También puede ocurrir cuando una aplicación está mal configurada de alguna manera, lo que permite el acceso a funciones o páginas a las que el usuario no debería tener acceso.

Si te ocupas de las finanzas de tu empresa, es posible que puedas depositar dinero en ciertas cuentas o transferir dinero entre las cuentas de tu empresa. Sin embargo, no deberías tener acceso a retirar efectivo de esas cuentas ni a transferir dinero a otras cuentas. Si no se cuenta con los controles de acceso adecuados, es posible que tus empleados puedan realizar más funciones de las necesarias.

Estas comprobaciones se pueden realizar dentro del código o en los archivos de configuración. Por ejemplo, puede haber archivos de configuración XML que indiquen al marco de la aplicación web qué usuarios pueden acceder a qué páginas. Esto garantiza que los usuarios solo puedan acceder a las funciones que están autorizados a usar.

Por qué es peligroso romper el control de acceso

Considera este ejemplo: un atacante se ha dado cuenta de que el código de creación de tu cuenta de usuario puede manipularse, lo que le permite crear un usuario administrador con una simple solicitud de publicación. Pueden enviar una solicitud con el nombre de usuario y la contraseña y, a continuación, cambiarla para incluir el rol de administrador en la URL como parámetro o en el cuerpo de la solicitud. El atacante inicia sesión en la aplicación y obtiene instantáneamente derechos de administrador.

No siempre tiene que ser un atacante malintencionado que penetre en un sistema. Sin los controles de acceso adecuados, es posible que se divulgue información confidencial que no debería compartirse entre departamentos. Imagínese si cualquier empleado de la empresa pudiera ver los datos financieros o de nómina de RRHH. ¿Qué pasaría si algún empleado pudiera ver que se avecinan despidos debido a la mala situación financiera de la empresa? Esto podría dañar su moral y la reputación de su empresa.

También se podría perder la información confidencial de los clientes. Las empresas suelen almacenar información personal de los clientes que utilizan sus servicios. Tenga cuidado de no exponer esta información accidentalmente debido a la falta de control de acceso. Por ejemplo, si su sistema permite a los usuarios solicitar su historia clínica, ¿también tienen la posibilidad de solicitar y ver la información médica de otras personas? Si la URL contiene un número de identificación de cliente, los atacantes podrían aumentar ese número de identificación de cliente una y otra vez hasta encontrar uno que coincida con otro cliente, revelando así sus datos personales.

Derrota el control de acceso roto

El control de acceso basado en roles (RBAC) es una herramienta muy eficaz para implementar un control de acceso por sonido. Quienes utilizan Active Directory pueden estar familiarizados con la idea de creación de grupos y dar acceso a ciertos elementos del grupo, en lugar de hacerlo de forma individual. Las aplicaciones funcionan de la misma manera, ya que utilizan roles para definir quién puede ver qué.

Esto tiene dos ventajas. En primer lugar, no es necesario cambiar una función cuando alguien deja el rol de administrador. Si alguien anteriormente era administrador y ahora ya no debería serlo, basta con colocar a una nueva persona en el rol de administrador y eliminar a la persona anterior del rol. El código comprueba si el usuario tiene la función de administrador en lugar de comprobar si cada usuario individual tiene acceso a una página o función determinada.

La segunda ventaja es evitar una pesadilla de mantenimiento. Con el tiempo, será imposible gestionar un control de acceso tan detallado que permita a cada persona asociarse con cada función o página posible. Los roles facilitan mucho las cosas, ya que se pueden agregar varias personas a un rol. Un rol puede incluir a toda la empresa, mientras que otro puede tener solo cinco personas. Esto hace que la gestión de las funciones sea más eficiente, ya que habrá menos funciones que gestionar. Una empresa de 10 000 personas podría tener solo 100 funciones en lugar de tener 10 000 veces la cantidad de funciones de su aplicación. Investigue el marco de aplicación que haya elegido para ver qué opciones existen para un control de acceso sólido.

También es fundamental utilizar el control de acceso a nivel de función. Proteja el acceso a todas las funciones exigiendo a los usuarios que pasen determinadas comprobaciones de control de acceso. Utilice el principio del mínimo privilegio, denegando el acceso de forma predeterminada y abriendo el acceso únicamente cuando sea necesario. Puede resultar difícil recordar cómo implementar el control de acceso para cada función. Utilice un componente central para administrar y hacer cumplir el control de acceso.

Proteja sus funciones delicadas

La interrupción del control de acceso puede dejar sus datos y su aplicación abiertos a ataques y explotación. Los datos de los clientes que no estén protegidos adecuadamente podrían provocar una violación masiva de datos, lo que perjudicaría su reputación y sus ingresos.

La interrupción del control de acceso también podría provocar la apropiación de la cuenta si los atacantes pueden acceder a funciones a las que no deberían acceder. Usa un control de acceso adecuado a nivel funcional y mantendrás tu aplicación a salvo de atacantes malintencionados e incluso de intrusos accidentales.

¿Crees que estás harto del acceso a nivel funcional? Ahora puedes ponerte el reto de reparar un control de acceso roto: [Empieza aquí]

查看资源
查看资源

请填写以下表格以下载报告

我们希望获得您的许可,以便向您发送有关我们产品或安全编码相关主题的信息。我们将始终以最高标准谨慎处理您的个人数据,绝不会出于营销目的将其出售给其他公司。

发送
scw 成功图标
SCW 错误图标
要提交表单,请启用「分析」cookie。完成后请随时将其重新禁用。

Cuando crea una aplicación empresarial, ya sea para uso interno o externo por parte de sus clientes, es probable que no permita que todos los usuarios realicen todas las funciones. Si lo hace, puede ser vulnerable a que se interrumpa el control de acceso.

Veamos qué es un control de acceso roto, por qué es tan peligroso y cómo solucionarlo.

Comprenda el control de acceso roto

El control de acceso interrumpido se produce cuando el código de la aplicación no cuenta con los controles de seguridad o acceso adecuados. También puede ocurrir cuando una aplicación está mal configurada de alguna manera, lo que permite el acceso a funciones o páginas a las que el usuario no debería tener acceso.

Si te ocupas de las finanzas de tu empresa, es posible que puedas depositar dinero en ciertas cuentas o transferir dinero entre las cuentas de tu empresa. Sin embargo, no deberías tener acceso a retirar efectivo de esas cuentas ni a transferir dinero a otras cuentas. Si no se cuenta con los controles de acceso adecuados, es posible que tus empleados puedan realizar más funciones de las necesarias.

Estas comprobaciones se pueden realizar dentro del código o en los archivos de configuración. Por ejemplo, puede haber archivos de configuración XML que indiquen al marco de la aplicación web qué usuarios pueden acceder a qué páginas. Esto garantiza que los usuarios solo puedan acceder a las funciones que están autorizados a usar.

Por qué es peligroso romper el control de acceso

Considera este ejemplo: un atacante se ha dado cuenta de que el código de creación de tu cuenta de usuario puede manipularse, lo que le permite crear un usuario administrador con una simple solicitud de publicación. Pueden enviar una solicitud con el nombre de usuario y la contraseña y, a continuación, cambiarla para incluir el rol de administrador en la URL como parámetro o en el cuerpo de la solicitud. El atacante inicia sesión en la aplicación y obtiene instantáneamente derechos de administrador.

No siempre tiene que ser un atacante malintencionado que penetre en un sistema. Sin los controles de acceso adecuados, es posible que se divulgue información confidencial que no debería compartirse entre departamentos. Imagínese si cualquier empleado de la empresa pudiera ver los datos financieros o de nómina de RRHH. ¿Qué pasaría si algún empleado pudiera ver que se avecinan despidos debido a la mala situación financiera de la empresa? Esto podría dañar su moral y la reputación de su empresa.

También se podría perder la información confidencial de los clientes. Las empresas suelen almacenar información personal de los clientes que utilizan sus servicios. Tenga cuidado de no exponer esta información accidentalmente debido a la falta de control de acceso. Por ejemplo, si su sistema permite a los usuarios solicitar su historia clínica, ¿también tienen la posibilidad de solicitar y ver la información médica de otras personas? Si la URL contiene un número de identificación de cliente, los atacantes podrían aumentar ese número de identificación de cliente una y otra vez hasta encontrar uno que coincida con otro cliente, revelando así sus datos personales.

Derrota el control de acceso roto

El control de acceso basado en roles (RBAC) es una herramienta muy eficaz para implementar un control de acceso por sonido. Quienes utilizan Active Directory pueden estar familiarizados con la idea de creación de grupos y dar acceso a ciertos elementos del grupo, en lugar de hacerlo de forma individual. Las aplicaciones funcionan de la misma manera, ya que utilizan roles para definir quién puede ver qué.

Esto tiene dos ventajas. En primer lugar, no es necesario cambiar una función cuando alguien deja el rol de administrador. Si alguien anteriormente era administrador y ahora ya no debería serlo, basta con colocar a una nueva persona en el rol de administrador y eliminar a la persona anterior del rol. El código comprueba si el usuario tiene la función de administrador en lugar de comprobar si cada usuario individual tiene acceso a una página o función determinada.

La segunda ventaja es evitar una pesadilla de mantenimiento. Con el tiempo, será imposible gestionar un control de acceso tan detallado que permita a cada persona asociarse con cada función o página posible. Los roles facilitan mucho las cosas, ya que se pueden agregar varias personas a un rol. Un rol puede incluir a toda la empresa, mientras que otro puede tener solo cinco personas. Esto hace que la gestión de las funciones sea más eficiente, ya que habrá menos funciones que gestionar. Una empresa de 10 000 personas podría tener solo 100 funciones en lugar de tener 10 000 veces la cantidad de funciones de su aplicación. Investigue el marco de aplicación que haya elegido para ver qué opciones existen para un control de acceso sólido.

También es fundamental utilizar el control de acceso a nivel de función. Proteja el acceso a todas las funciones exigiendo a los usuarios que pasen determinadas comprobaciones de control de acceso. Utilice el principio del mínimo privilegio, denegando el acceso de forma predeterminada y abriendo el acceso únicamente cuando sea necesario. Puede resultar difícil recordar cómo implementar el control de acceso para cada función. Utilice un componente central para administrar y hacer cumplir el control de acceso.

Proteja sus funciones delicadas

La interrupción del control de acceso puede dejar sus datos y su aplicación abiertos a ataques y explotación. Los datos de los clientes que no estén protegidos adecuadamente podrían provocar una violación masiva de datos, lo que perjudicaría su reputación y sus ingresos.

La interrupción del control de acceso también podría provocar la apropiación de la cuenta si los atacantes pueden acceder a funciones a las que no deberían acceder. Usa un control de acceso adecuado a nivel funcional y mantendrás tu aplicación a salvo de atacantes malintencionados e incluso de intrusos accidentales.

¿Crees que estás harto del acceso a nivel funcional? Ahora puedes ponerte el reto de reparar un control de acceso roto: [Empieza aquí]

观看网络研讨会
开始
了解更多

点击下方链接,下载此资源的PDF文件。

Secure Code Warrior 您的组织在软件开发全生命周期中保护代码安全,并营造将网络安全置于首位的企业文化。无论您是应用安全管理员、开发人员、首席信息安全官,还是任何与安全相关的工作人员,我们都能助力您的组织降低不安全代码带来的风险。

查看报告预约演示
查看资源
分享到:
领英品牌社交x 标志
感兴趣了解更多吗?

分享到:
领英品牌社交x 标志
作者
Jaap Karan Singh
2019年5月9日出版

Jaap Karan Singh是一位安全编码布道者,首席辛格和Secure Code Warrior 的共同创始人。

分享到:
领英品牌社交x 标志

Cuando crea una aplicación empresarial, ya sea para uso interno o externo por parte de sus clientes, es probable que no permita que todos los usuarios realicen todas las funciones. Si lo hace, puede ser vulnerable a que se interrumpa el control de acceso.

Veamos qué es un control de acceso roto, por qué es tan peligroso y cómo solucionarlo.

Comprenda el control de acceso roto

El control de acceso interrumpido se produce cuando el código de la aplicación no cuenta con los controles de seguridad o acceso adecuados. También puede ocurrir cuando una aplicación está mal configurada de alguna manera, lo que permite el acceso a funciones o páginas a las que el usuario no debería tener acceso.

Si te ocupas de las finanzas de tu empresa, es posible que puedas depositar dinero en ciertas cuentas o transferir dinero entre las cuentas de tu empresa. Sin embargo, no deberías tener acceso a retirar efectivo de esas cuentas ni a transferir dinero a otras cuentas. Si no se cuenta con los controles de acceso adecuados, es posible que tus empleados puedan realizar más funciones de las necesarias.

Estas comprobaciones se pueden realizar dentro del código o en los archivos de configuración. Por ejemplo, puede haber archivos de configuración XML que indiquen al marco de la aplicación web qué usuarios pueden acceder a qué páginas. Esto garantiza que los usuarios solo puedan acceder a las funciones que están autorizados a usar.

Por qué es peligroso romper el control de acceso

Considera este ejemplo: un atacante se ha dado cuenta de que el código de creación de tu cuenta de usuario puede manipularse, lo que le permite crear un usuario administrador con una simple solicitud de publicación. Pueden enviar una solicitud con el nombre de usuario y la contraseña y, a continuación, cambiarla para incluir el rol de administrador en la URL como parámetro o en el cuerpo de la solicitud. El atacante inicia sesión en la aplicación y obtiene instantáneamente derechos de administrador.

No siempre tiene que ser un atacante malintencionado que penetre en un sistema. Sin los controles de acceso adecuados, es posible que se divulgue información confidencial que no debería compartirse entre departamentos. Imagínese si cualquier empleado de la empresa pudiera ver los datos financieros o de nómina de RRHH. ¿Qué pasaría si algún empleado pudiera ver que se avecinan despidos debido a la mala situación financiera de la empresa? Esto podría dañar su moral y la reputación de su empresa.

También se podría perder la información confidencial de los clientes. Las empresas suelen almacenar información personal de los clientes que utilizan sus servicios. Tenga cuidado de no exponer esta información accidentalmente debido a la falta de control de acceso. Por ejemplo, si su sistema permite a los usuarios solicitar su historia clínica, ¿también tienen la posibilidad de solicitar y ver la información médica de otras personas? Si la URL contiene un número de identificación de cliente, los atacantes podrían aumentar ese número de identificación de cliente una y otra vez hasta encontrar uno que coincida con otro cliente, revelando así sus datos personales.

Derrota el control de acceso roto

El control de acceso basado en roles (RBAC) es una herramienta muy eficaz para implementar un control de acceso por sonido. Quienes utilizan Active Directory pueden estar familiarizados con la idea de creación de grupos y dar acceso a ciertos elementos del grupo, en lugar de hacerlo de forma individual. Las aplicaciones funcionan de la misma manera, ya que utilizan roles para definir quién puede ver qué.

Esto tiene dos ventajas. En primer lugar, no es necesario cambiar una función cuando alguien deja el rol de administrador. Si alguien anteriormente era administrador y ahora ya no debería serlo, basta con colocar a una nueva persona en el rol de administrador y eliminar a la persona anterior del rol. El código comprueba si el usuario tiene la función de administrador en lugar de comprobar si cada usuario individual tiene acceso a una página o función determinada.

La segunda ventaja es evitar una pesadilla de mantenimiento. Con el tiempo, será imposible gestionar un control de acceso tan detallado que permita a cada persona asociarse con cada función o página posible. Los roles facilitan mucho las cosas, ya que se pueden agregar varias personas a un rol. Un rol puede incluir a toda la empresa, mientras que otro puede tener solo cinco personas. Esto hace que la gestión de las funciones sea más eficiente, ya que habrá menos funciones que gestionar. Una empresa de 10 000 personas podría tener solo 100 funciones en lugar de tener 10 000 veces la cantidad de funciones de su aplicación. Investigue el marco de aplicación que haya elegido para ver qué opciones existen para un control de acceso sólido.

También es fundamental utilizar el control de acceso a nivel de función. Proteja el acceso a todas las funciones exigiendo a los usuarios que pasen determinadas comprobaciones de control de acceso. Utilice el principio del mínimo privilegio, denegando el acceso de forma predeterminada y abriendo el acceso únicamente cuando sea necesario. Puede resultar difícil recordar cómo implementar el control de acceso para cada función. Utilice un componente central para administrar y hacer cumplir el control de acceso.

Proteja sus funciones delicadas

La interrupción del control de acceso puede dejar sus datos y su aplicación abiertos a ataques y explotación. Los datos de los clientes que no estén protegidos adecuadamente podrían provocar una violación masiva de datos, lo que perjudicaría su reputación y sus ingresos.

La interrupción del control de acceso también podría provocar la apropiación de la cuenta si los atacantes pueden acceder a funciones a las que no deberían acceder. Usa un control de acceso adecuado a nivel funcional y mantendrás tu aplicación a salvo de atacantes malintencionados e incluso de intrusos accidentales.

¿Crees que estás harto del acceso a nivel funcional? Ahora puedes ponerte el reto de reparar un control de acceso roto: [Empieza aquí]

目录

下载PDF
查看资源
感兴趣了解更多吗?

Jaap Karan Singh是一位安全编码布道者,首席辛格和Secure Code Warrior 的共同创始人。

了解更多

Secure Code Warrior 您的组织在软件开发全生命周期中保护代码安全,并营造将网络安全置于首位的企业文化。无论您是应用安全管理员、开发人员、首席信息安全官,还是任何与安全相关的工作人员,我们都能助力您的组织降低不安全代码带来的风险。

预约演示下载
分享到:
领英品牌社交x 标志
资源中心

入门资源

更多出版物
资源中心

入门资源

更多出版物