Hola a todos, me pareció curioso crear este POST Cómo saber si te han hackeado desde Excel
Por el hecho de que resulta muy sencillo y práctico obtener el resultado
Descargar el aplicativo para saber si te han hackeado
En esta ocasión, lo primero que compartiré será el aplicativo y luego explicaré su funcionamiento
El aplicativo lo puedes descargar desde aquí: Consulta.xlsm
Uso del aplicativo – Cómo saber si te han hackeado desde Excel
El uso es muy sencillo, después de descargarlo sólo deberás ingresar tu cuenta de correo en la siguiente casilla

Y sólo presionar el botón Buscar
Si en caso tu cuenta ha sido vulnerada, entonces mostrará el siguiente mensaje:

Caso contrario, mostrará este mensaje

¿Dónde se consulta la información?
Se consulta en la página web de Have I Been Pwned

Esta página fue creada por Troy Hunt, un especialista en seguridad informática
Esta página fue creada principalmente porque las filtraciones de datos están en aumento
Según indica su página web ya ha registrado ataques de casi 8 millones de cuentas
Desarrollo en Excel VBA – Saber si te han hackeado
Crear función de consulta en Excel VBA
Necesitamos una función del tipo entero que reciba el nombre del correo (Tipo String)
Usaremos al objeto winhttp.winhttprequest.5.1
De la siguiente forma:
Function Consulta(cuenta As String) As Integer
Dim Respuesta$, web$, enviado$, Solicitud As Object, i%, j%
Set Solicitud = CreateObject("winhttp.winhttprequest.5.1")
If cuenta = Empty Then
Consulta = -1
Exit Function
End If
On Error GoTo M4ster
web = "https://haveibeenpwned.com/"
enviado = "Account=" & cuenta
Solicitud.Open "POST", web, False
Solicitud.setrequestheader "Content-type", "application/x-www-form-urlencoded"
Solicitud.send (enviado)
Respuesta = Solicitud.ResponseText
Respuesta = Replace(Respuesta, Chr(10), " ")
Respuesta = Replace(Respuesta, Chr(13), " ")
Respuesta = Application.WorksheetFunction.Trim(Respuesta)
i = InStr(Respuesta, "pwnCount") + 18
j = InStrRev(Respuesta, "<a href=" & Chr(34) & "/FAQs#DataSource")
Consulta = CInt(Mid(Respuesta, i, j - i))
Exit Function
M4ster:
Consulta = 0
Set Solicitud = Nothing
'Encontrar la frase que necesitamos
End Function
Crear proceso de consulta individual
Muy bien, crearemos un proceso que utilice a la función creada
Debemos considerar que la cuenta de correo se escribirá en la celda C5
Sub ConsultaIndividual()
Dim Respuesta%
Respuesta = Consulta(wIndividual.Range("C5"))
Select Case Respuesta
Case -1
MsgBox "Debe ingresar una cuenta de correo en C5", vbExclamation, "TutorialesExcel.com"
Case 0
MsgBox "Su cuenta no ha sido vulnerada, que tenga un buen día", vbInformation, "TutorialesExcel.com"
Case Is > 0
MsgBox "Su cuenta ha sido víctima de " & Respuesta & " violación(es)" & Chr(10) & "Cambia la contraseña de tu cuenta y plataformas donde usa la misma contraseña inmediatamente", vbInformation, "TutorialesExcel.com"
End Select
End Sub
En estos desarrollos utilizo declaración de variables cortas, si quieres saber más sobre este tema puedes leer este POST
Tutoriales Excel
Y listo ese es todo el código que se necesita para poder crear nuestra consulta
No te recomiendo realizar un proceso de consulta masiva, debido a que la página web te bloqueará el acceso por excesivos ingresos
Tutoriales Excel
Espero te haya servido mi publicación, cualquier consulta la puedes dejar en los comentarios o enviar un mensaje al correo Luisrojas@tutorialesexcel.com