Che io sia paranoico è risaputo, soprattutto se mi ritrovo ad aver a che fare con hardware made in China. Diciamo anche che nella mia rete tendo a tenere sotto controllo tutto il traffico, sia in entrata che in uscita.
Per farla breve, ho installato questa IP camera WI-FI ed ho iniziato a monitorare, mediante Iptables, tutto il traffico in uscita. Ecco uno stralcio del file di log:
Dec 10 14:04:25 nightbox kernel: [3094903.376462] HTTP direct traffic: IN=eth1 OUT=eth0 SRC=10.1.x.x DST=58.61.155.158 LEN=60 TOS=0x00 PREC=0x00 TTL=63 ID=41186 DF PROTO=TCP SPT=3755 DPT=80 WINDOW=5840 RES=0x00 SYN URGP=0
Dec 10 14:10:39 nightbox kernel: [3095278.163044] HTTP direct traffic: IN=eth1 OUT=eth0 SRC=10.1.x.x DST=58.61.155.158 LEN=60 TOS=0x00 PREC=0x00 TTL=63 ID=20423 DF PROTO=TCP SPT=4005 DPT=80 WINDOW=5840 RES=0x00 SYN URGP=0
Dec 10 14:10:42 nightbox kernel: [3095281.160190] HTTP direct traffic: IN=eth1 OUT=eth0 SRC=10.1.x.x DST=58.61.155.158 LEN=60 TOS=0x00 PREC=0x00 TTL=63 ID=20424 DF PROTO=TCP SPT=4005 DPT=80 WINDOW=5840 RES=0x00 SYN URGP=0
Dec 10 14:16:40 nightbox kernel: [3095639.086794] HTTP direct traffic: IN=eth1 OUT=eth0 SRC=10.1.x.x DST=58.61.155.158 LEN=60 TOS=0x00 PREC=0x00 TTL=63 ID=26618 DF PROTO=TCP SPT=4724 DPT=80 WINDOW=5840 RES=0x00 SYN URGP=0
Dec 10 14:16:43 nightbox kernel: [3095642.083772] HTTP direct traffic: IN=eth1 OUT=eth0 SRC=10.1.x.x DST=58.61.155.158 LEN=60 TOS=0x00 PREC=0x00 TTL=63 ID=26619 DF PROTO=TCP SPT=4724 DPT=80 WINDOW=5840 RES=0x00 SYN URGP=0
In soldoni, ogni 6 minuti (per un certo lasso di tempo), il giocattolino in questione provava a contattare l'IP 58.61.155.158 sulla porta 80. Per far cosa, poi?
Per capirci qualcosa in più ho deciso di effettuare una query DNS inversa mediante il comando host:
nightfly@nightbox:~$ host 58.61.155.158
Host 158.155.61.58.in-addr.arpa. not found: 3(NXDOMAIN)
Uhm, not found, brutto segno. Quindi ho eseguito un whois:
nightfly@nightbox:~$ whois 58.61.155.158
% [whois.apnic.net node-4]
% Whois data copyright terms http://www.apnic.net/db/dbcopyright.html
inetnum: 58.61.155.152 - 58.61.155.167
netname: shenzhenshirongdaxinxijishuyoux
descr: shenzhenshilonggangqubujizhenbaolinglonggangdianxinfenjuIDCjifang¡£
country: CN
admin-c: SZ-AP
tech-c: IC83-AP
mnt-by: MAINT-CHINANET-GD
changed: gdtel_ipreg@163.com 20100108
status: Allocated non-portable
source: APNIC
person: SHENZHEN WANJIAN
address: Communication Bldg, No.48 Yi Tian Rd., Futian Shenzhen, China
country: CN
phone: +86-755-28812000
e-mail: ipadm@gddc.com.cn
remarks: IPMASTER is not for spam complaint,please send spam complaint to abuse@gddc.com.cn
nic-hdl: SZ-AP
mnt-by: MAINT-CHINANET-GD
changed: CHENYIQ@GSTA.COM 20080328
source: APNIC
person: IPMASTER CHINANET-GD
nic-hdl: IC83-AP
e-mail: ipadm@189.cn
address: NO.1,RO.DONGYUANHENG,YUEXIUNAN,GUANGZHOU
phone: +86-20-83877223
fax-no: +86-20-83877223
country: CN
changed: ipadm@189.cn 20110418
mnt-by: MAINT-CHINANET-GD
remarks: IPMASTER is not for spam complaint,please send spam complaint to abuse_gdnoc@189.cn
abuse-mailbox: abuse_gdnoc@189.cn
source: APNIC
Ok, in realtà stava contattando un server cinese. Un portscan stealth mi ha restituito questo output:
nightfly@nightbox:/etc/apache2$ sudo nmap -sS 58.61.155.158
Starting Nmap 5.00 ( http://nmap.org ) at 2012-12-09 20:48 CET
Interesting ports on 58.61.155.158:
Not shown: 992 filtered ports
PORT STATE SERVICE
21/tcp closed ftp
25/tcp closed smtp
53/tcp open domain
80/tcp open http
110/tcp closed pop3
1433/tcp closed ms-sql-s
5631/tcp open pcanywheredata
8888/tcp open sun-answerbook
Check veloce sulla porta 80, su cui gira una pagina in ASP (ecco lo screenshot):
Quale account non esiste? La pagina di configurazione dell'aggeggio non ha nessun form di registrazione, quindi di cosa stiamo parlando?
Altro check, stavolta sulla 8888:
Porta differente, ma identico risultato.
I fantastici costruttori cinesi hanno pensato bene di mettere in ascolto quel server su due differenti porte, poichè spesso e volentieri la porta 80 in uscita è filtrata (proxy?).
Per andare ancora più a fondo alla questione ho deciso di usare uno sniffer, ovvero tcpdump:
22:30:16.159916 IP google-public-dns-a.google.com.domain > guest1.mialan.org.3076: 797 1/0/0 A 58.61.155.158 (47)
E..K; ../.5m....
....5...7Z..............www.nwsvr.com..............'..:=..
22:30:16.161941 IP 10.1.x.x.3718 > 58.61.155.158.www: Flags [S], seq 1520784463, win 5840, options [mss 1460,sackOK,TS val 464$
E..<..@.@...
...:=.....PZ.TO...................
.F..........
Non sembrava che venissero inviate informazioni sensibili (aka password di account email ed FTP), ma piuttosto sembrava del semplice polling.
Qualcosa di utile tcpdump però l'ha fatto, ovvero mi ha rilevato l'hostname dell'IP 58.61.155.158, ovvero www.nwsvr.com, il cui whois è il seguente:
nightfly@nightbox:~$ whois nwsvr.com
Domain Name : nwsvr.com
PunnyCode : nwsvr.com
Creation Date : 2008-05-06 00:00:00
Updated Date : 2012-04-25 17:39:20
Expiration Date : 2013-05-06 00:00:00
Registrant:
Organization : shenzhenshi hui yan shi xun dian zi you xian gong si
Name : LuoYingchun
Address : 6 northern zone,shangxuekejicheng, shenzhen ,china
City : shenshi
Province/State : guangdongsheng
Country : china
Postal Code : 518000
Administrative Contact:
Name : LuoYingchun
Organization : Luo yingchun
Address : 6 northern zone,shangxuekejicheng, shenzhen ,china
City : shenzhen
Province/State : Guangdong
Country : CN
Postal Code : 518000
Phone Number : 86-755-26988288
Fax : 86-755-26988233
Email : robbi_luo@163.com
Technical Contact:
Name : LuoYingchun
Organization : Luo yingchun
Address : 6 northern zone,shangxuekejicheng, shenzhen ,china
City : shenzhen
Province/State : Guangdong
Country : CN
Postal Code : 518000
Phone Number : 86--83333333
Fax : 86--83333333
Email : robbi_luo@163.com
Billing Contact:
Name : LuoYingchun
Organization : Luo yingchun
Address : 6 northern zone,shangxuekejicheng, shenzhen ,china
City : shenzhen
Province/State : Guangdong
Country : CN
Postal Code : 518000
Phone Number : 86--83333333
Fax : 86--83333333
Email : robbi_luo@163.com
<script src="http://img2.xinnet.com/d/js/acmsd/thea178.js"></script>
Alla fine ho scoperto che si trattava di un servizio di DDNS. Ho spulciato le configurazioni dell'IP camera e mi sono ritrovato questo settaggio abilitato (di default):
Ovvero, l'aggeggino non faceva altro che tentare di comunicare al server (cinese) l'indirizzo IP pubblico della mia WAN. E con la privacy come la mettiamo?
Ho tolto la spunta ed il traffico "anomalo" ha cessato di esistere.
Alla prossima.