Cómo detectar y bloquear Ultrasurf

Ultrasurf es un proxy creado con el objetivo de encontrar seguridad y libertad en la navegación, principalmente en China. Actualmente se ha convertido en una de las aplicaciones más usadas en el mundo anti-censura con el objetivo de saltar las políticas de seguridad de bloqueo de determinados sitios.

Lo que hace difícil el bloqueo de esta aplicación es que utiliza el puerto TCP 443, por lo que dificulta el bloqueo del mismo, ya que se denegaría el acceso a sitios seguros, bancos y todo lo que utilice https.

En la Wiki de MikroTik hay una serie de reglas que logran bloquear Ultrasurf a los usuarios que lo estén intentando usar:

En primer lugar, haciendo un par de capturas utilizando esta aplicación, se logró encontrar un rango de IP del servidor al que se conecta Ultrasurf: 204.107.140.0/24 , 65.49.0.0/17 y 72.0.0.0/8. Con esto, se puede armar un address list de la siguiente manera:

/ip firewall address-list
add address=65.49.0.0/17 comment="" disabled=no list=UltraSurfServers
add address=204.107.140.0/24 comment="" disabled=no list=UltraSurfServers
add address=72.0.0.0/8 comment="" disabled=no list=UltraSurfServers

El segundo paso sería detectar a los usuarios que intentan utilizar dichos rango de IP y enviarlos temporalmente (en el ejemplo, por 30 segundos) a una lista:

/ip firewall mangle
add action=add-src-to-address-list address-list=UltraSurfUsers 
address-list-timeout=30s chain=prerouting comment=UltraSurfUsers disabled=
no dst-address-list=UltraSurfServers dst-port=443 protocol=tcp

Finalmente, utilizar una regla de Firewall para bloquear el acceso de los usuarios en la lista al puerto 443 (Nótese que con esta última regla, se bloqueará toda aplicación que utilice el puerto 443, por lo que se recomienda dejar el address-list anterior con el menor tiempo posible):

/ip firewall filter
add action=drop chain=forward comment="Block UltraSurf" disabled=no dst-port=
443 protocol=tcp src-address-list=UltraSurfUsers

Vía: MikroTik