Escape message titles and bodies. This is an emergency fix as some genius
authorTom Hughes <tom@compton.nu>
Tue, 15 Jan 2008 00:26:01 +0000 (00:26 +0000)
committerTom Hughes <tom@compton.nu>
Tue, 15 Jan 2008 00:26:01 +0000 (00:26 +0000)
has decided to report this XSS problem to a public mailing list. Unfortunately
it means that some functionality (links in messages etc) has been lost for now.

app/views/diary_entry/_diary_entry.rhtml
app/views/message/read.rhtml

index 366a67f0e52e222a20f0f88ddf3d484e57f21daa..97b5330106dde3ffbbe7412d9ff4b0ae0bbedaf9 100644 (file)
@@ -1,5 +1,5 @@
-<b><%= diary_entry.title %></b><br />
-<%= simple_format(diary_entry.body) %>
+<b><%= h(diary_entry.title) %></b><br />
+<%= simple_format(h(diary_entry.body)) %>
 <% if diary_entry.latitude and diary_entry.longitude %>
 Coordinates: <div class="geo" style="display: inline"><span class="latitude"><%= diary_entry.latitude %></span>; <span class="longitude"><%= diary_entry.longitude %></span></div> (<%=link_to 'map', :controller => 'site', :action => 'index', :lat => diary_entry.latitude, :lon => diary_entry.longitude, :zoom => 14 %> / <%=link_to 'edit', :controller => 'site', :action => 'edit', :lat => diary_entry.latitude, :lon => diary_entry.longitude, :zoom => 14 %>)<br/>
 <% end %>
index 4117057d006388f48ec7a7e94de19007df541216..2e2694c072abbff7fecfd119f808ead812bb2c1d 100644 (file)
@@ -9,7 +9,7 @@
   </tr>
   <tr>
     <th align="right">Subject</th>
-    <td><%= @message.title %></td>
+    <td><%= h(@message.title) %></td>
   </tr>
   <tr>
     <th align="right">Date</th>
@@ -17,7 +17,7 @@
   </tr>
   <tr>
     <th></th>
-    <td><%= @message.body %></td>
+    <td><%= h(@message.body) %></td>
   </tr>
 </table>
 
@@ -42,7 +42,7 @@
   </tr>
   <tr>
     <th align="right">Subject</th>
-    <td><%= @message.title %></td>
+    <td><%= h(@message.title) %></td>
   </tr>
   <tr>
     <th align="right">Date</th>
@@ -50,7 +50,7 @@
   </tr>
   <tr>
     <th></th>
-    <td><%= @message.body %></td>
+    <td><%= h(@message.body) %></td>
   </tr>
 </table>