{"id":169,"date":"2010-08-26T23:56:33","date_gmt":"2010-08-27T03:56:33","guid":{"rendered":"http:\/\/hackspot.net\/iSpotBlog\/?p=169"},"modified":"2010-08-26T23:56:33","modified_gmt":"2010-08-27T03:56:33","slug":"why-dont-firmware-downgrades-work-on-the-ispot","status":"publish","type":"post","link":"http:\/\/hackspot.net\/iSpotBlog\/?p=169","title":{"rendered":"Why don&#8217;t firmware &#8216;downgrades&#8217; work on the iSpot?"},"content":{"rendered":"<p>As you may have noticed, the iSpot&#8217;s web interface refuses to let you upload a firmware that isn&#8217;t &#8220;newer&#8221; that the current firmware.<\/p>\n<p>When making this decision, the web interface looks to the &#8220;\/etc\/version.svn&#8221; file to see what the &#8216;current&#8217; firmware version is.\u00a0 The number stored in this file is the\u00a0&#8220;####&#8221; part of the &#8220;2.0.0.0 [R#### &#8230; ]&#8221; software version string shown\u00a0in the web interface&#8217;s firmware info page.<\/p>\n<p>The\u00a0code looks to the\u00a0firmware update &#8220;.bin&#8221; file&#8217;s &#8220;svn version&#8221;\u00a0header\u00a0item to see what the new firmware&#8217;s version is (refer to &#8220;<a href=\"http:\/\/hackspot.net\/iSpotBlog\/?p=82\">iSpot firmware download image file format<\/a>&#8221; for details on the bin file header).<\/p>\n<p>If the &#8220;.bin&#8221; file&#8217;s version is\u00a0less than or\u00a0equal to\u00a0the current version, it refuses to accept the update.<\/p>\n<p>Even if you were to &#8216;patch&#8217; the &#8220;.bin&#8221; file&#8217;s header version to be greater than the current version (to make it appear &#8216;newer&#8217;), it\u00a0may still fail to take the update.\u00a0 The reason: &#8220;\/bin\/flash_program&#8221; contains a table of md5sums for older kernel\/rootfs images that are &#8216;disallowed\/blacklisted&#8217;.\u00a0 If the incoming firmware&#8217;s kernel or rootfs md5sum matches any of the items in that table, then it will abort the flash programming process.<\/p>\n<p>This blacklist allows Clear to fix &#8216;backdoors&#8217; (such as the ability to enable telnet in older firmware).\u00a0 Once you are on newer firmware, you can never go back to the old firmware with the backdoor.\u00a0\u00a0 At least that seems to be what they intended&#8230;<\/p>\n<p><em>Disclaimer: information on this site is for educational purposes only, and intended to help iSpot owners experiment with their own devices. I do not condone any hacking for illegal purposes, such as stealing service, etc.<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>As you may have noticed, the iSpot&#8217;s web interface refuses to let you upload a firmware that isn&#8217;t &#8220;newer&#8221; that the current firmware. When making this decision, the web interface looks to the &#8220;\/etc\/version.svn&#8221; file to see what the &#8216;current&#8217; &hellip; <a href=\"http:\/\/hackspot.net\/iSpotBlog\/?p=169\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-169","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/hackspot.net\/iSpotBlog\/index.php?rest_route=\/wp\/v2\/posts\/169","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/hackspot.net\/iSpotBlog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/hackspot.net\/iSpotBlog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/hackspot.net\/iSpotBlog\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/hackspot.net\/iSpotBlog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=169"}],"version-history":[{"count":7,"href":"http:\/\/hackspot.net\/iSpotBlog\/index.php?rest_route=\/wp\/v2\/posts\/169\/revisions"}],"predecessor-version":[{"id":176,"href":"http:\/\/hackspot.net\/iSpotBlog\/index.php?rest_route=\/wp\/v2\/posts\/169\/revisions\/176"}],"wp:attachment":[{"href":"http:\/\/hackspot.net\/iSpotBlog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=169"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/hackspot.net\/iSpotBlog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=169"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/hackspot.net\/iSpotBlog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=169"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}