{"id":302,"date":"2009-06-09T12:19:48","date_gmt":"2009-06-09T12:19:48","guid":{"rendered":"http:\/\/blog.benny-baumann.de\/?p=302"},"modified":"2009-06-09T12:19:48","modified_gmt":"2009-06-09T12:19:48","slug":"schmerzen-durch-plaste-router","status":"publish","type":"post","link":"https:\/\/blog.benny-baumann.de\/?p=302","title":{"rendered":"Schmerzen durch Plaste-Router"},"content":{"rendered":"<p>Ich hatte schon l\u00e4nger die Vermutung, dass irgendwas an den Firewall-Settings meines NETGEAR-Routers DG834GTB nicht ganz in Ordnung ist, da seit dem letzten Firmware-Upgrade auf Version 1.02.14 eine Reihe verschiedener Ports nach au\u00dfen nicht freigegeben wurden, bzw. ganz seltsames Verhalten zu beobachten war. Dies \u00e4u\u00dferte sich z.B. darin, dass ich auf eine Reihe \u00fcblicher Messenger-Ports outbound nicht mehr connecten konnte, ich diese aber inbound freigeben konnte, ich zu anderen zwar UDP-Pakete schicken konnte, aber keine Antwort auf TCP-Connects bekam und was man sich sonst an seltsamen Verhalten vorstellen kann.<!--more--><\/p>\n<p>Nach dem gestern auf Grund dieses Verhaltens eine internet-Gaming-Session ins Wasser gefallen war, hab ich mich einmal umgeschaut, ob es irgendwo eine Beschreibung zum Zugriff auf die Router-Konsole gibt. Den daraufhin gefundenen <a href=\"http:\/\/www.asininemonkey.com\/netgear-dg834gt-hacking.html\">Artikel mit ausf\u00fchrlichen Beschreibungen<\/a> hab ich auch sofort in Angriff genommen, was sehr interessante Details zu Tage f\u00f6rderte. So z.B. folgendes Detail bzgl. der verbauten CPU:<\/p>\n<pre lang=\"text\"># cat \/proc\/cpuinfo\r\nsystem type             : 96348GW-10\r\nprocessor               : 0\r\ncpu model               : BCM6348 V0.7\r\nBogoMIPS                : 255.59\r\nwait instruction        : no\r\nmicrosecond timers      : yes\r\ntlb_entries             : 32\r\nextra interrupt vector  : yes\r\nhardware watchpoint     : no\r\nVCED exceptions         : not available\r\nVCEI exceptions         : not available\r\n<\/pre>\n<p>Aber das war es weniger, was ich wissen wollte; wenn doch es interessant zu wissen ist, dass eine CPU im Entwicklungsstadium in diesem kleinen K\u00e4stchen verbaut ist \ud83d\ude09 Wichtiger war aber vielmehr, was in der Firewall-Konfiguration verbockt wurde:<\/p>\n<pre lang=\"text\"># cat \/tmp\/nvram|grep fw\r\nfw_nat=1\r\nfw_block=0\r\nfw_block_keyword=\r\nfw_block_trust_enable=0\r\nfw_block_trust=\r\nfw_services_def=Any(ALL):any:1-65535Any(TCP):tcp:1-65535Any(UDP):udp:1-65535...\r\nfw_services=...\r\nfw_in_rules=...\r\nfw_out_rules=\r\nfw_dmz_enable=0\r\nfw_dmz=\r\nfw_spi=1\r\nfw_response_ping=0\r\nfw_schedule=1111111:0:0-24:0\r\nfw_time_zone=+1a\r\nfw_remote=1\r\nfw_remote_type=1\r\nfw_remote_range_start=0.0.0.0\r\nfw_remote_range_end=0.0.0.0\r\nfw_remote_single=127.0.0.1\r\nfw_remote_port=65536\r\nfw_import=0\r\n<\/pre>\n<p>Ich hab aus den Settings mal ein paar unwichtige \ud83d\ude1b Informationen entfernt. Das sind lediglich die auf meinem Router freigegebenen Dienste. Allgemein ausgedr\u00fcckt ist meine Policy Ausgehend alles offen, eingehend nur freigegebene Dienste erlaubt. Verwundert hat mich in diesem Zusammenhang die Einstellung fw_import, die man besser als &#8222;Firewall IM-Port&#8220; lesen sollte, statt als einzelnes Wort, aber die Vermutung hatte ich sp\u00e4testens nach etwas Testen mit dem Webinterface.<\/p>\n<p>Interessant war nun, dass unabh\u00e4ngig von der Einstellung der Einstellung fw_import immer folgende IP-Chain auftauchte:<\/p>\n<pre lang=\"text\"># iptables --list REAIM_IN\r\nChain REAIM_IN (1 references)\r\ntarget     prot opt source               destination\r\nACCEPT     tcp  --  anywhere             anywhere           tcp dpts:1863:1864\r\nACCEPT     tcp  --  anywhere             anywhere           tcp dpt:5566\r\nACCEPT     tcp  --  anywhere             anywhere           tcp dpt:5190\r\nACCEPT     tcp  --  anywhere             anywhere           tcp dpt:4443\r\nACCEPT     tcp  --  anywhere             anywhere           tcp dpts:40000:40099\r\nACCEPT     tcp  --  anywhere             anywhere           tcp dpt:1864\r\nACCEPT     tcp  --  anywhere             anywhere           tcp dpt:5566\r\nACCEPT     tcp  --  anywhere             anywhere           tcp dpt:5190\r\nACCEPT     tcp  --  anywhere             anywhere           tcp dpt:4443\r\nACCEPT     udp  --  anywhere             anywhere           udp dpts:40000:41000\r\n<\/pre>\n<p>was eigentlich in Bezug auf die INPUT-Chain (DROP-Policy) hei\u00dfen m\u00fcsste, dass diese Ports explizit ge\u00f6ffnet werden &#8211; f\u00fcr alle Interfaces. Naja, wurden sie aber nicht, was ein kurzer Blick mit <a href=\"http:\/\/tracetcp.sourceforge.net\/\">tracetcp<\/a> beweist:<\/p>\n<pre lang=\"text\"># tracetcp login.icq.com:5190 -n\r\n\r\nTracing route to 64.12.200.89 on port 5190\r\nOver a maximum of 30 hops.\r\n1       Destination Reached in 1 ms. Port closed on 64.12.200.89\r\nTrace Complete.\r\n<\/pre>\n<p>Wobei selbst dieser Trace in sich bereits sehr seltsam ist, da der erste Hop mein Router und nicht der Server von AOL ist &#8230;<\/p>\n<p>Auch das manuelle Entfernen dieser Chain brachte keine Besserung. Also mal ein wenig bei NetGEAR auf der Seite umgeschaut und siehe da: Es gibt ein Firmware-Upgrade 1.02.15. Dieses installiert und seither dieses Problem los. Daf\u00fcr auch das Setting fw_import &#8230;<\/p>\n<p>Bliebe abschlie\u00dfend noch zu erw\u00e4hnen, dass die Connection jetzt funktioniert:<\/p>\n<pre lang=\"text\"># tracetcp login.icq.com:5190 -n\r\n\r\nTracing route to 64.12.161.185 on port 5190\r\nOver a maximum of 30 hops.\r\n1       3 ms    2 ms    2 ms    192.168.0.1\r\n2       9 ms    8 ms    9 ms    87.186.224.22\r\n3       9 ms    9 ms    9 ms    87.186.255.134\r\n4       106 ms  105 ms  106 ms  62.156.131.162\r\n5       108 ms  108 ms  108 ms  66.185.136.13\r\n6       109 ms  110 ms  108 ms  66.185.138.250\r\n7       110 ms  108 ms  108 ms  66.185.135.58\r\n8       111 ms  108 ms  109 ms  172.20.149.106\r\n9       Destination Reached in 111 ms. Connection established to 64.12.161.185\r\nTrace Complete.\r\n<\/pre>\n<p>Bis zum n\u00e4chsten Problem \ud83d\ude09<\/p>\n<p class=\"wp-flattr-button\"><a href=\"https:\/\/blog.benny-baumann.de\/?flattrss_redirect&amp;id=302&amp;md5=4575062eb5358046565d1b5725eaa225\" title=\"Flattr\" target=\"_blank\"><img src=\"http:\/\/blog.benny-baumann.de\/wp-content\/plugins\/flattr\/img\/flattr-badge-large.png\" srcset=\"http:\/\/blog.benny-baumann.de\/wp-content\/plugins\/flattr\/img\/flattr-badge-large.png\" alt=\"Flattr this!\"\/><\/a><\/p>","protected":false},"excerpt":{"rendered":"<p>Ich hatte schon l\u00e4nger die Vermutung, dass irgendwas an den Firewall-Settings meines NETGEAR-Routers DG834GTB nicht ganz in Ordnung ist, da seit dem letzten Firmware-Upgrade auf Version 1.02.14 eine Reihe verschiedener Ports nach au\u00dfen nicht freigegeben wurden, bzw. ganz seltsames Verhalten zu beobachten war. Dies \u00e4u\u00dferte sich z.B. darin, dass ich auf eine Reihe \u00fcblicher Messenger-Ports [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0,"footnotes":""},"categories":[29],"tags":[194,196,195,192,193,197],"class_list":["post-302","post","type-post","status-publish","format-standard","hentry","category-software","tag-dg834gtb","tag-hack","tag-konsole","tag-netgear","tag-router","tag-tracetcp"],"_links":{"self":[{"href":"https:\/\/blog.benny-baumann.de\/index.php?rest_route=\/wp\/v2\/posts\/302","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.benny-baumann.de\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.benny-baumann.de\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.benny-baumann.de\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.benny-baumann.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=302"}],"version-history":[{"count":1,"href":"https:\/\/blog.benny-baumann.de\/index.php?rest_route=\/wp\/v2\/posts\/302\/revisions"}],"predecessor-version":[{"id":303,"href":"https:\/\/blog.benny-baumann.de\/index.php?rest_route=\/wp\/v2\/posts\/302\/revisions\/303"}],"wp:attachment":[{"href":"https:\/\/blog.benny-baumann.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=302"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.benny-baumann.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=302"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.benny-baumann.de\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=302"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}