<?xml version="1.0"?>
<rss version="2.0">
  <channel>
    <title>PHPDeveloper.org</title>
    <link>http://www.phpdeveloper.org</link>
    <description>Up-to-the Minute PHP News, views and community</description>
    <language>en-us</language>
    <pubDate>Thu, 24 May 2012 14:54:57 -0500</pubDate>
    <ttl>30</ttl>
    <item>
      <title><![CDATA[Developer Drive Blog: How to Prevent a SQL Injection Attack]]></title>
      <guid>http://www.phpdeveloper.org/news/16994</guid>
      <link>http://www.phpdeveloper.org/news/16994</link>
      <description><![CDATA[<p>
From the Developer Drive blog there's a recent post with some suggestions on how you can help to <a href="http://www.developerdrive.com/2011/10/how-to-prevent-a-sql-injection-attack/">prevent SQL injections</a> in your PHP application and make it that much harder for would-be attackers to do what they shouldn't.
</p>
<blockquote>
Why do SQL injections happen so often?
The shortest answer is that SQL injections are so popular because of poor programming. Hackers know about the potential of a successful SQL injection attack and they search for vulnerabilities. Unfortunately, very often they don't have to search hard - vulnerabilities pop right in their face. [...] The good news is that fortunately, SQL injections are also relatively easy to prevent.
</blockquote>
<p>They list nine easy things you can do to help prevent the attacks:</p>
<ul>
<li>Patch your SQL server regularly
<li>Limit the use of dynamic queries
<li>Escape user input
<li>Store database credentials in a separate file
<li>Use the principle of least privilege
<li>Turn magic quotes off
<li>Disable shells
<li>Disable any other DB functionality you don't need
<li>Test your code
</ul>]]></description>
      <pubDate>Fri, 14 Oct 2011 09:25:12 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[DZone.com: Hardening PHP: SQL injection - Complete walkthrough]]></title>
      <guid>http://www.phpdeveloper.org/news/16711</guid>
      <link>http://www.phpdeveloper.org/news/16711</link>
      <description><![CDATA[<p>
On DZone.com today there's a new post from <i>Krzysztof Kotowicz</i> sharing a presentation of his about <a href="http://php.dzone.com/news/hardening-php-sql-injection">protecting your application from SQL injection</a>.
</p>
<blockquote>
The materials teach how to use prepared statements, how to escape and write secure stored procedures. Many PHP projects are covered - <a href="http://php.net/manual/en/book.pdo.php">PDO</a>, <a href="http://propel.phpdb.org/trac/">Propel</a>, <a href="http://www.doctrine-project.org/">Doctrine</a>, <a href="http://framework.zend.com/">Zend Framework</a> and <a href="http://pear.php.net/MDB2/">MDB2</a>. Multiple gotchas and caveats are included. I discuss why escaping is usually the wrong choice, which practices to avoid or follow and how stored procedures sometimes offer no protection at all.
</blockquote>
<p>
The presentation (as <a href="http://www.slideshare.net/kkotowicz/sql-injection-complete-walktrough-not-only-for-php-developers">posted to Slideshare</a>) starts with some of the basics - what SQL injection is and an example of how it could be used to bypass security. He covers how to use prepared statements in each of the technologies (with code snippets), methods for escaping data and how to create stored procedures that are protected from the same threats.
</p>]]></description>
      <pubDate>Fri, 12 Aug 2011 09:20:13 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Advanced PHP Tutorial: 7 Useful functions to tighten the security in PHP]]></title>
      <guid>http://www.phpdeveloper.org/news/15253</guid>
      <link>http://www.phpdeveloper.org/news/15253</link>
      <description><![CDATA[<p>
On the Advanced PHP Tutorial site there's a recent post that suggests <a href="http://advancedphptutorial.blogspot.com/2010/10/7-useful-functions-to-tighten-security.html">a few useful functions</a> that can get you started on security and protecting your application from possible exploits. These aren't the only way to prevent these issues, but they're a start in the right direction.
</p>
<blockquote>
Security is a very important aspect of programming. In PHP, there are few useful functions which is very handy for preventing your website from various attacks like SQL Injection Attack , XSS attack etc.Let's check few useful functions available in PHP to tighten the security in your project. But note that this is not a complete list, it just list of functions which I found useful for using in your project.
</blockquote>
<p>
The functions include <a href="http://www.php.net/mysql_real_escape_string">mysql_real_escape_string</a> for database query handling, <a href="http://www.php.net/htmlentities">htmlentities</a> to filter user input for HTML and two hashing functions to create hashes you can validate from - <a href="http://www.php.net/md5">md5</a> and <a href="http://www.php.net/sha1">sha1</a>.
</p>]]></description>
      <pubDate>Fri, 08 Oct 2010 12:28:38 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[NETTUTS.com: Can You Hack Your Own Site? A Look at Some Essential Security Considerations]]></title>
      <guid>http://www.phpdeveloper.org/news/10659</guid>
      <link>http://www.phpdeveloper.org/news/10659</link>
      <description><![CDATA[<p>
On the NETTUTS.com website, there's a <a href="http://nettuts.com/articles/can-you-hack-your-own-site-a-look-at-some-essential-security-considerations/">great article</a> with some "essential security considerations" that you can use to see just how hackable your site could be.
</p>
<blockquote>
This article walks through the brainstorming stage of planning for what is in this instance, a hypothetical user-centric web application. Although you won't be left with a complete project '" nor a market ready framework, my hope is that each of you, when faced with future workloads, may muse on the better practices described. So, without further ado...Are you sitting comfortably?
</blockquote>
<p>
<a href="http://nettuts.com/articles/can-you-hack-your-own-site-a-look-at-some-essential-security-considerations/">The tutorial</a> is broken up into a few sections based around an example with a few points of failure (about book information). They work through the thought process behind the code, using the $_REQUEST variables correctly, preventing SQL injections, filtering the HTML output and a <a href="http://nettuts.s3.amazonaws.com/Articles/009_Security/NETTUTS-SEC/sources.zip">sample code</a> download for you to see how it's all tied together.
</p>]]></description>
      <pubDate>Tue, 22 Jul 2008 12:57:07 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[php|architect: New Free Issue of php|architect]]></title>
      <guid>http://www.phpdeveloper.org/news/8465</guid>
      <link>http://www.phpdeveloper.org/news/8465</link>
      <description><![CDATA[<p>
The folks over at <a href="http://www.phparch.com">php|architect magazine</a> has updated the free issue they're offering to anyone looking to get a taste of the great content inside each issue. <i>Sean Coates</i> <a href="http://hades.phparch.com/hermes/public/viewnews/index.php?id=3487">writes</a>:
</p>
<blockquote>
We've recently updated our web site to offer a new free issue of php|architect magazine! The May 2007 edition of php|architect has proven to be extremely popular, and with PHP 6 on the horizon, we thought everyone should read the cover article on Unicode, so we're releasing it completely free (and without obligation) to registered users of our web site.
</blockquote>
<p>
Other topics covered in the issue include working with server/client-side validation, preventing SQL injections, a look at the Model View Controller design pattern and dictionary attacks.
</p>
<p>
You can grab this free issue directly from <a href="http://www.phparch.com/issue.php?mid=104">the php|architect website</a>.
</p>]]></description>
      <pubDate>Thu, 16 Aug 2007 10:07:00 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Greg Beaver's Blog: Quick review of Pixy vulnerability scanner for PEAR users]]></title>
      <guid>http://www.phpdeveloper.org/news/8111</guid>
      <link>http://www.phpdeveloper.org/news/8111</link>
      <description><![CDATA[<p>
<i>Greg Bever</i> has a <a href="http://greg.chiaraquartet.net/archives/178-quick-review-of-Pixy-vulnerability-scanner-for-PEAR-users.html">(very) quick post</a> about his experiences with the <a href="http://pixybox.seclab.tuwien.ac.at/pixy/index.php">Pixy XSS and SQLI Scanner</a> running against PEAR files.
</p>
<blockquote>
I tried out the Pixy XSS and SQLI Scanner (<a href="http://pixybox.seclab.tuwien.ac.at/pixy/index.php">http://pixybox.seclab.tuwien.ac.at/pixy/index.php</a>) on a few simple PEAR files.  On the first, I got a java exception, on the second it was unable to resolve the simplest of includes (no ability to resolve include_path). In short, the thing is useless for anything written using PEAR.  Fun!
</blockquote>
<p>
The Pixy XSS and SQLI Scanner is made to find SQL and XSS injection issues in scripts. It runs as a Java application and scans PHP4 source code to try to find problems. For more information on the scanner or to try it out for yourself, check out <a href="http://pixybox.seclab.tuwien.ac.at/pixy/index.php">the project's homepage</a> for documentation and downloads.
</p>]]></description>
      <pubDate>Mon, 25 Jun 2007 07:30:27 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Zend Developer Zone: Security Tip: Use a Database Abstraction Layer to help prevent SQL Injection]]></title>
      <guid>http://www.phpdeveloper.org/news/7603</guid>
      <link>http://www.phpdeveloper.org/news/7603</link>
      <description><![CDATA[<p>
<i>Matthew Weir O'Phinney</i> has posted one of his <a href="http://devzone.zend.com/node/view/id/1918">own security tips</a> to the Zend Developer Zone today involving the use of a database abstraction layer to help prevent SQL injections in your application.
</p>
<blockquote>
SQL injections are a common vulnerability in web-based applications that use databases. [...] There are several methods to prevent this type of attack.
</blockquote>
<p>
He gives three helpful hints for SQL injection prevention:
<ul>
<li>Use your database extension's quoting mechanism to quote values prior to executing a query
<li>Use PDO's prepared statements support
<li>Use a database abstraction layer (DAL), such as <a href="http://adodb.sourceforge.net/">AdoDB</a>, <a href="http://pear.php.net/package/MDB2">PEAR::MDB2</a>, or <a href="http://framework.zend.com/manual/en/zend.db.html">Zend_Db</a>.
</ul>
</p>
]]></description>
      <pubDate>Wed, 11 Apr 2007 11:39:00 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Chris Shiflett's Blog: Google Code Search for Security Vulnerabilities]]></title>
      <guid>http://www.phpdeveloper.org/news/6436</guid>
      <link>http://www.phpdeveloper.org/news/6436</link>
      <description><![CDATA[<p>
Recently , Google has released a new service for their search engine, the <a href="http://google.com/codesearch">Google Code Search</a>. It allows for developers to look through and locate items in public source code through the simple Google interface we're all used to. Fortunately, there's also a few security problems the site can help with as well, and <i>Chris Shiflett</i> shares some of these in <a href="http://shiflett.org/archive/269">his latest post</a>.
</p>
<blockquote>
Stephen de Vries sent <a href="http://www.securityfocus.com/archive/107/447729/30/0">an email</a> to SecurityFocus's <a href="http://www.securityfocus.com/archive/107">web application security mailing list</a> earlier today to comment on the new Google Code Search: "Google's code search provides an easy way to find obvious software flaws in open source and example applications."
</blockquote>
<p>
<i>Chris</i> <a href="http://shiflett.org/archive/269">talks about</a> cross-site scripting problems, issues with the superglobals, SQL injection problems, and even a misplaced trust of the $_SERVER superglobal. Each of the items is linked to is search terms on the Code Search to make it easy to locate.
</p>]]></description>
      <pubDate>Fri, 06 Oct 2006 06:49:21 -0500</pubDate>
    </item>
  </channel>
</rss>

