Seguridad "presencial" con Bluetooth en Linux

Estoy aprovechando estos días para “maquear” un portátil nuevo que me han dado en el curro, y he dado con un programa curioso: blueproximity.

¿Cuántas veces os habéis levantado de delante del ordenador sin bloquear la pantalla y algún compañero gracioso os ha gastado alguna jugarreta (enviar un mail con vuestra cuenta expresando vuestro amor incondicional por el resto de la plantilla, definir un alias ls=”rm -ri /”, o algo así)? ¿O estando en un cliente, se ha quedado información sensible en la pantalla mientras habéis ido a por el café? A mi ya me han gastado más de una de estas con lo que ya tengo el hábito de antes de levantarme, bloquear yo la pantalla. Sin embargo una solución automática no está de más.

La idea detrás de blueproximity es sencilla: bloquear automáticamente la pantalla si no estáis cerca, emparejándose con un dispositivo bluetooth (vuestro móvil) y en función de su proximidad activar o desactivar el salvapantallas. Simple y efectivo. Ahora el problema es si os olvidáis de coger el móvil al bajar a por el café. XD

Usando una VPN como default gateway

  • english
  • spanish

One detail about VPNs that I’ve learnt this week the hard way:

If you want to use a VPN as your default gateway and not only to reach some private networks, you have to add first a static route to reach the VPN server through your current gateway.

It may not be very obvious but it’s quite logical: in order to start and maintain the VPN, you need to have network connectivity with the VPN server, that isn’t on our local network, so we reach it through our default gateway (the DSL router or whatever). Once the VPN is up, the “in transit” VPN is just TCP, UDP or some other protocol packets flowing from your host, through your gateway, and reaching the VPN server, that “unpacks” the actual VPN traffic. And what happens if now we set a default gateway on the other side of the VPN connection? It “overwrites” the previous GW, the DSL router. The new GW is not on our real local network anymore, we can’t reach it, so our “in transit” VPN packets can’t get to the VPN server.

vpngw.png

Think about it. It’s quite silly, but it’s one of those things that get set up for you when configuring a VPN using a GUI, and you don’t even realize about them until you have to deal with things at a lower level (configuring a router, dealing with a server config files, etc.)

Si lees este artículo, me debes una birra

A través de éste artículo del blog de Enrique Dans doy con otro de un abogado poniendo de vuelta y media los avisos de confidencialidad en los correos electrónicos. Muy recomendables ambos así como sus comentarios.

No me voy a extender demasiado porque suscribo punto por punto todo lo que comenta Enrique: siempre me han parecido una bobada, nadie puede obligarme a nada sólo por el hecho de leer un texto que, además, viene después de la información sobre la que pretende imponerme esas obligaciones. Es de locos. Pero todos hemos visto cómo después de que algún “jefecillo espabilao” se lo pusiera en la empresa, ha habido más de tres y cuatro borregos que han hecho copy-paste en su firma para parecer más… ¿más? Y copiando unos de otros, al final media empresa con el disclaimer dichoso sin saber muy bien cómo ni por qué, pero ¡mola!. Una moda más, y como todas las modas, “sin chicha ni limoná”.

Aparte de al borreguismo, lo achaco a que todavía hay mucha gente que no está preparada (por así decirlo) para las nuevas tecnologías, y a alguna mente pensante (igual de poco apta con éstas cosas) se le ocurrió la genial idea de éstos textos para lavarse las manos ante las inevitables meteduras de pata propias y agenas.

Lo que está claro es que si el mensaje llega, llega a su destinatario. Por definición. El que pone en el “To:”. Ni el MUA ni el MTA van a meter la pata, si hay error será humano y en el lado del remitente “de gatillo fácil”.

Los problemas que veo son:

  • Fe ciega en el auto-completado del Outlook. Ah, ¿que se lo he mandado al que no toca? Pues no es culpa mía, es del Outlook (vale, nos ha pasado a todos alguna que otra vez, quien esté libre de pecado que tire la primera piedra…)
  • Falta de profesionalidad unida a lo fácil que es darle al botón de “Forward”. Porque claro, si leyendo un documento confidencial que tengo en papel se me ocurre una broma graciosísima, lo que no hago es fotocopiarlo y mandar copias a 10 amigos para ponerlos en contexto y contarles la gracia. Sin embargo con el correo electrónico…
  • Falta de concienciación en el uso de herramientas de cifrado de información. Pero en fin, si más de una vez he sudado sangre para intentar explicarle los fundamentos del cifrado de clave pública a algún Ingeniero en Informática, no quiero imaginarme lo que puede ser intentar que lo use sin meter la pata (¡y sin auto-completado!) una persona que no está acostumbrada a éstas cosas…

En fin, que si, que éstas cláusulas se ponen porque existe un problema, eso no lo niego. Pero no son la solución, no aportan nada, sólo más confusión.

Y menos mal que había dicho que no me iba a enrollar… XD

Parche para actualizar a WordPress MU 1.3.2

  • english
  • spanish

WordPress MU 1.3.2 has been released. It gets the project in sync with WordPress 2.3.2 and besides that adds several WPMU-specific security fixes, so it’s a must.

The full package is available for download here. If you already have the previous release installed (simply 1.3, but it was in sync with WP 2.3.1) you can use the following patch to upgrade it more easily: wpmu-1_3-1_3_2.diff

¿Por qué interfaz de red sale el tráfico UDP?

  • english
  • spanish

It has happened to me a cuple of times when dealing with UDP-based services that, when a server has more than one network interface (either physical or virtual), all the UDP traffic goes out through the interface on the default gateway’s network segment and with that interface’s IP address, even when the original request came through the other interface and was directed to the other IP address.

Graphically, say you have something similar to this:

esquemaredudp.png

If the server receives a request on IPa, the response goes out through that same interface and with origin IPa. But if the request arrives on IPb through the interface on the right, the response is also sent through the left interface with IPa. And what happens when the client receives a response from an incorrect IP address? Maybe even from a completely different network segment? And if there’s a fw in between doing NAT?

Of course this breaks the service. This week I’ve had this very problem setting up a L2TP VPN, and it was impossible to establish the tunnel. On some other ocasions I’ve had a similar problem with a DNS server, and the outcome depended on the client’s operating system: some OSes accepted the DNS response even when it came from a different address than that of the server originally queried; others would reject it and even raise a security alert.

I guess that this behaviour can be programmatically controlled. I mean, when you receive a packet you can check the IP address it was sent to, and craft the response so that it gets sent with that same address from the right interface. But it seems that this is seldom done.

Yesterday I got around this issue with the help of iptables and a coworker more knowledgeable than me on routing issues:

  • with iptables, you can detect the traffic to “redirect” and mark it
  • depending on this mark and using “ip rule/route”, have a special routing table that sends this traffic to the proper GW/through the right interface.
  • with iptables again and using the previous mark, do a SNAT on the origin IP address

An example for redirecting all UDP traffic from a certain $PORT using IP address $IPb through gateway $GWb would be:

echo 255 local > /etc/iproute2/rt_tables
echo 254 main >> /etc/iproute2/rt_tables
echo 253 default >> /etc/iproute2/rt_tables
echo 0 unspec >> /etc/iproute2/rt_tables
echo 200 udp >> /etc/iproute2/rt_tables
ip rule add fwmark 1 table udp
ip route add default via $GWb dev eth0 table l2tp
iptables -t mangle -A OUTPUT -p udp -m udp –sport $PORT -j MARK –set-mark 0×1
iptables -t nat -A POSTROUTING -m mark –mark 0×1 -j SNAT –to-source $IPb

Varios websites con HTTPS sobre una misma IP

  • english
  • spanish

Some days ago, a coworker posted on his blog an article about how to serve several HTTPS sites from a single IP address using TLS. I told him that it was easier to use a single X.509 certificate for all those domains with the subjectAltName attribute, and he dared me to write a howto about it.

I’ve done something better: I’ve modified easy-rsa so that it can generate multi-domain certs.

Firmas anti-SPAM para ClamAV

  • english
  • spanish

A couple of days ago I stumbled upon the SaneSecurity set of ClamAV signatures, that detect a lot of SPAM (mainly the latest batch of GIF and PDF SPAM) and phishing mails. They’re similar to the MSRBL signatures, only better judging by the results we’re getting. Or to put it another way, one is the perfect complement to the other. :)

By using these two ClamAV signature sets together and some other techniques (SpamAssassin, DNS, RBL…) we’re stopping at work around 80% of all the mails we get, 100000-120000 daily, with a very low false-positive ratio, 2-3 weekly at most. And these figures include all the internal mails too which are supposed not to be SPAM, I’m sure the real SPAM blocking ratio (just external mails) in our system is way above 90%. One of these days I’ll do the math.

I’ve been thinking for some time about writing an article about the different anti-SPAM techniques we use here. I’ll see if I can get some free time to do it…

maç özeti,

live football highlights,

football video,

football videos,

football highlight,

football highlights,

live football streaming,

live footbal,

online footbal,

free football streaming,

live football stream,

stream live football,

free football streaming,

lig tv

soccer stream

football stream

ligtv

maç izle

canlı maç

canlı futbol

canlı futbol izle

canlı futbol tv

futbol maçı izle

futbol smart

futbol smart izle

futbol tv izle

футбол онлайн

трансляция футбол

смотреть онлайн футбол

смотреть футбол

soccer live

soccer tv

live soccer streaming

stream soccer

online football

watch football

football match

football streaming

live streaming

watch football

live football

football tv

futbol vivo

partido en vivo

juegos futbol

futbol online

futbol gratis

roja directa

jogos de futebol

jogo de futebol

futebol online

assistir tv

atdhe

foot en direct

jeux de foot

jeux football

calcio diretta

calcio streaming

giochi calcio

live ποδόσφαιρο

podosfairo live

αγωνεσ ποδοσφαιρου

video sepak bola

game bola sepak

Siaran Langsung Sepakbola

bola siaran langsung

futbol juegos

partidos en vivo

bóng đá online

xem bóng đá

bóng đá trực tuyến

bóng đá trực tiếp

ฟุตบอล online

ฟุตบอลสด

บอล online

ดู ฟุตบอล สด

ถ่ายทอด สด

online futball

live fussball

fussball live stream

live stream fußball

bundesliga live stream

fußball live

bundesliga fußball

piłka nożna na żywo

piłka nożna online

fotbal live

fotbal online

fotbal živě

fotbal zive

fotbollskanalen

fotball live

footballl live

football online

fotball på tv

футбол онлайн

футбол трансляція

футбол канал

live voetbal

live voetbal

voetbal kijken

voetbal online

фудбал уживо

fudbal uzivo

live fudbal

futbal online

live futbal

live footy

مباريات كرة القدم

مباشر كرة القدم

بث حي مباشر

مباشر مباريات

כדורגל שידור ישיר

שידור חי כדורגל

بث كرة القدم

football forum

football forums

football community

football talk

soccer forum

soccer forums

tn115

tn115 toner

brother tn115

tn115bk

brother tn115bk

tn115bk toner

DCP-9040CN toner

DCP-9045CDN toner

HL-4040CDN toner

HL-4040CN toner

HL-4070CDW toner

MFC-9440CN toner

MFC-9450CDN toner

MFC-9840CDW toner

DCP9040CN toner

DCP9045CDN toner

HL4040CDN toner

HL4040CN toner

HL4070CDW toner

MFC9440CN toner

MFC9450CDN toner

MFC9840CDW toner

q6000a toner

q6000a cartridge

hp 1600 color

hp 1600 toner

hp 1600 ink

laserjet 1600 toner

hp color 2600

hp toner 2600

hp 2600 ink

hp 2600 toners

hp 2600 cartridge

1600 toner

2600 toner

toner laserjet 2600

hp 2600n color

toner for hp 2600n

hp 2600n toner

hp 2600n toners

ink for hp 2600n

toner for hp laserjet 2600n

hp laser 2600n toner

hp 2600n cartridge

hp 2600n cartridges

hp laserjet 2600n ink

toner laserjet 2600n

hp toner q6003a

q6003a cartridge

q6000a toner

q6002a cartridge

hp color 3800

toner for hp 3800

toner hp 3800

hp 3800 cartridges

laserjet 3800 toner

cartridge q6470a

q6470a hp

toner q6470a

hp q6470a black

hp q7581a

q7581a toner

hp q7583a

q7583a toner

hp q7582a

q7582a toner

hp 3800dn toner

hp cp3505 toner

hp 3600 toner

toner for hp 3600

hp 3600 toners

hp 3600 cartridge

hp 3600 cartridges

hp 3600 ink

laserjet 3600 toner

q6470a toner

q6470a cartridge

q6470a black

hp q6470a

q6471a toner

hp q6471a

hp q6473a

toner q6473a

hp q6472a

toner q6472a

hp 3600 toner

toner for hp 3600

hp 3600 toners

hp 3600 cartridge

hp laserjet 3600 toner

hp 3600 ink

hp 3600 toner cartridge

hp laserjet 3600 cartridge

hp 3600 toner cartridges

laserjet 3600 toner

hp 3600n toner

toner for hp 3600n

hp 3600n cartridge

hp laserjet 3600n toner

hp 3600n cartridges

hp 3600n ink

hp color laserjet 3600n toner

hp 3600n toner cartridge

hp color laserjet 3600n cartridge

q6470a hp

toner q6470a

cartridge q6470a

hp q6470a black

hp q6471a

q6471a toner

hp 2550 toner

toner 2550

hp 2550 color

hp 2550 drum

laserjet 2550 toner

toner for hp 2550

hp 2550 toners

hp 2550 ink

hp laserjet 2550 toner

hp 2550 cartridge

hp 2550 cartridges

hp 2550 toner cartridge

hp 2550 toner cartridges

hp laserjet 2550 cartridges

hp 2550 printer cartridges

q3960a toner

q3960a cartridge

q3960a black

q3960a hp

hp laserjet q3960a

q3961a toner

hp q3960a

q3962a toner

q3963a toner

hp q3963a

hp q3962a

hp q3961a

hp toner 2840

toner for hp 2840

hp 2840 toners

hp 2840 drum

drum for hp 2840

hp laser 2840 toner

hp 2840 cartridge

hp laserjet 2840 drum