<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Bart Verwilst a.k.a Bort :: Blog &#187; symfony</title>
	<atom:link href="http://blog.verwilst.be/tag/symfony/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.verwilst.be</link>
	<description>Linux, Open Source. That&#039;s pretty much it.</description>
	<lastBuildDate>Wed, 05 May 2010 09:02:31 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Symfony ( or any other framework :) ) pitfalls</title>
		<link>http://blog.verwilst.be/2008/03/05/symfony-or-any-other-framework-pitfalls/</link>
		<comments>http://blog.verwilst.be/2008/03/05/symfony-or-any-other-framework-pitfalls/#comments</comments>
		<pubDate>Tue, 04 Mar 2008 23:06:14 +0000</pubDate>
		<dc:creator>Bart Verwilst</dc:creator>
				<category><![CDATA[Hosting]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[symfony]]></category>

		<guid isPermaLink="false">http://weblog.verwilst.be/2008/03/05/symfony-or-any-other-framework-pitfalls/</guid>
		<description><![CDATA[Using a system like Symfony for your website creation needs has a lot of advantages, no doubt about that.
But you also need to be aware that you&#8217;re unwillingly creating a pattern that can be abused when you aren&#8217;t paying attention. I got caught by one of these myself for a few weeks now..  
Let [...]]]></description>
			<content:encoded><![CDATA[<p>Using a system like <a href="http://www.symfony-project.org/" target="_blank">Symfony</a> for your website creation needs has a lot of advantages, no doubt about that.</p>
<p>But you also need to be aware that you&#8217;re unwillingly creating a pattern that can be abused when you aren&#8217;t paying attention. I got caught by one of these myself for a few weeks now.. <img src='http://blog.verwilst.be/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Let me explain.. For a couple of weeks, one of my sites was cursed with some strange voodoo. I had a list of some items on a page, and 1 of these items ( always the same one ) kept disappearing on a daily basis, while i was the only one with access to the database. I was puzzled until some mysql logging cleared things up. Some asian IP was executing my website like this: http://mysite.be/item/delete/id/$nr where $nr are the id&#8217;s from the list. ( Basic and easy-to-try standard crud thing, available from most frameworks, so if you know Symfony, you could guess that item had a delete, create, edit, show and list action <img src='http://blog.verwilst.be/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  )</p>
<p>Because the item module was forgotten in my security.yml frenzy, everyone could browse to that URL, and delete my items <img src='http://blog.verwilst.be/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />   But why did only one item disappear? Well, the other delete requests were denied because of foreign keys, while the deleted one wasn&#8217;t coupled to any other field, so it was successfully removed every time.</p>
<p>Anyways, i plugged the hole with a security.yml as follows:</p>
<p>delete:<br />
is_secure: on<br />
credentials: admin</p>
<p>create:<br />
is_secure: on<br />
credentials: admin</p>
<p>edit:<br />
is_secure: on<br />
credentials: admin</p>
<p>One less thing to worry about <img src='http://blog.verwilst.be/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.verwilst.be/2008/03/05/symfony-or-any-other-framework-pitfalls/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
