<?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>Martin Bouška &#187; &#187; bouskam</title>
	<atom:link href="https://www.bouska.biz/author/bouskam/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.bouska.biz</link>
	<description>... něco málo z IT světa</description>
	<lastBuildDate>Mon, 09 Jun 2025 08:02:54 +0000</lastBuildDate>
	<language>cs-CZ</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=4.2.3</generator>
	<item>
		<title>Linkedin</title>
		<link>https://www.bouska.biz/linkedin/</link>
		<comments>https://www.bouska.biz/linkedin/#comments</comments>
		<pubDate>Mon, 09 Jun 2025 08:02:17 +0000</pubDate>
		<dc:creator><![CDATA[bouskam]]></dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">https://www.bouska.biz/?p=514</guid>
		<description><![CDATA[přesunul jsem se kompletně na LinkedIN. prosím, následujte mne i&#8217;ve moved to linkedIN completely . please follow me there ]]></description>
				<content:encoded><![CDATA[<p>přesunul jsem se kompletně na LinkedIN. prosím,<a href="https://www.linkedin.com/in/martinbouska/"> následujte mne</a></p>
<p>i&#8217;ve moved to linkedIN completely . please <a href="https://www.linkedin.com/in/martinbouska/">follow me there </a></p>
]]></content:encoded>
			<wfw:commentRss>https://www.bouska.biz/linkedin/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Lastpass se rozbil?</title>
		<link>https://www.bouska.biz/lastpass-se-rozbil/</link>
		<comments>https://www.bouska.biz/lastpass-se-rozbil/#comments</comments>
		<pubDate>Fri, 07 Apr 2017 17:39:43 +0000</pubDate>
		<dc:creator><![CDATA[bouskam]]></dc:creator>
				<category><![CDATA[bezpečnost]]></category>
		<category><![CDATA[chrome]]></category>
		<category><![CDATA[lastpass]]></category>
		<category><![CDATA[XP]]></category>

		<guid isPermaLink="false">http://www.bouska.biz/?p=397</guid>
		<description><![CDATA[Také se Vám po poslední aktualizaci rozbil Lastpass? Lastpass měl poslední dobou máslo na hlavě, kdy opravoval každý týden nějakou zásadní chybu. Je dobře, že to aspoň přiznali a konali. Nicméně zřejmě v tom fofru neměli moc času na testování a tak se stalo, že zatímco verze 4.1.45.84 (z 23.3.2017)  na  Win32bit / Chrome 49.0.2623 &#8230; </p><p><a class="more-link block-button" href="https://www.bouska.biz/lastpass-se-rozbil/">Pokračovat ve čtení &#187;</a>]]></description>
				<content:encoded><![CDATA[<p>Také se Vám po poslední aktualizaci rozbil Lastpass?</p>
<p>Lastpass měl poslední dobou máslo na hlavě, kdy <a href="https://blog.lastpass.com/2017/03/important-security-updates-for-our-users.html/" target="_blank">opravoval každý týden nějakou zásadní chybu</a>. Je dobře, že to aspoň přiznali a konali.</p>
<p>Nicméně zřejmě v tom fofru neměli moc času na testování a tak se stalo, že zatímco verze</p>
<p><strong>4.1.45.84</strong> (z 23.3.2017)  na  Win32bit / Chrome 49.0.2623 je funkční bez problémů,</p>
<p>tak následující verze <strong>4.1.45.87</strong> (z 3.4.2017) už ne<span id="more-397"></span></p>
<p>s touto verzí totiž .js hází chybu</p>
<blockquote><p>onloadwff.js: Uncaught SyntaxError: Identifier ‘is_watermark‘ has already been declared</p></blockquote>
<p>Tato chyba zdá se je jen ve starém chromu 49 (poslední verze pro XP), u novějších verzí jsem na tuto chybu nenarazil a zdají se být funkční.</p>
<p>Řešením je buď použít novější verzi chrome a nebo  &#8211; pokud třeba máte windows XP a nemůžete chrome upgradovat &#8211;  nezbývá než Lastpass dočasně downgradovat ( a doufat, že to autoři s vydáním příští verze snad opraví )</p>
<p>Pokud se rozhodnete pro to druhé řešení, tak <a href="https://uloz.to/!DsmslI88ejPK/4-1-43-84-0-tar" target="_blank">zde naleznete upravený (viz níže) Lastpass verzi 4.1.45.84 ke stažení</a></p>
<p>abyste zabránili  automatické aktualizaci pluginu na novější verze, tak</p>
<blockquote><p>1.obsah archivu rozbalte do složky,</p>
<p>2. poté aktivujte v chrome://extensions <strong>vývojářský režim</strong> a</p>
<p>3. zvolte načíst rozbalené rozšíření</p>
<p><strong>Tímto způsobem zajistíte, že se Lastpass nebude již nadále aktualizovat a zůstane ve Vašem Chromu zakonzervován v této poslední funkční verzi.</strong></p></blockquote>
<p><strong>Nebo</strong> si také můžete stáhnout <a href="https://uloz.to/!wXUORDRahrb6/4-1-43-84-0-tar-gz" target="_blank">originální neupravený archiv Lastpass 4.1.45.84</a> a přepsat jím obsah složky aktuální verze , např</p>
<blockquote><p>%USERPROFILE%\Local Settings\Application Data\Google\Chrome\User Data\Default\Extensions\hdokiejnpimakedhajhdlcegeplioah\4.1.45.8<strong>7</strong>_0</p>
<p>samozřejmě, pokud bude zlobit v budoucnu nějaká novější verze, stačí obsah složky nahradit, ale přitom <strong>zachovat  číslo nejnovější verze</strong> v názvu této složky</p>
<p>Toto je však nutno s každým dalším vydáním nové verze zopakovat, neboť se rozšíření automaticky aktualizují.</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>https://www.bouska.biz/lastpass-se-rozbil/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>PROCESS1_INITIALIZATION_FAILED</title>
		<link>https://www.bouska.biz/proces1_initialization_failed/</link>
		<comments>https://www.bouska.biz/proces1_initialization_failed/#comments</comments>
		<pubDate>Sat, 01 Apr 2017 07:42:04 +0000</pubDate>
		<dc:creator><![CDATA[bouskam]]></dc:creator>
				<category><![CDATA[windows server]]></category>
		<category><![CDATA[2008R2]]></category>
		<category><![CDATA[catroot]]></category>
		<category><![CDATA[cryptsvc]]></category>
		<category><![CDATA[wuauserv]]></category>

		<guid isPermaLink="false">http://www.bouska.biz/?p=385</guid>
		<description><![CDATA[Chyba 0x0000006B  PROCESS1_INITIALIZATION_FAILED nastává, pokud je špatně vygenerovan c:\windows\system32\codeintegrity\bootcat.cache Tento soubor je generován při startu windows 7 ři 2008 R2 a mění se pokaždé když se změní databáze podisů ovladačů a aplikací c:\windows\system32\catroot (což znamená po každé instalaci čehokoliv vč. automatických aktualizací windows) Pokud máte přístup ke stroji s podobnou konfigurací, můžete zkusit přenést tento &#8230; </p><p><a class="more-link block-button" href="https://www.bouska.biz/proces1_initialization_failed/">Pokračovat ve čtení &#187;</a>]]></description>
				<content:encoded><![CDATA[<p>Chyba 0x0000006B  PROCESS1_INITIALIZATION_FAILED</p>
<p>nastává, pokud je špatně vygenerovan c:\windows\system32\codeintegrity\bootcat.cache</p>
<p>Tento soubor je generován při startu windows 7 ři 2008 R2 a mění se pokaždé když se změní databáze podisů ovladačů a aplikací c:\windows\system32\catroot (což znamená po každé instalaci čehokoliv vč. automatických aktualizací windows)</p>
<p><span id="more-385"></span></p>
<p>Pokud máte přístup ke stroji s podobnou konfigurací, můžete zkusit přenést tento soubor z něj. Pokud se však stroje budou lišit (např jinou verzí nějakého ovladače) pravděpodobně tím rozbijete konfiguraci a něco nebude fungovat &#8211; to je nepříjemné, pokud se Vám takto podaří rozbít např. ovladač grafické karty</p>
<p>Nejlepší způsob opravy je:</p>
<ol>
<li>vyndat disk, připojit jej k fungujícímu stroji</li>
<li>zkontrolovat katalog podpisů \windows\system32\catroot\ zda obsahuje složku {F750E6C3-38EE-11D1-85E5-00C04C2295EE} a zda je v ní databáze certifikátů ovladačů tvořená několika stovkami až tisícovkami souborů certifikátů *.cat (přesný počet záleží na konkrétní konfiguraci stroje a na momentálně nainstalovaných updatech). Pokud tato složka chybí, je prázdná nebo obsahuje jen jeden soubor oemXX.cat (kde XX je nějaké číslo, např. oem19.cat), bude nutné nejprve vyhledat původní obsah a vrátit jej kam patří, případně se pokusit přenést obsah této složky z jiné instalace windows 7 / 2008R2 pokudmožno co nejvíce podobné té Vaší, jinak opět nebude něco fungovat.</li>
<li>Po úspěšné opravě, tedy obsahuje-li už složka catroot správnou databázi certifikátů, je pak možno soubor \windows\system32\codeintegrity\bootcat.cache smazat nebo přejmenovat aby při startu systému mohl být automaticky vygenerován nový.</li>
</ol>
<p><strong>A nakonec ještě poznámka k původnímu obsah složky \windows\system32\catroot\</strong></p>
<p><em>Po diskuzních fórech se povaluje spousta &#8220;zaručených&#8221; návodů jak opravit chyby ve windows update. Většina jich doporučuje smazat c:\windows\system32\catroot<strong>2</strong>\, který se po opětovném spuštění služeb windows update (wuausvc) a šifrování (cryptsvc) vytvoří znovu. Poku však krom catroot<strong>2</strong> omylem smažete či v lepším případě přejmenujete také složku catroot zaděláte si tím na problém, neboť tato složka se automaticky <strong>NEOBNOVÍ</strong> a přijdete tak o digitální podpisy (certifikáty) všech updatů a ovladačů, které jste si kdy nainstalovali do čisté instalace windows. Pokud by se teoreticky jednalo o čerstvou instalaci bez servicepacku a bez aplikovaných updatů, nic se nestane, ale v dnešní době je většina stojů s tímto starým operačním systémem plná doinstalovaných updatů a ovladačů, takže databáze catroot obsahuje i několik tisíc položek.</em></p>
]]></content:encoded>
			<wfw:commentRss>https://www.bouska.biz/proces1_initialization_failed/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HP smart raid B110i array rebuild</title>
		<link>https://www.bouska.biz/hp-smart-raid-b110i-array-rebuild/</link>
		<comments>https://www.bouska.biz/hp-smart-raid-b110i-array-rebuild/#comments</comments>
		<pubDate>Wed, 01 Feb 2017 08:15:49 +0000</pubDate>
		<dc:creator><![CDATA[bouskam]]></dc:creator>
				<category><![CDATA[hardware]]></category>
		<category><![CDATA[B110i]]></category>
		<category><![CDATA[HP]]></category>
		<category><![CDATA[raid]]></category>

		<guid isPermaLink="false">http://www.bouska.biz/?p=394</guid>
		<description><![CDATA[pokud se Vám nějakým způsobem rozbil raid 1, potřebujete provést znovu synchronizaci, spolehnete se přitom na HP  &#8211; a můžete narazit jako já. Proto věnujte prosím pozornost tomuto kratičkému návodu, jak se vyvarovat několika hodinám nervování. Většinou předpokládám, že pokud se má něco pokazit, nebude to v tak fundamentální věci, jako je firmware raid controlleru. Bohužel &#8230; </p><p><a class="more-link block-button" href="https://www.bouska.biz/hp-smart-raid-b110i-array-rebuild/">Pokračovat ve čtení &#187;</a>]]></description>
				<content:encoded><![CDATA[<p>pokud se Vám nějakým způsobem rozbil raid 1, potřebujete provést znovu synchronizaci, spolehnete se přitom na HP  &#8211; a můžete narazit jako já. Proto věnujte prosím pozornost tomuto kratičkému návodu, jak se vyvarovat několika hodinám nervování.</p>
<p>Většinou předpokládám, že pokud se má něco pokazit, nebude to v tak fundamentální věci, jako je firmware raid controlleru. Bohužel HP se to povedlo .Stroj zákazníka byl HP proliant ML110G6 s raid controllerem B110i. Verze firmwaru 1.38<span id="more-394"></span></p>
<p>potřeboval jsem rozbít array a poté ho znovu sestavit, což obvykle nebývá žádný problém. Avšak narazil jsem, když jsem potřeboval spustit rebuild. Kontrolér správně poznal, že je to potřeba a nabídl mi (cituji volně, přesnou formulaci si nepamatuji):</p>
<blockquote><p>press F1 for automatic data recovery (resync)</p>
<p>press F2 for continue boot without recovery</p>
<p>&nbsp;</p></blockquote>
<p>nabízel mi defaultní akci (F1) po uplynutí 60 vteřin odpočtu, tak jsem pro urychlení stiskl očekávanou F1 a očekával nějakou odezvu …. a ono NIC</p>
<p>dole na obrazovce stále svítilo RESUME F1 or F2 a já jsem čekal a čekal a čekal až proběhne synchronizace.</p>
<p>Po hodině mi přišlo podezřelé, že</p>
<p>1. domnělá synchronizace neukazuje žádný progress bar či jiný indikátor a</p>
<p>2. hlavně že tato činnost neprobíhá na pozadí při normální funkci OS – jedná se přece o server, tak kolik hodin ještě mám čekat, než konečně naběhne a já budu moct jít domů??</p>
<p>Nakonec jsem to nevydržel a musel jsem jej natrvrdo vypnout.</p>
<p>Při následném pokusu jsem se ničeho raději  už nedotýkal, F1 jsem nestiskl, počkal jsem 60 vteřin – a hle, najednou se objevila očekávaná hláška automatic rebuild started a systém pokračoval ihned v bootování&#8230; za minutu bylo vyřešeno, synchronizace probíhala na pozadí a já mohl jít domů.</p>
<p>Tedy resumé: HP smart array obsahuje chybu ve firmwaru 1.38, kdy automatická synchronizace raidu se nepouští stiskem F1 ale naopak jeho <strong>NESTISKNUTÍM</strong></p>
<p>(Pro zajímavost: klávesa F2 mi předtím pro rozbití raidu fungovala, takže v  klávesnici to nebylo)</p>
]]></content:encoded>
			<wfw:commentRss>https://www.bouska.biz/hp-smart-raid-b110i-array-rebuild/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Amd Option RAID &amp; Server Core</title>
		<link>https://www.bouska.biz/amd-option-raid-server-core/</link>
		<comments>https://www.bouska.biz/amd-option-raid-server-core/#comments</comments>
		<pubDate>Sun, 17 Jan 2016 09:08:25 +0000</pubDate>
		<dc:creator><![CDATA[bouskam]]></dc:creator>
				<category><![CDATA[hardware]]></category>
		<category><![CDATA[windows server]]></category>

		<guid isPermaLink="false">http://www.bouska.biz/?p=362</guid>
		<description><![CDATA[Mám doma na půdě už nějaký ten rok svůj server. Když jsem se kdysi dávno při instalaci rozhodoval, který OS použiju pro nejnižší vrstvu virtualizace, tehdy jsem se rozhodl pro Windows server 2012 R2 CORE.  Důvody proč jsem nepoužil linux Xen nebo KVM byly spíš podružné, měl jsem prostě chuť vyzkoušet, jak budou linux guesti &#8230; </p><p><a class="more-link block-button" href="https://www.bouska.biz/amd-option-raid-server-core/">Pokračovat ve čtení &#187;</a>]]></description>
				<content:encoded><![CDATA[<p>Mám doma na půdě už nějaký ten rok svůj server. Když jsem se kdysi dávno při instalaci rozhodoval, který OS použiju pro nejnižší vrstvu virtualizace, tehdy jsem se rozhodl pro Windows server 2012 R2 CORE.  Důvody proč jsem nepoužil linux Xen nebo KVM byly spíš podružné, měl jsem prostě chuť vyzkoušet, jak budou linux guesti fungovat pod hyper-v. A taky zvědavost, japato že fachá ten Microsoftí server zdarma.</p>
<p><span id="more-362"></span></p>
<p>No nebyla to nejrozumnější volba: bez windows 8+ workstationu narazíte na věci, které cmdlety prostě udělat nejdou.Ale to  o tom až jindy.</p>
<p>Chtěl jsem dnes sdělit postřehy s tím falešným raid řadičem, za který se zřejmě AMD stydí a tudíž jej ani pořádně nepojmenovalo. Ano, řeč bude o Amd Optimal Raidu integrovaném v chipsetech SB7xx, SB850 a zřejmě i novějších.</p>
<p>Nevím jak dnes, ale dříve byly tyhle pseudo RAIDy nepříliš oblíbené pro svou nízkou výkonnost a hlavně protože to nebyly skutečné hw. řadiče, ale jen jakási nadstavba biosu, kterou se dal nějaký základní array nastavit. Veškeré další běžné činnosti pak řídil a vykonával hostitelský OS pomocí (také neoblíbených) proprietárních ovladačů.</p>
<p>V tomto jsem za uplynulých cca 10 let stále nezaznamenal žádný pokrok.</p>
<p>Je pravda, že dnes už vzhledem k výkonu aktuálních CPU a propustnosti sběrnic není zatížení CPU  vlivem administrace spojené s RAID řadičem již rozhodující, toho 1% ubraného z výkonu asi není nutno litovat.</p>
<p>Problém stále zůstává v tom, že tyto pseudo raidy jsou závislé na OS, a pokud opravdu nastane problém, tak jej nevyřešíte bez nabootování OS  a spuštění aplikace pro managment raidu. Což je ovšem dost chyba designu, neboť když už problém nastane, zpravidla to znamená, že nechcete pokračovat v bootování a riskovat, že dojde k úplnému rozpadu raidového pole a ztrátě dat.</p>
<p>Nicméně nedá se v tomto případě nic dělat. Pokud se v postu objeví nějaká chyba, je ten bios tak hloupý, že stejně v něm nejde nic opravit. Maximálně tak můžete  pokusit se pole zcela zrušit a sestavit znovu (pozor na initalisation, zřejmě o data nechcete přijít), ale výsledek je nezaručen a operace značně riskantní.</p>
<p>Největší fail je, když dojde k rozpadu / degradaci pole, pokusí se navíc pokračovat v bootování <strong>bez zásahu uživatele</strong>, což považuju za obrovskou chybu. Neboť samozřejmě, jakmile se na jeden ze dvou disků v raid1 šáhne, dojde k nenávratnému rozpadu pole, neboť si potom obrazy binárně neodpovídají. A to se také stalo. Omylem jsem zapojil jeden z disků do špatného sata portu (jež nebyl aktivní), a ten pitomý raid management jen asi na vteřinu zobrazil varování. Než jsem stačil zasáhnout už pokračoval v bootování a bylo to. Raid se mi rozpadl a sesynchronizovat jej znovu nebylo čím.</p>
<p>Nepříjemné je, že v případě amd je managment aplikace (zvaná RaidXpert tool) určena dle popisu pouze pro Win 7, Win8, Win8.1. a win 10. No řekněme, že pokud běží na Win 8 / 8.1, mohlo by to jít i na  Win 2012 / 2012 R2&#8230; ale garantováno to jaksi není&#8230;.. Ale co CORE server? nikde ani zmínka sakryš&#8230;</p>
<p>&nbsp;</p>
<p>(pokračování příště)</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>https://www.bouska.biz/amd-option-raid-server-core/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>postřehy ohledně BASHe</title>
		<link>https://www.bouska.biz/postrehy-ohledne-bashe/</link>
		<comments>https://www.bouska.biz/postrehy-ohledne-bashe/#comments</comments>
		<pubDate>Thu, 22 Jan 2015 14:26:05 +0000</pubDate>
		<dc:creator><![CDATA[bouskam]]></dc:creator>
				<category><![CDATA[bezpečnost]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[bash]]></category>
		<category><![CDATA[shellshock]]></category>

		<guid isPermaLink="false">http://www.bouska.biz/?p=315</guid>
		<description><![CDATA[Při dění kolem Bashe v nedávné aféře jsem byl donucen aktualizovat všechny svoje nainsatalované distribuce od Mandrivy po Ubuntu. Ty novější  (např Ubuntu 12.04 LTS a samozřejmě nejnovější 14 ) šly aktualizovat automaticky z repozitářů. Ale u některých postarších (konkrétně třeba Mandriva 2010, Ubuntu 13.04) už jejich tvůrcům na bezpečnosti asi tolik nezáleží , takže nezbylo &#8230; </p><p><a class="more-link block-button" href="https://www.bouska.biz/postrehy-ohledne-bashe/">Pokračovat ve čtení &#187;</a>]]></description>
				<content:encoded><![CDATA[<p>Při dění kolem Bashe v <a title="shellshock" href="https://securityblog.redhat.com/2014/09/24/bash-specially-crafted-environment-variables-code-injection-attack/" target="_blank">nedávné aféře</a> jsem byl donucen aktualizovat všechny svoje nainsatalované distribuce od Mandrivy po Ubuntu. Ty novější  (např Ubuntu 12.04 LTS a samozřejmě nejnovější 14 ) šly aktualizovat automaticky z repozitářů.</p>
<p>Ale u některých postarších (konkrétně třeba Mandriva 2010, Ubuntu 13.04) už jejich tvůrcům na bezpečnosti asi tolik nezáleží , takže nezbylo než v těchto případech kompilovat <a title="Bash" href="https://ftp.gnu.org/gnu/bash/" target="_blank">ze zdrojového kódu </a></p>
<p><span id="more-315"></span></p>
<p>Pominu fakt, že patche přibývaly téměř každým dnem po dobu zhruba dvou týdnů. Když už tahle zranitelnost vydržela více jak 10 let, potom myslím, že ten týden zdržení na vydání jedné kumulativní záplaty by se asi dal vydržet ale budiž&#8230;</p>
<p>Zaujalo mne však, že ani po aplikaci všech záplat jsem se s verzí 3.2.57 nedostal přes <a href="http://shellshocker.net">všech 5 testů</a> bez ztráty květinky. Zkrátka mi na jednom stroji zranitelnost 7187 (nested loops) stále zůstává a nejde opravit.</p>
<p><span style="font-size: 12px;">Toto jsem vyřešil tak, že jsem vyměnil shelly a místo bashe mám teď pro všechny defaultně sh. </span><span style="font-size: 12px;">Jediný účet s bashem používám jenom já pro správu. Mohl jsem si to dovolit, protože se jedná o backend server bez lokálního přístupu běžných uživatelů .</span></p>
<p>Nicméně, zjistil jsem, že se mezi sebou verze BASHe poměrně <strong>zásadně liší</strong> i mezi dvěma minoritními verzemi, konkrétně neopatchovaná <span style="font-size: 12px;">3.2.48 vs 3.2.57:</span></p>
<p>Totiž původní neopatchovaná verze byla benevolentní co se týče deklarace funkcí, zatímco opatchovaná je v tomto striktní. Vzhledem k povaze objevených zranitelností by se to dalo očekávat, nicméně pro nepřipravené to znamená komplikace a nepříjemnosti spojené s laděním nutným po opatchování.</p>
<p><span style="font-size: 12px;">Skripty odladěné na přechozí verzi po opatchování začaly najednou kravit a vyhazovat chyby, které jsem nikdy předtím nezaznamenal. Poněkud mne zarazilo že to nedělaly ani tak moje vlastní skripty, ale často i poměrně zásadní součásti systému, zejména rd (init) skritpy. </span></p>
<p><span style="font-size: 12px;">Zjistil jsem, že zatímco původní neopatchovaná verze bashe umožňovala deklarovat funkci minimálně třemi způsoby:</span></p>
<p>standartně:</p>
<blockquote><p><strong>function</strong> <tt><em>function_name</em></tt> {<br />
<tt><em>command</em></tt>&#8230;<br />
}</p></blockquote>
<p><span style="font-size: 12px;"> zkráceně ( C++ like ):</span></p>
<blockquote><p><tt><em>function_name</em></tt> () {<br />
<tt><em>command</em></tt>&#8230;<br />
}</p></blockquote>
<p><span style="font-size: 12px;">a navíc také tolerovala sémanticky <strong>chybný zápis</strong> ve formě:</span></p>
<blockquote><p><span style="color: #ff0000;"><tt><em><strong>function</strong> function_name</em></tt> () { </span><br />
<span style="color: #ff0000;"><tt><em>command</em></tt>&#8230; </span><br />
<span style="color: #ff0000;">} </span></p></blockquote>
<p><strong>což už ale opatchovaná striktní verze nezkousne !! </strong><span style="font-size: 12px;"> </span></p>
<p><span style="font-size: 12px;">Bylo nutné tyto nestandartní zápisy ručně opravit. </span></p>
<p><span style="font-size: 12px;">Nejsem odborník na nastavení bashe, možná že by se dala pomocí nějaké proměné nastavit citlivost parseru na takto chybné zápisy. Vzhledem k aféře se zranitelností shellshock si ale spíš myslím, že zpřísnění a &#8220;striktní mód&#8221; je na místě. Myslím, že jinak než úpravou kódu se těmto nepříjemnostem asi nelze vyhnout.</span></p>
]]></content:encoded>
			<wfw:commentRss>https://www.bouska.biz/postrehy-ohledne-bashe/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Drag and Drop Sharepoint podruhé</title>
		<link>https://www.bouska.biz/drag-and-drop-sharepoint-podruhe/</link>
		<comments>https://www.bouska.biz/drag-and-drop-sharepoint-podruhe/#comments</comments>
		<pubDate>Tue, 11 Feb 2014 17:58:49 +0000</pubDate>
		<dc:creator><![CDATA[bouskam]]></dc:creator>
				<category><![CDATA[sharepoint]]></category>
		<category><![CDATA[outlook]]></category>

		<guid isPermaLink="false">http://www.bouska.biz/?p=306</guid>
		<description><![CDATA[zde jsem nalezl konečně použitelné řešení, jak jednoduše přetáhnout obsah z Outlooku do Sharepointu bez přeukládání na disk. Mají i free verzi zdarma pro komerční použití, takže dál nehledám a všem doporučuji.]]></description>
				<content:encoded><![CDATA[<p><a title="OnePlaceMail" href="http://www.scinaptic.com/oneplacemail-features.html" target="_blank">zde</a> jsem nalezl konečně použitelné řešení, jak jednoduše přetáhnout obsah z Outlooku do Sharepointu bez přeukládání na disk.</p>
<p>Mají i free verzi zdarma pro komerční použití, takže dál nehledám a všem doporučuji.</p>
]]></content:encoded>
			<wfw:commentRss>https://www.bouska.biz/drag-and-drop-sharepoint-podruhe/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Billing System</title>
		<link>https://www.bouska.biz/billing-system/</link>
		<comments>https://www.bouska.biz/billing-system/#comments</comments>
		<pubDate>Sat, 14 Dec 2013 20:34:07 +0000</pubDate>
		<dc:creator><![CDATA[bouskam]]></dc:creator>
				<category><![CDATA[php]]></category>
		<category><![CDATA[MCV]]></category>
		<category><![CDATA[telco]]></category>
		<category><![CDATA[Zend Framework]]></category>

		<guid isPermaLink="false">http://www.bouska.biz/?p=251</guid>
		<description><![CDATA[Jedná se o MVC aplikaci napsanou v PHP 5.3 Použil jsem Zend Framework 1 a to zejména z důvodu dobré dostupnosti dokumentace a literatury. Další aplikace ale už budu raději vyvíjet v nette nebo jiném frameworku, neboť u Zend-u jsem narazil na dost nečekané a otravné limity zejména v oblasti spolupráce s Ajax, jquery, přizpůsobení &#8230; </p><p><a class="more-link block-button" href="https://www.bouska.biz/billing-system/">Pokračovat ve čtení &#187;</a>]]></description>
				<content:encoded><![CDATA[<p><span style="font-size: 12px; line-height: 18px;">Jedná se o MVC aplikaci napsanou v PHP 5.3</span></p>
<p><span style="font-size: 12px; line-height: 18px;">Použil jsem Zend Framework 1 a to zejména z důvodu dobré dostupnosti dokumentace a literatury. Další aplikace ale už budu raději vyvíjet v nette nebo jiném frameworku, neboť u Zend-u jsem narazil na dost nečekané a otravné limity zejména v oblasti spolupráce s Ajax, jquery, přizpůsobení vzhledu, atd.</span></p>
<p>Dále také používám MYSQL 5.5, Apache 2 a APC resp. memcached daemona.</p>
<p>Vstupem jsou textové (csv) tabulky jednotlivých uskutečněných volání (volající, volaný čas zahájení, čas ukončení). <span style="font-size: 12px; line-height: 18px;">Výstupem jsou faktury v pdf a xml pro jednotlivé koncové zákazníky, dále seznamy jednotlivých uskutečněných volání konkrétního uživatele, jež lze v html prohlížet, filtrovat, sumarizovat a řadit podle různých sloupců.</span></p>
<p>&nbsp;</p>
<p><span id="more-251"></span></p>
<p>Tento projekt je stále ještě ve stádiu vývoje, nebyl zatím předán zadavateli, takže ještě nemohu zveřejňovat veškeré podrobnosti, na které bych chtěl upozornit. Jakmile to bude možné, tento text rozšířím o konkrétní ukázky a zajímavosti, na které jsem v průběhu vývoje této aplikace narazil.</p>
<div></div>
<div>Srdcem vlastní aplikace je výpočet a kontrola cen, jež se z důvodu úspory potřebného výpočetního výkonu provádí najednou a využívám tak efektivně cachování ve všech rovinách výpočtu.</div>
<div><span style="font-size: 12px; line-height: 18px;">postup výpočtu:</span></div>
<ul>
<li><span style="font-size: 12px; line-height: 18px;">Podle volajícího ID (číslo A)  se načtou data uživatele a patřičný ceník uživateli přiřazený.</span></li>
<li><span style="font-size: 12px; line-height: 18px;">v ceníku se vyhledá tarif odpovídající předčíslí s největším stupněm shody s volaným ID (číslo B)</span></li>
<li><span style="font-size: 12px; line-height: 18px;">každý ceník má cca 6000 řádků, tedy z důvodu urychlení využíváme cachování pomocí jedné z více možných metod memcached, APC, RAM, RAMDISK</span></li>
<li><span style="font-size: 12px; line-height: 18px;">podle Timestampu volání se určí, zda se jedná o silný či slabý provoz (svátky, Vánoce, Velikonoce, víkendy atd)</span></li>
<li><span style="font-size: 12px; line-height: 18px;">na základě údajů z ceníku se určí také tarifikace, která je rozdílná pro různé kategorie uživatelů a také pro různé destinace volání (60+60, 60+1, 30+1, 15+15, 1+1)</span></li>
<li><span style="font-size: 12px; line-height: 18px;">spočítá se výsledná cena</span></li>
<li><span style="font-size: 12px; line-height: 18px;">musí se ošetřit přechody mezi vysokým a nízkým tarifem v rámci jednoho hovoru</span></li>
<li><span style="font-size: 12px; line-height: 18px;">musí se ošetřit různé chytáky ve speciálních tarifech (linky 810, 900,906, 976, 1188, 1301 apod)</span></li>
<li><span style="font-size: 12px; line-height: 18px;">kontroluje se minimální marže (koncová cena pro zákazníka vs. spojovací poplatky operátorům a poskytovatelům)</span></li>
<li>v případě chyby (nenalezen uživatel nenalezen tarif atd) nejsou faktury vygenerovány a vše se vrátí ze zálohy do původního stavu</li>
</ul>
<p>&nbsp;</p>
<p>další je myslím nejlépe patrné ze screenshotů:</p>

<div class="ngg-imagebrowser" id="ngg-imagebrowser-1-251">

	<h3>Uživatel + JS</h3>

	<div class="pic">
<a href="https://www.bouska.biz/wp-content/gallery/boubill/jscipt.png" title="Editace uživatele. Verifikace polí formuláře pomocí javascriptu." class="ngg-fancybox" rel="boubill">
	<img alt="Uživatel + JS" src="https://www.bouska.biz/wp-content/gallery/boubill/jscipt.png"/>
</a>
</div>
	<div class="ngg-imagebrowser-nav"> 
		<div class="back">
			<a class="ngg-browser-prev" id="ngg-prev-28" href="https://www.bouska.biz/billing-system/?pid=28">&#9668; Back</a>
		</div>
		<div class="next">
			<a class="ngg-browser-next" id="ngg-next-4" href="https://www.bouska.biz/billing-system/?pid=4">Next &#9658;</a>
		</div>
		<div class="counter">Picture 1 of 19</div>
		<div class="ngg-imagebrowser-desc"><p>Editace uživatele. Verifikace polí formuláře pomocí javascriptu.</p></div>
	</div>	

</div>	


<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>https://www.bouska.biz/billing-system/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>XSS &#8211; díl 1.</title>
		<link>https://www.bouska.biz/xss-dil-1/</link>
		<comments>https://www.bouska.biz/xss-dil-1/#comments</comments>
		<pubDate>Wed, 27 Nov 2013 23:14:59 +0000</pubDate>
		<dc:creator><![CDATA[bouskam]]></dc:creator>
				<category><![CDATA[bezpečnost]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[xss]]></category>

		<guid isPermaLink="false">http://www.bouska.biz/?p=198</guid>
		<description><![CDATA[XSS znamená cross-site scripting. Je to velmi často používaná metoda útoku, kdy útočník propašuje škodlivý kód do PHP či jiné aplikace. Docílí tak toho, že uživatel či správce, který aplikaci použije, aniž by to spozoroval spustí kód z jiného umístění. Tato metoda předpokládá, že buď má útočník přístup pro zápis do nějaké části (souboru) aplikace &#8230; </p><p><a class="more-link block-button" href="https://www.bouska.biz/xss-dil-1/">Pokračovat ve čtení &#187;</a>]]></description>
				<content:encoded><![CDATA[<p><strong>XSS</strong> znamená cross-site scripting. Je to velmi často používaná metoda útoku, kdy útočník propašuje škodlivý kód do PHP či jiné aplikace. Docílí tak toho, že uživatel či správce, který aplikaci použije, aniž by to spozoroval spustí kód z jiného umístění.</p>
<p>Tato metoda předpokládá, že buď má útočník přístup pro zápis do nějaké části (souboru) aplikace (špatné zabezpečení, bezpečností díra, chyba v kódu) a injektuje tak odkaz např. do css.</p>
<p>Nebo je tam tento backdoor už od začátku a třeba několik měsíců o sobě nedá vědět, dokud se útočník nerozhodne útok provést (samozřejmě &#8211; to se nás netýká, my stahujeme všechny pluginy pro wordpress z ověřených zdrojů a kontrolujeme všechny řádky jejich kódu!)</p>
<p>Asi nejčastější případ je, že se útočníkovi povede tento škodlivý kód dostat do <strong>dat</strong>, které se cílené osobě zobrazují. Toto je možné provést libovolnou akcí, která předpokládá zobrazení infikovaných dat v prohlížeči administrátora či osoby, na níž je útok veden.<br />
<span id="more-198"></span></p>
<p>Asi nebude problém nalézt nějakou akci uživatele, jež vyžaduje zobrazení v prohlížeči např. administrátora &#8211; takové přidání nového příspěvku do diskuze, zadání nové objednávky v e-shopu, žádost zadaná přes kontaktní formulář, a spousta dalších jiných akcí toto předpokládá.</p>
<p>Je to velmi jednoduché &#8211; útočníkovi stačí najít neošetřené textové či jiné uživatelské vstupy, přes které krom standardního textu projdou také znaky <span style="color: #ff0000;"><strong><em>&lt;&gt; :/&#8221;</em></strong></span></p>
<p>schválně si zkuste, kolik diskuzních fór či e-shopů dovolí registrovat uživatele s adresou dejme tomu</p>
<blockquote><p>Tonda Novak</p>
<p>&lt;script src=&#8221;http://www.bouska.biz/public/xsstest.js&#8221;&gt;&lt;/script&gt;</p>
<p>Praha 1</p></blockquote>
<p><em>(Můžete si vyzkoušet &#8211; soubor xsstest.js z příkladu v případě spuštění vyvolá popup okno s varováním.)</em></p>
<p>&nbsp;</p>
<p>Samozřejmě, že toto ještě neznamená, že potenciálně škodlivý skript <em>xsstest.js se skutečně </em><strong>SPUSTÍ</strong></p>
<p>Pokud programátor odvedl svou práci v přijatelné kvalitě, budou buď tagy zcela vypuštěny a nebo budou převedeny <a href="http://us3.php.net/manual/en/function.htmlspecialchars.php">opisem</a>  na neškodný textový řetězec, který nezpůsobí spuštění tohoto kódu ale pouze zobrazení uvedeného textu. Text pak např. místo znaku <strong> &lt;</strong> obsahuje řetězec <strong>&amp;lt</strong> který prohlížeč interpretuje jako text a nikoliv jako začátek tagu. Filtrování je možno provézt minimálně na dvou místech: při přijímání dat z formuláře a nebo až při jejich zobrazování v pohledu. Důsledný programátor použije pro jistotu filtrování na obou místech.</p>
<p>Pokud však programátor byl lempl, tak se filtrování neprovede, data se v nezměněné podobě uloží a při dalším zobrazení se prohlížeči pošlou opět v nefiltrované podobě.</p>
<p>&nbsp;</p>
<p>Tak schválně&#8230; kolik běžně používaných diskuzních fór, CMS, ERP, seznamek,  bazarů, eshopů a jiných běžně dostupných aplikací nefiltruje data a dovolí Vám registrovat se s výše uvedenou adresou (přezdívkou, poznámkou, vzkazem pro administrátora)</p>
<p>Tak to by bylo pro tentokrát vše, v příštím dílu si povíme, jak může vlastně škodit ten <strong>škodlivý kód.</strong></p>
]]></content:encoded>
			<wfw:commentRss>https://www.bouska.biz/xss-dil-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>nový kabát</title>
		<link>https://www.bouska.biz/novy-kabat/</link>
		<comments>https://www.bouska.biz/novy-kabat/#comments</comments>
		<pubDate>Wed, 03 Jul 2013 21:28:31 +0000</pubDate>
		<dc:creator><![CDATA[bouskam]]></dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.bouska.biz/?p=181</guid>
		<description><![CDATA[Maličko jsem si zaexperimentoval s css šablonou a vytvořil jsem nový svěží look, o který si tento web už pěkně dlouho říkal, ale jaksi stále na to nebyl čas&#8230;.  Tk jen doufám, že máte rádi limetkově zelenou &#160;]]></description>
				<content:encoded><![CDATA[<p>Maličko jsem si zaexperimentoval s css šablonou a vytvořil jsem nový svěží look, o který si tento web už pěkně dlouho říkal, ale jaksi stále na to nebyl čas&#8230;.  Tk jen doufám, že máte rádi limetkově zelenou <img src="https://www.bouska.biz/wp-includes/images/smilies/simple-smile.png" alt=":)" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>https://www.bouska.biz/novy-kabat/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic page generated in 0.194 seconds. -->
<!-- Cached page generated by WP-Super-Cache on 2026-10-12 23:16:40 -->

<!-- Compression = gzip -->