How to add or remove datagroup records using iControl REST API
There are two known ways to manipulate datagroup records using the REST API:
- retrieve the current list of records, add or remove as required and import the updated list – not very friendly for simple batch processing
- using /mgmt/tm/util/bash hack to run the actual tmsh command – unfortunately this requires admin/bash privileges
I’ve found a new one using the options parameter:
curl -X PATCH -H "Content-Type: application/json" -d '{"name":"Test-DataGroup"}' -u"test:test" https://5.6.7.8/mgmt/tm/ltm/data-group/internal/Test-DataGroup?options=records%20add%20%7B%201.2.3.4%2F32%20%7D
PHP snippet:
$f5hostname = "5.6.7.8"; $f5credentials = "test:test"; $ip = "1.2.3.4"; $dg = "Test-DataGroup"' function curl_json($method, $url, $data = "") { global $f5credentials; $s = curl_init(); curl_setopt($s, CURLOPT_URL, $url); curl_setopt($s, CURLOPT_HTTPAUTH, CURLAUTH_BASIC); curl_setopt($s, CURLOPT_USERPWD, $f5credentials); curl_setopt($s, CURLOPT_RETURNTRANSFER, true); if($method!="GET") { curl_setopt($s, CURLOPT_CUSTOMREQUEST, $method); curl_setopt($s, CURLOPT_HTTPHEADER, array('Content-Type: application/json', 'Content-Length: ' . strlen($data))); curl_setopt($s, CURLOPT_POSTFIELDS, $data); } $response = json_decode(curl_exec($s)); curl_close($s); return $response; } $command = urlencode("records add { ${ip}/32 }"); $dgurl = str_replace("/", "~", $dg); curl_json("PATCH", "https://${f5hostname}/mgmt/tm/ltm/data-group/internal/${dgurl}?options=${command}", "{\"name\":\"${dg}\"}");
EqualLogic SAN hacking
CLI> su exec sh
enter the support shell mode
# ifconfig -a
IP configuration
# echo cmv | ecli
ecli is an interactive shell providing some low level functions (eg. cmv = Get CM Version Info)
# ipcsh -s -O "ifconfig -a"
ipcsh is a remote shell to be executed on the other controller, very useful
# raidtool
low level tool to manage RAID
Co zažít v Londýně
London Eye
Jednoznačně stojí za to. Přímo v centru, výhled po celém Londýně. Vstupenky se dají koupit on-line už od £18 na http://www.londoneye.com/ticketsandprices/tickets/
Richmond Park
Park na kraji Londýna (District line, 4. zóna), kde se volně prochází spousta zvěře. Vstup zdarma.
Little Venice
Procházka kolem kanálů nebo projížďka lodičkou, ideální trasa je od Warwick Avenue kolem Regent’s park do Camden Lock. Pěšky zdarma, lodičkou cca £10 na osobu, např. http://www.jasons.co.uk/
Shard
Nejvyšší vyhlídka široko daleko v celé Evropě. Nic moc při špatném počasí, super při západu slunce. Nahoře má člověk docela závrať. Vstupenky od £25 na osobu na http://www.theviewfromtheshard.com/en/tickets-packages/
Tower Bridge
Zajímavá prohlídka vnitřní strukturou mostu s bezva výhledem, vstupenky od £8 na https://www.gammabookings.com/TowerBridgeBookings/. Časy otevírání mostu jsou na http://www.towerbridge.org.uk/TBE/EN/BridgeLiftTimes/
Camden Lock Market / Borough Market
Na obou trzích se dá sehnat spousta druhů jídla z různých zemí – nejvíce aktivity tam probíhá o víkendech. Camden Lock Market je o něco více „alternativní“ a dá se spojit s Little Venice; Borough Market je poblíž Tower Bridge. Vstup zdarma.
Monument
Zajímavá vyhlídka v centru Londýna z památníku velkého požáru, stoupá se po úzkých točitých schodech a na vyhlídkové plošině není zrovna moc místa. Vstupné je £4, více informací na http://www.themonument.info/
Platform 9 3/4
Pro milovníky Harryho Pottera je možné si na nádraží King’s Cross vystát frontu a vyfotit se cestou na nástupiště 9 a 3/4. Opodál je krámek prodávájící příslušné suvenýry.
Chislehurst Caves
Doprava vlakem z Waterloo nebo London Bridge, 5. zóna. Prohlídky podzemí s lucerničkami v každou celou hodinu, vstupné £6, více informací na http://www.chislehurst-caves.co.uk/
Canary Wharf
Bankovní centrum Londýna, určitě stojí za to projet v DLR – metrem bez řidiče.
Hyde Park / Regent’s Park
Nakrmit veverky nebo labutě je možné ve velkých londýnských parcích.
Barclay’s Bikes
Za £2 můžete během 24 hodin projezdit celý Londýn. Jedna jízda může trvat vždy maximálně 30 minut a mezi jízdami musí být minimálně 5 minut. Více informací na http://www.tfl.gov.uk/modes/cycling/barclays-cycle-hire
London Transport Museum
Jedno z mála londýnských muzeí, které opravdu stojí za to. Možná i proto není vstup zdarma, ale za £15. Můžete prolézat historické tramvaje a řídit metro na simulátoru. Více informací na http://www.ltmuseum.co.uk/
Chinatown
Barevná čínská čtvrť plná restaurací, kde se dá sehnat all-you-can-eat od £6. Kousek od Piccadilly Circus.
Kelvedon Hatch
Zatím ještě osobně nevyzkoušeno, ale mělo by to stát za to. Podzemní atomový kryt z dob studené války. Komplikovanější doprava z Londýna, v neděli se tam nedá bez auta rozumně dostat. Vstupné £7, více informací na http://www.secretnuclearbunker.com/
Disable SRTP on SIP between CS1000 and Asterisk
Since Asterisk is unable to process SRTP offered by CS properly, there are two workarounds:
- patch Asterisk to ignore SRTP offer and fall back to RTP instead – https://issues.asterisk.org/jira/browse/ASTERISK-18201
- change the CLS of all SIP route members in CS to MSNV – see the following example
>ld 14
REQ chg
TYPE ipti
TN 248 0 00 28
DES
XTRK VTRK
NCOS
RTMB
CHID
MNDN
TGAR
LDOP
TIMP
BIMP
AUTO_BIMP
STRI
STRO
SUPN
AST
CLS msnv
TKID
Google Maps API for Business – REST URL signing
If you are a Google Maps API Business user, you have to sign REST URLs for invoking webservices. Here you can find an example how to do it in PHP:
function base64_encodesafe($plainText) { $base64 = base64_encode($plainText); return strtr($base64, '+/', '-_'); } function base64_decodesafe($base64) { $base64 = strtr($base64, '-_', '+/'); return base64_decode($base64); } $key = base64_decodesafe(GMAPS_KEY); $url = "/maps/api/geocode/json?address=" . $address . "&client=" . GMAPS_CLIENT; $signature = base64_encodesafe(hash_hmac("sha1", $url, $key, true)); $url = "http://maps.googleapis.com" . $url . "&signature=" . $signature;
Černobyl & Pripjať
Nápad navštívit místo největší jaderné katastrofy v dějinách jsem měl už dlouho, ale teprve nedávno jsem objevil způsob, jak ho rozumně a levně zrealizovat. Na fóru webu města Pripjať, který provozují zejména nadšenci z řad původního obyvatelstva, jsem našel informace o pravidelných exkurzích do zóny. Zbývalo naplánovat termín a zajistit si dopravu do Kyjeva 🙂
Domluvil jsem se s Martinama z práce a Jirkou z Písku a vybrali jsme únorový termín exkurze. Podle webu připadal na sobotu 20. února 2010, s tím, že sraz je ráno na kyjevském nádraží a návrat večer tamtéž. Jako nejvýhodnější spojení se zdál Wizzair z Katowic do Kyjeva v pátek večer a zpátky v neděli večer. Exkurze vycházela na 70$ (dnes už stojí 100$), zpáteční letenka na nějakých 1900,- Kč. Zbývalo dopravit se na katowické letiště a zpátky, nakonec jsme se rozhodli pro cestu autem. Letenky i exkurzi jsme zabookovali zároveň, aby se nám náhodou nestalo, že by jedno z toho mezitím nevyšlo. Všechno vypadalo ideálně, ještě jsme našli pěkný hostel v centru Kyjeva a zjistili možnosti spojení z nočního letiště.
Ani ne dva dny po zabookování letenky zmizel náš let směrem tam z letového řádu. Rozhodl jsem se zavolat do Wizzairu a raději to ověřit, ale bylo mi oznámeno, že ještě neobdrželi platbu za naši rezervaci a tak to vlastně nemám co řešit. Počkal jsem týden a zavolal znovu; platbu obdrželi, rezervace byla potvrzená a neviděli nejmenší důvod, proč by náš let neměl letět. Přesto náš let prostě v letovém řádu nebyl.
Pár dní po tom mi přišlo oznámení změny letu, které jsem měl potvrdit. Problém byl v tom, že všechny hodnoty byly stejné, nic se nezměnilo. Tak jsem jim opět radši zavolal, opět to prověřili a potvrdili mi, že náš let v námi zvoleném čase opravdu poletí. Ve středu před odletem jim volal ještě Martin a trval na důkladném prověření…po cca 15ti minutovém hovoru přiznali, že náš let opravdu nepoletí a nabídli nám jiný, např. ten nedělní (že bychom letěli do Kyjeva na otočku, haha). Vypadalo to dost beznadějně. Nakonec jsem našel u polských Eurolines autobus z Krakowa do Kyjeva odjíždějící ve čtvrtek kolem poledne. Znamenalo to vyjet z Prahy o den dříve, ale jinak by to mohlo vyjít, stál jenom něco málo přes tisícovku. Okamžitě jsme se rozhodli a jízdenky objednali.
Den na to jsme v časných ranních hodinách vyrazili z Prahy, cestou nabrali Jirku a přibližně půl hodiny před odjezdem autobusu dorazili do Krakowa. Po peripetiích s hledáním místa na parkování stojíme na autobusáku a hledáme pro změnu náš spoj. Světe div se, opravdu existoval, naše jízdenky platily (i se slevou na ISIC) a my se pohodlně usadili v poloprázdném autobuse. Čekala nás cca 20ti hodinová jízda, převážně po děravých ukrajinských silnicích. Cesta byla sama o sobě zážitek, ať už díky našim spolucestujícím, řidičům, zastávkám, hranicím nebo Jirkově rumu.
V pátek časně ráno jsme opravdu dorazili do Kyjeva. Pořád jsem čekal, že něco nevyjde, že autobus chcípne v Žitomiru nebo nás vysadí někde na kyjevském gangsta sídlišti…ale přijeli jsme tam, kam jsme přijet měli, po jednom zeptání „gdě mitró?“ jsme našli stanici metra a vydali se do našeho hostelu. Aricio nás původně čekal až v noci na sobotu, ale ještě jsem mu stihl napsat, že nám let zrušili a tak tam budem, až tam budem. Ano, vzbudili jsme ho 🙂 Nicméně nás ochotně ubytoval, umyli jsme se, nasnídali, vyslechli pár tipů a triků ke Kyjevu a vyrazili na prohlídku. Navštívili jsme muzeum černobylské havárie, které (nejen) nás dost zklamalo. Nejenže má všechny texty jen v ukrajinštině, bylo dost chaoticky uspořádané a hlavně vůbec nepodávalo ucelený pohled na katastrofu. Nejčastější tam byly hrdinské eposy o lidech, kteří svým jednáním zachránili/odvrátili/atd. Tak jsme jim tam aspoň rozbili úžasnej model reaktoru 🙂 Jinak jsme viděli z Kyjeva snad všechno důležité, ochutnali místní streetfood a vrátili se dost unavení. S díky jsme odmítli nabídku účasti na párty a šli spát.
V sobotu ráno jsme vyrazili na kyjevské nádraží, kde měl čekat zřetelně označený autobus. A opravdu čekal! A opravdu nás tam měli v seznamu, to byl úplně neskutečnej pocit, že to vyšlo. Místa na nohy tam pravda moc nebylo a po chvíli se autobus zaplnil do posledního místečka. Kromě jednoho Itala jsme tam byli jediní cizinci, všichni ostatní byli Ukrajinci nebo Rusové. Většině zásadních informací (o večeři například) jsme rozuměli a vedoucí zájezdu si z nás dělal docela srandu („Češi taky chtěj večeři?“), případně nám to dovysvětlil anglicky, paráda prostě.
Přijeli jsme k checkpointu Dityatki, kde se kontrolovaly pasy. Zase jsem se trochu bál, tentokrát hlavně o diakritiku ve jménech kluků, kterou jsem při registraci vypustil. Naštěstí bylo všechno v pořádku a tak jsme pokračovali dále do zóny. První zastávkou bylo město Černobyl a v něm úřad pro jadernou bezpečnost (nebo tak nějak), kde jsme vyslechli krátkou přednášku a podepsali papír, že do zóny vstupujeme dobrovolně a při plném vědomí 🙂 Následoval přesun na černobylské autobusové nádraží, kde fungují dva kiosky. Všichni se tam nahrnuli s touhou něco si koupit. Černobyl překvapivě docela funguje, viděli jsme tam dost lidí, je tam i hotel a měla se tam konat naše večeře.
Z Černobylu jsme jeli směrem k elektrárně. Ve vesničkách cestou nebylo nikoho vidět, přesto i tam byly patrné stopy po obydlení. Bohužel byla dost mlha a tak jsme z elektrárny moc neviděli; na obvyklém místě, odkud se fotí chladící věž, skoro ani nemělo cenu zastavovat. Dojeli jsme tak až k hlavní bráně, za kterou se rýsoval známý sarkofág s charakteristickou věží. Byli jsme od něj tak 200 metrů, docela impozantní a děsivé. Udělali jsme tam plno fotek a průvodci nám stále ukazovali hodnoty na měřiči radiace. Popravdě si nepamatuju, kolik to bylo, ale vzhledem k tomu, že v bezprostředním okolí elektrárny byla kompletně vyměněna půda, zaasfaltováno, co šlo, tak tam paradoxně je radioaktivita asi nejnižší z celé zóny.
Od elektrárny je to jenom kousek do města duchů, Pripjati. Jede se přes most smrti. Pripjať působí v zimě opravdu děsivě…jeden panelák vedle druhého, jeden jako druhý, temné, tiché, nezřetelné ulice pod sněhem. No nechtěl bych se tam ztratit. Rozdělili jsme se do několika skupin a vyrazili na prohlídku. Čekal jsem, že nás vezmou po protažených cestách a ukážou, kde je co…ale prohlídka dalece překonala naše očekávání! Náš průvodce nás po chvíli vedl sněhem přímo k domu, kde kdysi bydlel.
Procházeli jsme otřískanými chodbami, koukali do zaprášených poštovních schránek, lezli do tmavých sklepů, opatrně stoupali po chatrných schodech. Pak nás ještě vzal do školy, tělocvičny, kavárny, kulturáku a spousty dalších míst, kde to za mlada znal. Naprosto strhující zážitek. Cestou pořád něco rusky vykládal, ale nás to stejně moc nezajímalo – už jenom naše přítomnost tam nám úplně imponovala. Courali jsme městem skoro tři hodiny a fakt to stálo za to!
Po návratu k autobusu a setkání s ostatními skupinami jsme zjistili, že nám chybí jeden člověk. Nejprve ho hledal jen jeden průvodce, pak i ostatní, nakonec jsme ho hledali celým autobusem a pak ho hledali skoro všichni. Po cca dvou hodinách se setmělo a to teprv byla Pripjať depresivní! Nicméně chybějící exot nikde a všichni pěkně nervózní. Nakonec jsme odjeli bez něj, i tak bylo strašně pozdě a nestíhala se večeře 🙁 Pak jsme se dověděli, že ho našel policejní pes v jednom z domů, kde se snažil přespat. Jako na jednu stranu ho chápu, taky by mě to lákalo, na druhou je to pěkný pako a dost nás naštval.
Na kyjevské nádraží jsme přijeli totálně unavení dost pozdě večer…ještě, že byl náš hostel tak blízko. Cestou jsme ještě sehnali nějaký jídlo a pivo, v hostelu se nadlábli a šli spát. V neděli už jsme toho moc nestihli, odpoledne jsme dojeli taxíkem na letiště a doufali, že to poletí aspoň zpátky a že naše letenky platí. Naštěstí to vyšlo a večer jsme dosedli v Katowicích. Zbývalo dopravit se minibusem do Krakowa k našemu autu, zaplatit za parkování a dojet do Prahy.
Celkové náklady na jednoho byly cca 6500,- Kč. Bohužel se nám nepovedlo vydolovat z Wizzairu kompenzaci za zrušený let.
Všechny fotky z naší expedice jsou v galerii Černobyl & Pripjať.
Únos domény .cz
Následující návod má být primárně názorným důkazem toho, že můžete mít jakkoliv dobře zabezpečený server, DNS, web…a nakonec vám někdo ukradne doménu, protože máte heslo do e-mailové schránky „pepa“. Z těchto devíti kroků jich osm zvládne naprosto kdokoliv.
Postup úplného převodu domény:
- Na http://www.nic.cz/whois/ zjistit vlastníka a jeho e-mail
- Získat přístup do této e-mailové schránky
- Nechat si poslat autorizační heslo kontaktu (např. pomocí http://www.nic.cz/whois/publicrequest/)
- Pokud nemáte možnost využít služeb registrátora kontaktu, je potřeba změnit registrátora kontaktu a nechat si znovu zaslat autorizační heslo (po změně registrátora dojde k jeho změně)
- Změnit u kontaktu e-mailovou adresu – od této chvíle nemá vlastník reálnou kontrolu nad doménou a hlavně už se nikdy nic nedozví
- Nechat si poslat autorizační heslo domény
- Převést doménu k Active24 (jako jeden z mála registrátorů umožňuje změnu vlastníka bez notářem ověřených podpisů)
- Nechat si znovu poslat autorizační heslo domény
- Změnit vlastníka, odstranit jiné původní kontakty, změnit NSSET,…
Dá se to stihnout klidně za čtvrt hodinky.
getfile.php – část II.
Nedávno jsem narazil na ScrewTurn Wiki. Pokud ji používáte, vězte, že i ona trpí dírou zvanou getfile. Tentokrát sice .aspx místo .php, ale princip je stejný.
Nebudu napínat; pro úspěšný útok budete potřebovat GetFile.aspx a dost vám pomůže Upload.aspx. GetFile.aspx obsahuje bezpečnostní prvek v podobě
filename = filename.Replace("..", "");
z čehož plyne nutnost použít absolutní cestu. Upload.aspx pouze využívá komponentu FileManager.ascx, která dvě tečky nenahrazuje, ale před cestu přidává root složku. Takže zde je potřeba naopak použít relativní cestu.
Postup bude přibližně následující – pomocí Upload.aspx se dostaneme co nejvýše; s největší pravděpodobností kvůli omezeným právům IIS ne moc daleko. A pak uhodneme začátek absolutní cesty, ve které se weby nacházejí.
http://www.firma.cz/wiki/Upload.aspx?Dir=../../../ http://www.firma.cz/wiki/GetFile.aspx?File=C:/www/firma.cz/wiki/web.config
getfile.php – část I.
Představte si následující soubor getfile.php:
<?php readfile($_GET["filename"]); ?>
Je to k neuvěření, ale pořád takové existují! S mírnými obměnami, doplněnými header() pro zasílání Content-Type, Content-Disposition, atd., ale v principu pořád zobrazí jakýkoliv soubor, o který požádáte.
Falešný dojem bezpečí často navozuje definování root složky:
<?php define("ROOT", "/home/karel/web/downloads/"); readfile(ROOT . $_GET["filename"]); ?>
Dá trochu práce zjistit, kam přesně je potřeba se vytečkovat (/../), ale i tak je to díra jako vrata.
Reálný příklad ze života je nejmenovaný CMS obsahující tento soubor. CMS byl nasazen na spoustě webů – nicméně jsem zatím narazil jen na dva, které by stály za zmínku (jeden z nich je web firmy vyvíjející tento produkt); vesměs se jinak jednalo jen o jednodušší webové vizitky firem.
http://www.firma.cz/_cms/data/fdwnl.php?f=../../_configs/global.php
Office OpenXML password remover
Simple utility you can find usefull in a case you have own docx/xlsx/… batch processing software but you’re unable to process encrypted files. This tool will open the file and resave it without password, ie. encryption. Based on project ooxmlcrypto.