<?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>Aconiac Security Group Blog &#187; Ruby on Rails</title>
	<atom:link href="http://blog.aconiac.com/tag/ruby-on-rails/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.aconiac.com</link>
	<description>The official Aconiac company blog</description>
	<lastBuildDate>Wed, 19 May 2010 16:12:05 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=abc</generator>
		<item>
		<title>Ruby on Rails Security Guide</title>
		<link>http://blog.aconiac.com/2009/07/29/ruby-on-rails-security-guide/</link>
		<comments>http://blog.aconiac.com/2009/07/29/ruby-on-rails-security-guide/#comments</comments>
		<pubDate>Wed, 29 Jul 2009 00:47:07 +0000</pubDate>
		<dc:creator>Michael Lind Mortensen</dc:creator>
				<category><![CDATA[Tips & Tricks]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[Ruby on Rails]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[vulnerabilities]]></category>

		<guid isPermaLink="false">http://blog.aconiac.com/?p=273</guid>
		<description><![CDATA[As is sadly often the case, well-meaning newcomers to programming take on the newest and/or most popular programming language/framework available. And as you might suspect, they usually get it wrong and make every design and security mistake possible along the way! This is a trend that we&#8217;ve seen with pretty much every popular programming language [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-medium wp-image-276" title="Ruby on Rails logo" src="http://blog.aconiac.com/wp-content/uploads/2009/07/Ruby_on_Rails_logo-252x300.jpg" alt="Ruby on Rails logo" width="252" height="300" />As is sadly often the case, well-meaning newcomers to programming take on the newest and/or most popular programming language/framework available. And as you might suspect, they usually get it wrong and make every design and security mistake possible along the way!</p>
<p>This is a trend that we&#8217;ve seen with pretty much every popular programming language out there &#8211; like for example PHP, which sadly still holds the record for most insecure websites written in the language.</p>
<p id="firstHeading">One very popular web framework these days is Ruby on Rails, created by the very talented 29 year old Danish guy David Heinemeier Hansson. It uses a Model-View-Controller construction and emphasizes good design by such principles as DRY (Don&#8217;t Repeat Yourself). By all means it&#8217;s a very good web framework! But as with PHP, a lot of newcomers get it wrong. Either by not following the Ruby on Rails conventions or by ignoring security!</p>
<p>Now, we&#8217;re not here to teach you about design. If you want to learn more about proper software design, a good place to start is simply your local library. Look for books on topics like Design Patterns, Software Engineering, Extreme Programming, Test Driven Development and Agile Software Development.</p>
<p>However what we do want to teach you about, is proper security in Ruby on Rails! Luckily, we don&#8217;t have to take out extreme amounts of time from the work we need to do, to get you trained in RoR security &#8211; instead we can simply refer to the work already done by the OWASP organization. OWASP is an organization working to improve web application security in the entire world, by means of a whole bunch of different projects for developers, security professionals and end users. One of these projects is the <a title="Ruby on Rails Security Guide" href="http://www.owasp.org/index.php/Category:OWASP_Ruby_on_Rails_Security_Guide_V2">Ruby on Rails Security Guide V2 project</a> which includes a PDF file detailing the different security concerns and solutions concerning Ruby on Rails development.</p>
<p>If you are going to develop Ruby on Rails applications (or if you&#8217;re simply curious) please download the <a href="http://www.owasp.org/index.php/Category:OWASP_Ruby_on_Rails_Security_Guide_V2">Ruby on Rails Security Guide</a> from OWASP and read it before doing any production deployment of applications.</p>
<p>Note: If you&#8217;re too busy to go to the project page on OWASP and find the download link, then here&#8217;s a direct download link instead: <a title="Download the Security Guide directly" href="https://www.owasp.org/images/8/89/Rails_Security_2.pdf">Download the Security Guide</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.aconiac.com/2009/07/29/ruby-on-rails-security-guide/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Removing X-Powered-By header for mod_rails</title>
		<link>http://blog.aconiac.com/2009/03/03/removing-x-powered-by-header-for-mod_rails/</link>
		<comments>http://blog.aconiac.com/2009/03/03/removing-x-powered-by-header-for-mod_rails/#comments</comments>
		<pubDate>Tue, 03 Mar 2009 21:47:09 +0000</pubDate>
		<dc:creator>Michael Lind Mortensen</dc:creator>
				<category><![CDATA[Tips & Tricks]]></category>
		<category><![CDATA[Apache]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ruby on Rails]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://blog.aconiac.com/?p=61</guid>
		<description><![CDATA[NOTE: This is a technical post regarding Apache on Linux with support for Ruby on Rails. Basic understanding of these concepts is necessary! Normally you want to make sure your server doesn&#8217;t give out any information about service versions, however mod_rails doesn&#8217;t provide any easy way of doing this within the module itself. There is [...]]]></description>
			<content:encoded><![CDATA[<p><strong>NOTE: This is a technical post regarding Apache on Linux with support for Ruby on Rails. Basic understanding of these concepts is necessary! </strong></p>
<p>Normally you want to make sure your server doesn&#8217;t give out any information about service versions, however mod_rails doesn&#8217;t provide any easy way of doing this within the module itself. There is however a fairly easy solution. Simply use mod_headers to remove the headers in Apache.</p>
<p>So how is it done? Very simple, just enable the module mod_headers and add the snippet below to httpd.conf or another included configuration file in Apache. Both actions have to be done as root of course.</p>
<p>Enable the mod_headers module <em>(This example is Linux Debian &#8211; it might be different for your system)</em></p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;"># cd /etc/apache2/mods-available/</span>
<span style="color: #666666; font-style: italic;"># a2enmod headers</span></pre></div></div>

<p>Add these lines to httpd.conf</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">Header always <span style="color: #7a0874; font-weight: bold;">unset</span> <span style="color: #ff0000;">&quot;X-Powered-By&quot;</span>
Header always <span style="color: #7a0874; font-weight: bold;">unset</span> <span style="color: #ff0000;">&quot;X-Runtime&quot;</span></pre></div></div>

<p>Restart the Apache server <em>(Again &#8211; this is Debian! It might be different for you)</em></p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;"># apache2ctl restart</span></pre></div></div>

<p>And there you go. Try making e.g. a Nikto scan on the server and see if the headers aren&#8217;t there any more.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.aconiac.com/2009/03/03/removing-x-powered-by-header-for-mod_rails/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
