abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 19:44 | IT novinky

    Microsoft představil Azure Linux 4.0 a Azure Container Linux. Na konferenci Open Source Summit North America 2026 organizované konsorciem Linux Foundation a sponzorované také Microsoftem. Azure Linux 4.0 vychází z Fedora Linuxu. Azure Container Linux je založen na projektu Flatcar. Azure Linux (GitHub, Wikipedie) byl původně znám jako CBL-Mariner.

    Ladislav Hagara | Komentářů: 0
    dnes 12:22 | Zajímavý článek

    Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 165 (pdf).

    Ladislav Hagara | Komentářů: 0
    dnes 10:55 | Nová verze

    Byla vydána verze 9.2 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a informačním videu.

    Ladislav Hagara | Komentářů: 4
    dnes 09:33 | IT novinky

    Firefox 151 podporuje Web Serial API. Pro komunikaci s různými mikrokontroléry připojenými přes USB nebo sériové porty už není nutné spouštět Chrome nebo na Chromiu postavené webové prohlížeče.

    Ladislav Hagara | Komentářů: 1
    dnes 04:44 | Nová verze

    Byla vydána nová stabilní verze 8.0 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 148. Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    včera 21:33 | Bezpečnostní upozornění

    Ve FreeBSD byla nalezena a opravena zranitelnost FatGid aneb CVE-2026-45250. Jedná se o lokální eskalaci práv. Neprivilegovaný uživatel se může stát rootem.

    Ladislav Hagara | Komentářů: 0
    včera 14:33 | IT novinky

    Společnost Flipper Devices oznámila Flipper One. Zcela nový Flipper postavený od nuly. Jedná se o open-source linuxovou platformu založenou na čipu Rockchip RK3576. Hledají se dobrovolníci pro pomoc s dokončením vývoje (ovladače, testování, tvorba modulů).

    Ladislav Hagara | Komentářů: 2
    včera 14:00 | Nová verze

    Vývojáři Wine oznámili vydání verze 2.0 knihovny vkd3d pro překlad volání Direct3D na Vulkan. Přehled novinek na GitLabu.

    Ladislav Hagara | Komentářů: 0
    včera 11:33 | Nová verze

    Společnost Red Hat oznámila vydání Red Hat Enterprise Linuxu (RHEL) 10.2 a 9.8. Vedle nových vlastností a oprav chyb přináší také aktualizaci ovladačů a předběžné ukázky budoucích technologií. Vypíchnout lze CLI AI asistenta goose. Podrobnosti v poznámkách k vydání (10.2 a 9.8).

    Ladislav Hagara | Komentářů: 0
    včera 05:11 | Nová verze

    Organizace Apache Software Foundation (ASF) vydala verzi 30 integrovaného vývojového prostředí a vývojové platformy napsané v Javě NetBeans (Wikipedie). Přehled novinek na GitHubu. Instalovat lze také ze Snapcraftu a Flathubu.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (13%)
     (8%)
     (2%)
     (14%)
     (31%)
     (4%)
     (6%)
     (3%)
     (16%)
     (26%)
    Celkem 1680 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    Dotaz: PHP: hledám obecně známý objekt, který má metodu toString()

    24.12.2016 18:01 skirptkido
    PHP: hledám obecně známý objekt, který má metodu toString()
    Přečteno: 415×
    Dobrý den,

    Mám takový netradiční dotaz pro zkušené PHPčkaře. Hledám nějaký relativně obecně známý / používaný / populární objekt v PHP, který obsahuje metodu toString() - pozor nikoliv __toString(). Neznáte nějaký takový objekt? Může to být součást nějakého oblíbeného frameworku nebo nějaké knihovny, který se v PHP světě používá..

    Abych uvedl důvod proč to hledám - řeším jednu takovou exploit challenge, kde ten kód vypadá takto:
    $rce = unserialize($_REQUEST['blah']);
    echo $rce->toString();
    
    Akorát, že já nevím jméno toho objektu, kterému mám tou deserializací změnit nějaké ty properties.. Nenapadá vás něco co by to mohlo být?

    Díky!

    Odpovědi

    25.12.2016 23:20 Odin1918 | skóre: 6 | blog: Valhalla
    Rozbalit Rozbalit vše Re: PHP: hledám obecně známý objekt, který má metodu toString()
    github, git clone a rekurzivni grep jsou tvoji pratele
    26.12.2016 18:08 Sten
    Rozbalit Rozbalit vše Re: PHP: hledám obecně známý objekt, který má metodu toString()
    Předefinuj property toString, to volání spadne a vypíše, jak se ta třída jmenuje ;-)
    27.12.2016 01:01 skirptkido
    Rozbalit Rozbalit vše Re: PHP: hledám obecně známý objekt, který má metodu toString()
    To je zajímavý nápad, ale nejsem si jistý jak to provést / jestli je to možné řešení.

    Předpokládejme následující kód na serveru:
    class nevim {
      public $filename = 'xyz';
    
      public function toString() {
        echo file_get_contents($this->filename);
      }
    }
    
    $rce = unserialize($_GET['blah']);
    echo $rce->toString();
    
    Kdybych věděl jméno té třídy, tak můžu poslat request třeba:
    http://url/skript.php?blah=O:5:"nevim":1:{s:8:"filename";s:11:"/etc/passwd";}
    
    A vypsat si tím soubor /etc/passwd, ale když neznám jméno té třídy, tak se mi zdá, že jsem bez šance cokoliv zkoušet, nebo ne?

    I přesto to ale zkouším všeljak, nicméně ikdyž zkusím změnit property toString, tak mi to nepomůže - nevypíše to nic extra, dokonce to funguje jakoby se nechumelilo:
    http://url/skript.php?blah=O:5:"nevim":2:{s:8:"filename";s:11:"/etc/passwd";s:8:"toString";s:6:"blabla";}
    
    Funguje no problem na mým testovacím serveru.

    Tak nevím..
    27.12.2016 02:35 Sten
    Rozbalit Rozbalit vše Re: PHP: hledám obecně známý objekt, který má metodu toString()
    Hmm, tak PHP má tak zprasený návrh tříd, že to nejde. $t->toString vytáhne tu hodnotu, ale $t->toString() zavolá takto pojmenovanou metodu z prototypu třídy (i když existuje takto pojmenovaná hodnota), zatímco pokud taková metoda není definována, pokusí se zavolat $t->toString->__invoke(), tj. metodu třídy té hodnoty.
    27.12.2016 03:14 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: PHP: hledám obecně známý objekt, který má metodu toString()
    Na tom nevidím nic zpraseného. Na podobné problémy jsem nikdy nenarazil. Když budeš dodržovat konvence pro názvy objektů a metod, tak se ti to stát ani nemůže.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.