Ir al contenido principal

Anti-Browsec-VPN una pequeña historia de análisis y programación en la red Minsal.

Contexto

En este caso no soy un administrador de sistemas y tampoco un administrador de red, por lo tanto mi solución va enfocada desde el último eslabón el usuario, en esta situación la red Minsal es administrada por un proveedor ISP el cual le concede ciertos trabajos y administración al Servicio de Salud, entre estos dos resuelven los trabajos de sistemas y redes, las redes hospitalarias estaban y aún están siendo burladas por los usuario saltándose las restricciones con el uso de VPNs a nosotros como unidad nos llegó información de lo sucedido con la explicación que el proveedor ISP y el SS no habían podido bloquear estos saltos de restricciones porque desconocían las VPNs con que se hacían fue ahí donde no me hacía sentido la respuesta por parte del ISP y el SS, por lo que pensé que si desarmaba la extensión miraba su código podía tener la lista de VPNs además de generar una herramienta para bloquear el salto de restricción de los usuarios, resultado de este cuestionamiento lo demuestro en la siguiente publicación:

Prueba de Concepto usando Browsec VPN.

Al utilizar el addon de Chrome se puede como usuario saltar todas las restricción de la red Minsal en esta prueba tenemos configurado un segmento de la red Minsal xxx.xxx.xxx.xxx* e instalamos el addon y escogemos un proxy y nos conectamos a Facebook hacemos una captura del adaptador filtramos y podemos ver como tiene contacto el segmento xxx.xxx.xxx.xxx a la ip de Facebook 31.13.85.36 y viceversa.

Bloqueando de forma local en el equipo del usuario.

Es posible bloquear el método de acceso a esta extensión, debido a que en Chrome para instalar una extensión se debe acceder a un dominio en el cual están todas las extensiones en base a esto que se puede hacer:
  • bloquear el dominio al cual se accede para instalar el addon https://chrome.google.com/webstore/search 
  • Bloquear la web oficial https://browsec.com/
Si utilizamos la lógica y un poco de ingenio todos los sitios web ejecutan javascript ya sea por los framework que utilizaron al desarrollarlos como react.js, modernizar.js, angular.js etc y en general javascript siempre se ha usado para dar usabilidad y funcionalidad en la capa de la vista o cliente por esto si bloqueamos el javascript en la dirección de los addons de google Chrome frenaremos al usuario ¿accederá al sitio? claro que sí pero estará inutilizable.
Esto se puede realizar en la siguiente ruta:
  • Abrimos google Chrome y en la barra de url escribimos: chrome://settings/content
  • Segundo paso es escribir la url del sitio donde se descargan estas extensiones y las bloqueamos de paso les bloqueamos Facebook también y la web oficial :)

El resultado de esto será las siguientes capturas a nivel local:
  • Ingreso a https://chrome.google.com/ y está en blanco por lo tanto el usuario no puedebuscar addons :)
  • Ingreso a Facebook y el usuario observara una linda pantalla de Facebook de bienvenida :) vamos a ver si entiende algo.

“Pero hombre me pueden decir Facebook tiene muchos dominios puedo acceder por otro”. a nivel
de red se podría bloquear la ip de Facebook ¿Cómo saber cuál es la ip de Facebook? Abrimos el
navegador le damos un ping www.facebook.com –t


Sabiendo la ip entramos a bing y lanzamos un dork para saber todos los dominios que tienen sobre esa ip 31.13.73.36 en esta ocasión bing demuestra que no existe otro dominio más que el de Facebook asociado a la ip.

Modo incognito Pro VS Contra

Otra manera de entre comillas poder negar al usuario a ejecutar el addon es borrar los accesos
directo a Chrome y dejar uno que se ejecute en modo incognito de esta manera el usuario navega
pero no le permitirá que pueda instalar el addon a menos que salga de modo incognito o también
le dé permiso al addon para trabajar en modo incognito
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" –incognito
Resultado de esto

Destripando la extensión (Análisis al Source code)

Almacenamiento de la extensión y la ruta para detectarla

Esta extensión se almacena de forma local en nuestro sistema con el nombre de
omghfjlpggmjjaagoclmmobgdodcjboh 
Se encuentra en la ruta
C:\Users\[Nombre del usuario]\AppData\Local\Google\Chrome\User Data\Default\Extensions\omghfjlpggmjjaagoclmmobgdodcjboh


Menú de Proxys VPN

En esta extensión si vemos su archivo .json veremos a los diferentes países por donde pasan las
vpn para salir a internet que el usuario tiene un menú para poder elegir entre ellas.

En sus archivos javascript ( js ) la extensión tiene un ID de identificación que es el mismo que
identifique anteriormente el cual es el nombre de la carpeta.


Lista de Proxys a los cuales se conecta

En su source code se puede listar todos los dominios y el puerto, los cuales sirven de proxy para acceder, un total de 113 proxys free.

Lista de servidores Premium, me imagino que son de pago y ofrecen velocidad de navegación, etc.

Herramienta desarrollada por mi para impedir el salto de restricciones

He desarrollado una pequeña herramienta para impedir el salto de restricciones de la red Minsal
por parte de los usuarios esta herramienta cuenta con lo siguiente:
1.- Si se ejecuta por primera vez y el equipo no está vacunado lo vacuna.


2.-La herramienta se clona así misma y se oculta en el siguiente directorio:
C:\Users\[Usuario]\AppData\Local\Google




3.-Es capaz de ejecutarse por sí misma y quedar escondida de la vista del usuario tanto en el escritorio,barra de tareas, systray, solo la dejo ver en la lista de procesos, aunque igual la puedo esconder dentro de otro proceso en chrome y hacer que sea indetectable.


4.-Modifica el registro y arranca con el sistema operativo ocultamente


5.-Con un intervalo de tiempo menor a 5 minutos identifica que hay extensiones instaladas y las borra
desde:
C:\Users\[Usuario]\AppData\Local\Google\Chrome\User Data\Default\Extensions

Descarga: https://github.com/jalejandrogago/Anti-Browsec-VPN

Finalmente hace más de 6 meses envié este pequeño escrito, pero nunca le dieron solución, ya empiezo a pensar que las instituciones públicas trabajan de forma relajada y con plazos demasiado amplios y de forma reactiva.



Comentarios

Te sugiero las siguientes publicaciones 🙂🤙

Obteniendo strings de procesos en memoria con ReadProcessMemory().

Análisis Forense - Extracción de datos desde un dispositivo móvil Android para análisis lógico.

Análisis Forense - Extrayendo y reconstruyendo imágenes y sesión de usuario desde un volcado de memoria.