An In-Depth Look at Streams
Total Page:16
File Type:pdf, Size:1020Kb
Load more
Recommended publications
-
File Operation Induced Unserialization Via the “Phar://” Stream Wrapper
File Operation Induced Unserialization via the “phar://” Stream Wrapper Sam Thomas - @_s_n_t Contents Introduction ............................................................................................................................................ 2 Stream Wrappers .................................................................................................................................... 3 Phar Archives and the "phar://" Stream Wrapper ................................................................................. 4 Basic Attack Methodology ...................................................................................................................... 5 Identifying File Path Handling Vulnerabilities ......................................................................................... 6 The Phar File Format ............................................................................................................................... 7 Exploiting Induced Unserialization.......................................................................................................... 9 PHPGGC / PHARGGC ............................................................................................................................. 10 Case Studies .......................................................................................................................................... 11 Typo 3 ............................................................................................................................................... -
Installing PHP and Libraries
APPENDIX A Installing PHP and Libraries This book is aimed at programmers with at least some basic experience using PHP, so it is likely you already have access to a machine or two with PHP installed. However, many programmers use the versions already preinstalled in web hosting accounts or the default versions provided by package managers and so are unaware of how to compile, install, and tweak PHP and its ecosystem of extensions and libraries directly. Throughout this book you’ve looked at a number of extensions and libraries that provide functional programming structures and helper functions, and I’ve discussed features unique to PHP 7–like type declarations. Your web host or package manager may not have these extensions or versions available for automatic installation, so it’s good to know how to install them yourself. In this appendix, you’ll look at the various ways to change the PHP base upon which your programs are developed and run. Compiling and Installing PHP There are a dozen different ways to get PHP, including downloading and compiling it yourself, downloading precompiled binaries, using package managers and software repositories, and finding it preinstalled by a forward-thinking administrator. On most Linux distributions, PHP can be installed with a one-line command such as sudo apt- get install php or through graphical package managers such as the Synaptic Package Manager or the Ubuntu Software Center. Many common PHP extensions and add-ons are likewise available as prebuilt packages or alternatively available for easy -
Compiling and Installing PHP, Extensions, and Libs
APPENDIX A Compiling and Installing PHP, Extensions, and Libs There are a dozen ways to get PHP, including downloading and compiling it yourself, downloading precompiled binaries, using package managers and software repositories, and finding it preinstalled by a forward-thinking administrator. On most Linux distributions, PHP can be installed with a one-line command such as sudo apt-get install php5 or through graphical package managers such as the Synaptic Package Manager or the Ubuntu Software Center. Many common PHP extensions and add-ons are likewise available as prebuilt packages or alternatively through the PECL and PEAR systems. However, sometimes it becomes necessary to do a little more work to install PHP; for instance, in the following situations: • Your project has requirements for a specific version of PHP that is different from the one shipped with your OS. • You need extensions not available as packages. • You want to compile a customized version of PHP specific to your needs. Like anything involved in computers and software development, compiling PHP can take you down a rabbit hole of options, customizations, compatibility issues, libraries, and dependencies. A whole book could be written about the possibilities (and possible headaches) involved. Luckily for us, in most use cases, the basics of compiling a standard version are quite straightforward. And like most things in life, it gets easier after you have done it once. The following section outlines the steps necessary for getting, compiling, and installing PHP and its core extensions. PHP is written in C, and because you might not be familiar with the process of compiling C programs, I have explained each step to give you an idea of what is happening. -
PHP Selber Bauen
PHPPHP selberselber bauenbauen PHPPHP UserUser GroupGroup FrankfurtFrankfurt 31.03.201131.03.2011 WalterWalter EbertEbert http://www.flickr.com/photos/zunami/4738471442/ Willkommen bei den anonymen PHPlern Mein Name ist Walter und ich kompiliere mir PHP selber Nicht immer, aber immer öfter Goggler-Handzeigen http://www.flickr.com/photos/zunami/3125589973/ http://php.net/releases/5_3_0.php http://www.php.net/releases/5_3_3.php http://derickrethans.nl/distributions-please-dont-cripple-php-or-red-hat-stop-fucking-around.html Kompatibilität / Features Du musst zum Beispiel: PHP4 irgendwer? ● eine alte PHP Version unterstützen ● mehrere PHP Versionen bzw. Konfigurationen testen ● proprietäre Extensions nutzen die nur mit bestimmten PHP Versionen funktionieren ● die letzte Entwickler-Version testen (trunk) http://www.flickr.com/photos/mama/94778673/ b ./configure make sudo make install http://www.php.net/downloads.php b ./configure make make test sudo make install Linux Unix Mac OS X Windows -> benutze einfach die binaries oder wenn man wirklich muss; besuche: http://wiki.php.net/internals/windows/stepbystepbuild b \ = escape linebreaks sudo apt-get install \ automake autoconf gcc \ libtool binutils subversion \ libxml2-dev libcurl4-dev \ libfreetype6-dev libjpeg-dev libpng-dev Packages fuer debian / ubuntu ./configure --help b sage: configure "options# "host# $ptions! [defaults in brackets after descriptions# %onfiguration! --cache-file&'()* cache test results in '()* --help print this message --no-create do not create output files --quiet, -
Software Packaging in 2012
Software Packaging in 2012 International PHP Conference 2012 | October, 15th | Arne Blankerts Your Goal? » Share your code » Distribute a library or framework » Release an application » Deploy to a production or stage server » Deploy identically to many servers » ...? sharing experience Share your code » You do not need a packaging system » Use a version control system » Get a github.com account !" sharing experience Distribute a library or framework » #ear » http://pear.php.net » #yrus aka Pear& » http://pear2.php.net » Composer » http://getcomposer.org sharing experience Release an ap lication » #ear » #(# )rchive *#()R" » +S Level Packages » R#- » D./ » ... sharing experience De loy to a production or stage server » #ear » +S Level Packages » 01 sharing experience The choice is yours. And depends on your goal. PE%R » The Legacy Installer » #ackages come as tar.gz file » Package.xml for meta information » Limited Dependency management » 'an install depended #.)R packages » Informs on version / extension mismatches » #ackages are organized in 'hannels sharing experience PE%R - Pirum » ) #.AR Channel Server » http://pirum.sensiolabs.org% » http://github.com/fabpot/Pirum » 0nstalled via #.AR » pear channel-discover pear.pirum-project.org » pear installes pirum/Pirum sharing experience 'reating a pear package » Create a package.3ml » /uild package$ » pear package » )dd to prium$ » pirum add package.tgz sharing experience Pyrus / PEAR 2 » Rewritten #.AR Installer » Same package.3ml » Comes as phar » Seems to be pretty much a dead project -
Phing User Guide
< > Phing User Guide Michiel Rook <[email protected]> Ken Guest <[email protected]> Siad Ardroumli <[email protected]> Phing User Guide by Michiel Rook, Ken Guest, and Siad Ardroumli Phing 3.x Publication date 2021-09-07 07:19:44 Copyright © 2002-2020 The Phing Project Preface ................................................................................................................................... xvii 1. About this book ..................................................................................................................... 1 1.1. Contributors (present and past) ................................................................................... 1 1.2. Copyright .................................................................................................................... 1 1.3. License ....................................................................................................................... 1 1.4. DocBook ..................................................................................................................... 1 1.4.1. Building the documentation ............................................................................... 2 1.4.2. Template for new tasks .................................................................................... 4 1.4.3. Customization of the look & feel of the rendered outputs .................................... 4 1.4.4. DocBook v5 elements used in the manual and their meaning .............................. 5 2. Introduction .........................................................................................................................