Seguridad de la red | Análisis de casos de entrada de pruebas de penetración, desde la entrada básica cero hasta el dominio: métodos de detección comunes para una penetración rápida de las páginas del cuadro de inicio de sesión

Tabla de contenido

introducción

1. Contraseña débil

2. Omisión de contraseña universal

editar

3. Omisión de autenticación de inicio de sesión

3.1 Configuración incorrecta del terminal de actualización del token

3.2 Configuración de sso incorrecta

 3.3.Problema de acceso al caso de CMS

3.4 Error al analizar el token JWT

3.5 Modificación violenta de la Autenticación

4. El código de verificación gráfica no es válido

5. El código de verificación de SMS no es válido

6. Ataque SMS

7. Ataque reflexivo de secuencias de comandos entre sitios

8. Inyección SQL

9. Cualquier modificación/restablecimiento de contraseña de usuario

10. Fuga de información confidencial

11. Recorrido de directorio

12. Lagunas en el marco


introducción

Hoy me gustaría compartir con ustedes los métodos de infiltración comúnmente utilizados en la página de inicio de sesión del fondo del sitio web, para que todos puedan prestar mejor atención a la defensa en varias comodidades al mantener el sitio web a diario.

 

1. Contraseña débil

Método de prueba:
puede probar manualmente algunas contraseñas débiles de alta frecuencia como las siguientes: 2. De acuerdo con los componentes de terceros utilizados por el sitio web, busque contraseñas débiles específicas o contraseñas predeterminadas para iniciar sesión. O vaya directamente a BP. Solo se necesita 3S para descifrar una contraseña digital pura de 6 dígitos usando Poly.

admin:123456
admin:admin
admin:admin@123
admin:12345
test:test

En 2022, las 20 principales clasificaciones de contraseñas débiles publicadas por las estadísticas del departamento de seguridad:

2. Omisión de contraseña universal

Métodos de prueba:

(1) 用户名输入: ‘ or 1=1 or ‘  密码:任意
(2)Admin’ - -(或‘ or 1=1 or ‘ - -)(admin or 1=1 --) (MS SQL)(直接输入用户名,不进行密码验证)
(3)用户名输入:admin   密码输入:’ or  ‘1’=’1 也可以
(4) 用户名输入:admin' or 'a'='a    密码输入:任意
(5) 用户名输入:‘ or 1=1 - -
(6) 用户名输入:admin‘ or 1=1 - -  密码输入:任意
(7) 用户名输入:1'or'1'='1'or'1'='1   密码输入:任意

 asp aspx contraseña universal
  1: "o "a"="a
   2: ')o('a'='a
   3: o 1=1--
   4: 'o 1=1--
   5: a'o' 1 =1--
   6: "o 1=1--
   7: 'o'a'='a
   8: "o"="a'='a
   9: 'o''='
   10: 'o'=' o'
   11: 1 o '1'='1'=1
   12: 1 o '1'='1' o 1=1
   13: 'O 1=1%00
   14: "o 1=1%00
   15: 'xor
   16: nueva contraseña de inicio de sesión universal
   nombre de usuario' UNION Seleccione 1,1,1 DESDE admin Donde ''=' (reemplace el nombre de la tabla admin)
   contraseña 1
   Nombre de usuario = -1%cf' unión seleccione 1,1,1 como contraseña, 1 ,1,1 %23
   Contraseña=1
   17..admin' o 'a'='una contraseña es opcional


   Contraseña maestra de PHP
   'o'='o'
   'o 1=1/* El tipo de carácter GPC se puede usar ya sea que esté activado o no
   Usuario: algo
   Paso: ' O '1'='1

   jsp contraseña maestra
   1'o'1 '='1
   admin' O 1=1/*
   Nombre de usuario: admin solo está disponible cuando este usuario existe en el sistema
   Contraseña: 1'o'1'='1

 

 

3. Omisión de autenticación de inicio de sesión

Métodos de prueba:

1)直接访问内部URL。使用扫描工具找到含有admin、manager、administrator、login等词语的路径,尝试使用普通的登录用户访问这些URL。从而获得管理员的权限。
2)修改参数绕过认证。应用程序可能会会使用一个参数或一个隐藏的域表示一个用户是否经过验证了,通过修改这些参数,从而被认为是已经认证过的用户。例如:http://www.xxx.xom/userinfo.jsp?authenticated=no,通过修改authenticated参数为yes,http://www.xxx.xom/userinfo.jsp?authenticated=yes,然后就可以通过认证,直接访问内部页面。
3)可猜测的SessionID。利用规律,猜测到一个有效的SessionID,然后通过修改请求中的SessionID为一个预测到的有效的SessionID,从而冒充会话的真正拥有着,绕过认证环节。
4)CSRF。利用CSRF漏洞在用户不知情的情况下,利用用户的会话进行敏感操作,从而绕过认证。
5)前端验证绕过:修改返回码,一般可以尝试true、success、200、0、1等

3.1 Configuración incorrecta del terminal de actualización del token

En este caso, cuando un usuario inicia sesión en la aplicación con credenciales válidas, se crea un token de autenticación para la autenticación. Y este token de autenticación caduca después de un tiempo. Un token de autenticación válido aparece en el paquete de retorno al endpoint/refresh/tokenlogin enviar una solicitud al servidor con parámetros  justo antes de que caduque  .username

3.2 Configuración de sso incorrecta

Con la diversidad de plataformas y la mejora continua de las necesidades de los usuarios, para facilitar que los usuarios inicien sesión en múltiples aplicaciones y sitios web a través de la autenticación de usuario única, la mayoría de las plataformas utilizan sistemas SSO. Pero el simple uso de SSO no asegura automáticamente el sistema: la configuración de SSO también debe ser segura.

Aquí, una aplicación se autentica mediante el sistema SSO de Microsoft. Al ver internal.test.comla URL, el navegador se redirige al sistema de inicio de sesión único:

 3.3.Problema de acceso al caso de CMS

Los CMS como WordPress, Drupal y Hubspot también deben configurarse de forma segura para evitar tales vulnerabilidades.

Aquí hay un ejemplo de Liferay, que también se basa en un encuentro de coincidencia. La aplicación tiene una página de inicio de sesión a la que se puede acceder sin autenticación.

Liferay utiliza un portlet como sso para la aplicación, que tiene un parámetro en el número id p _ p _ id. Para portlets, se puede acceder al portlet de inicio de sesión cambiando el parámetro a un valor de 58. En una página de inicio de sesión normal, solo se puede acceder a la página de inicio de sesión. Sin embargo, al acceder directamente al portlet, es posible acceder Create Accounta la función, lo que permite que self-registrationla función acceda al contenido de fondo sin necesidad de autorización.

 

3.4 Error al analizar el token JWT

El token JWT o JSON Web Token se usa ampliamente en la Web. Sin embargo, aunque tienen un mecanismo de seguridad por defecto, que es la clave, no es seguro que el mecanismo de resolución del servidor back-end sea lo suficientemente seguro.

Había un sitio web que usaba JWT, y cuando se accedía directamente, la aplicación redirigía al usuario a Microsoft SSO la página web.

Sin embargo, se puede acceder a algunos archivos JS sin autenticación. Durante las pruebas, se descubrió que la aplicación usa tokens JWT que se envían a través del sistema después de un inicio de sesión seguro Microsoft SSO. En el mecanismo de back-end, hubo una configuración incorrecta de seguridad que no verificó si el token JWT se generó para una aplicación específica; en cambio, aceptó cualquier token JWT con una firma válida. Aquí hay un ejemplo usando un token JWT del sitio web de Microsoft:

 

3.5 Modificación violenta de la Autenticación

En este caso, se envía una solicitud XML codificada en base64 al backend para su validación. En el mecanismo de inicio de sesión, envía el nombre de usuario y la contraseña por separado. El valor del parámetro Scode es el valor md5 de la contraseña. . Hay otra bandera interesante en la solicitud: scode tiene un valor de 2.

 Resultó que la autenticación podía pasarse por alto simplemente proporcionando un nombre de usuario y una contraseña vacía.

 

4. El código de verificación gráfica no es válido

Métodos de prueba:

输入用户名、密码、验证码后,点击登陆按钮同时将数据包使用burpsuite进行拦截,并使用Repeater模块或Intruder模块进行数据重放,重新发送五次观察页面变化,是否会提示验证码输入错误等信息

5. El código de verificación de SMS no es válido

Métodos de prueba:

1)请求发送短信,填写任意验证码,然后提交其他操作请求,将验证码参数置空或删除,测试是否可绕过检测;
2)尝试特权验证码,如000000、111111等;
3)同一个短信验证码是否能使用多次;

6. Ataque SMS

Métodos de prueba:

1)手工找到有关网站注册页面,认证页面,是否具有短信发送页面,如果有,则进行下一步。
2)通过利用burp或者其它抓包截断工具,抓取发送验证码的数据包,并且进行重放攻击,查看手机是否在短时间内连续收到10条以上短信,如果收到大量短信,则说明存在该漏洞。

 

 

7. Ataque reflexivo de secuencias de comandos entre sitios

Métodos de prueba:

1、GET方式跨站脚本:
在输入的参数后逐条添加以下语句,以第一条为例,输入http://www.exmaple.com/page.xxx?name=
文本输入框:需要对页面上所有可以提交参数的地方进行测试。具体跨站脚本的测试语句根据实际情况的不同而不同,可自行构造。
2、POST方式
例如:抓包对输入的参数进行构造语句触发XSS

8. Inyección SQL

Métodos de prueba:

1)通过web漏洞扫描工具进行对网站爬虫后得到的所有链接进行检测,或者手工判断是否存在注入点,一旦确认存在漏洞,可利用自动化工具sqlmap去尝试注入。几种常见的判断方法:
a、数字型。
http://host/test.php?id=100 and 1=1 返回成功
http://host/test.php?id=100 and 1=2 返回失败
b、字符型。
http://host/test.php?name=rainman ’ and ‘1’=‘1 返回成功
http://host/test.php?name=rainman ’ and ‘1’=‘2 返回失败
c、搜索型。
搜索型注入:简单的判断搜索型注入漏洞是否存在的办法是:
先搜索(’),如果出错,说明90%存在这个漏洞。
然后搜索(%),如果正常返回,说明95%有洞了。
然后再搜索一个关键字,比如(2006)吧,正常返回所有2006相关的信息。
再搜索(2006%‘and 1=1 and ‘%’=’)和(2006%‘and 1=2 and ‘%’=’)

O ingrese directamente el nombre de usuario en el cuadro de inicio de sesión e ingrese 'para ver si se informa un error en la base de datos

9. Cualquier modificación/restablecimiento de contraseña de usuario

Método de prueba:
el procedimiento para la modificación de la contraseña generalmente consiste en verificar primero si la contraseña original del usuario es correcta y luego pedirle al usuario que ingrese una nueva contraseña. Hay aproximadamente tres formas de eludir el mecanismo de modificación de contraseña:

1)如果输入新密码的接口可以直接访问,那么在未知原始密码的的情况下即可直接修改密码,通常知道了他人的用户名即可任意修改他人的密码。
2)如果系统未校验修改密码的用户身份,那么在提交修改密码请求时,攻击者通过输入密码,将用户名或者用户ID修改为其他人的,即可成功修改他人的密码。
3)当修改密码时系统需要电子邮件或者手机短信确认,而应用程序未校验用户输入的邮箱和手机号,那么攻击者通过填写自己的邮箱或手机号接收修改密码的链接和验证码,以此修改他人的密码。

10. Fuga de información confidencial

Métodos de prueba:

1)如果比较有耐心的话可以找一下页面源码、JS文件,全局搜索password,userlogin等一些敏感词等可能存在意想不到的收获
2)查找URL信息是为了找到账号密码验证成功后跳转的URL地址,然后尝试访问此地址,看是否出现未授权访问漏洞
此处已显示账号密码验证成功后的跳转地址,直接访问此地址看是否可以未授权访问。

11. Recorrido de directorio

Métodos de prueba:

可以利用web漏洞扫描器扫描web应用进行检测,也可通过搜索,网站标题包含“index of”关键词的网站进行访问。

12. Lagunas en el marco

Las vulnerabilidades del marco común son las siguientes: no las explicaré una por una aquí.

Spring框架漏洞
Struts2框架漏洞
ThinkPHP 框架漏洞
shiro框架漏洞

Supongo que te gusta

Origin blog.csdn.net/qq_22903531/article/details/131329832
Recomendado
Clasificación