<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Tools on Willis Vandevanter</title><link>https://silentrobots.com/tags/tools/</link><description>Technical security research and notes</description><generator>Hugo -- gohugo.io</generator><language>en-us</language><lastBuildDate>Thu, 21 Jul 2022 00:00:00 +0000</lastBuildDate><atom:link href="https://silentrobots.com/tags/tools/index.xml" rel="self" type="application/rss+xml"/><item><title>🎉 burpsuite-project-file-parser v1.1 🎉</title><link>https://silentrobots.com/burpsuite-project-parser-v1-1/</link><pubDate>Thu, 21 Jul 2022 00:00:00 +0000</pubDate><guid>https://silentrobots.com/burpsuite-project-parser-v1-1/</guid><description>&lt;img src="https://silentrobots.com/images/2022/11/beer1.png" alt="Featured image of post 🎉 burpsuite-project-file-parser v1.1 🎉" /&gt;&lt;p&gt;&lt;em&gt;&lt;strong&gt;Edit&lt;/strong&gt;: 1.1b fixes an auto shutdown issue in burpsuite, I would highly recommend this release over 1.1a. The rest of the post still applies.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;This is a small &lt;a class="link" href="https://github.com/BuffaloWill/burpsuite-project-file-parser/releases/tag/1.1a" target="_blank" rel="noopener"
 &gt;release&lt;/a&gt; but a useful one.&lt;/p&gt;
&lt;p&gt;Release 1.1b adds the ability to parse projects for portions of siteMap and proxyHistory. For example, the following will only respond with the &lt;code&gt;proxyHistory&lt;/code&gt; &lt;code&gt;request.headers&lt;/code&gt; and &lt;code&gt;request.body&lt;/code&gt;. Note, the URL is always included:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;java -jar -Djava.awt.headless&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nb"&gt;true&lt;/span&gt; &lt;span class="o"&gt;[&lt;/span&gt;PATH_TO burpsuite_pro.jar&lt;span class="o"&gt;]&lt;/span&gt; --project-file&lt;span class="o"&gt;=[&lt;/span&gt;PATH TO PROJECT FILE&lt;span class="o"&gt;]&lt;/span&gt; &lt;span class="se"&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; proxyHistory.request.headers, proxyHistory.request.body
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;This should result in &lt;strong&gt;significant speed improvements&lt;/strong&gt; as parsing will ignore &lt;code&gt;response.body&lt;/code&gt; which can be very large. Conversely, if you only wanted to parse the proxyHistory response body for interesting things you could do:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;java -jar -Djava.awt.headless&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nb"&gt;true&lt;/span&gt; &lt;span class="o"&gt;[&lt;/span&gt;PATH_TO burpsuite_pro.jar&lt;span class="o"&gt;]&lt;/span&gt; --project-file&lt;span class="o"&gt;=[&lt;/span&gt;PATH TO PROJECT FILE&lt;span class="o"&gt;]&lt;/span&gt; &lt;span class="se"&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; proxyHistory.response.body
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;</description></item><item><title>odle ruby gem: piping security data</title><link>https://silentrobots.com/odle-piping-security-data/</link><pubDate>Thu, 24 May 2018 00:00:00 +0000</pubDate><guid>https://silentrobots.com/odle-piping-security-data/</guid><description>&lt;img src="https://silentrobots.com/images/2022/11/falcon2.png" alt="Featured image of post odle ruby gem: piping security data" /&gt;&lt;p&gt;I recently (May 2018) published &lt;a class="link" href="https://github.com/BuffaloWill/odle" target="_blank" rel="noopener"
 &gt;odle&lt;/a&gt; which is a Ruby gem and binary that takes XML data from various security tools and outputs their JSON equivalent. The goal is to be (1) simple, (2) fast, and (3) work on many platforms with only one dependency – nokogiri.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://silentrobots.com/images/external/odle.gif" alt="" loading="lazy" /&gt;
&lt;/p&gt;
&lt;p&gt;Quick Example of Piping Security Results&lt;/p&gt;
&lt;p&gt;Below are two examples using odle to convert output from one tool (e.g. burpsuite) as input for something else (e.g. nmap scans). From the command line I typically use odle with &lt;a class="link" href="https://github.com/tomnomnom/gron" target="_blank" rel="noopener"
 &gt;gron&lt;/a&gt; which is an awesome tool that “makes json greppable” =).&lt;/p&gt;
&lt;h2 id="convert-burp-to-nmap-script-scan"&gt;Convert Burp to nmap script scan
&lt;/h2&gt;&lt;p&gt;Often I will take the passive data from one tool and feed it into another tool. One example is burp to something else; in this case, nmap script checks.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;span class="lnt"&gt;5
&lt;/span&gt;&lt;span class="lnt"&gt;6
&lt;/span&gt;&lt;span class="lnt"&gt;7
&lt;/span&gt;&lt;span class="lnt"&gt;8
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;cat burp-scan.xml &lt;span class="p"&gt;|&lt;/span&gt; odle --burp &lt;span class="p"&gt;|&lt;/span&gt; gron &lt;span class="p"&gt;|&lt;/span&gt; grep -i &lt;span class="s1"&gt;&amp;#39;affected_hosts&amp;#39;&lt;/span&gt; &lt;span class="p"&gt;|&lt;/span&gt; cut -d &lt;span class="se"&gt;\&amp;#34;&lt;/span&gt; -f4 &lt;span class="p"&gt;|&lt;/span&gt; cut -d/ -f3 &lt;span class="p"&gt;|&lt;/span&gt; cut -d&lt;span class="s1"&gt;&amp;#39; &amp;#39;&lt;/span&gt; -f1 &lt;span class="p"&gt;|&lt;/span&gt; sort &lt;span class="p"&gt;|&lt;/span&gt; uniq &lt;span class="p"&gt;|&lt;/span&gt; xargs &lt;span class="nb"&gt;printf&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;nmap -sS -Pn -p 21 --script +ftp-anon %s \n&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;nmap -sS -Pn -p &lt;span class="m"&gt;21&lt;/span&gt; --script +ftp-anon apis.google.com 
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;nmap -sS -Pn -p &lt;span class="m"&gt;21&lt;/span&gt; --script +ftp-anon developer.cdn.mozilla.net 
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;nmap -sS -Pn -p &lt;span class="m"&gt;21&lt;/span&gt; --script +ftp-anon fakesite.com 
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;nmap -sS -Pn -p &lt;span class="m"&gt;21&lt;/span&gt; --script +ftp-anon fonts.googleapis.com 
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;nmap -sS -Pn -p &lt;span class="m"&gt;21&lt;/span&gt; --script +ftp-anon safebrowsing-cache.google.com 
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;nmap -sS -Pn -p &lt;span class="m"&gt;21&lt;/span&gt; --script +ftp-anon safebrowsing.google.com 
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h2 id="run-nessus-results-through-aquatone"&gt;Run nessus results through aquatone
&lt;/h2&gt;&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;span class="lnt"&gt;5
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;cat nessus_v2.xml &lt;span class="p"&gt;|&lt;/span&gt; odle --nessus &lt;span class="p"&gt;|&lt;/span&gt; ~/Downloads/gron &lt;span class="p"&gt;|&lt;/span&gt; grep -i &lt;span class="s1"&gt;&amp;#39;affected_hosts&amp;#39;&lt;/span&gt; &lt;span class="p"&gt;|&lt;/span&gt; cut -d &lt;span class="se"&gt;\&amp;#34;&lt;/span&gt; -f4 &lt;span class="p"&gt;|&lt;/span&gt; cut -d/ -f3 &lt;span class="p"&gt;|&lt;/span&gt; cut -d&lt;span class="s1"&gt;&amp;#39; &amp;#39;&lt;/span&gt; -f1 &lt;span class="p"&gt;|&lt;/span&gt; sort &lt;span class="p"&gt;|&lt;/span&gt; uniq &lt;span class="p"&gt;|&lt;/span&gt; xargs &lt;span class="nb"&gt;printf&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;aquatone --discover %s \n&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;aquatone --discover admin.fb.com
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;aquatone --discover js.fb.com
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;aquatone --discover blah.fb.com
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h2 id="install"&gt;Install
&lt;/h2&gt;&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;gem install nokogiri
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;gem install odle
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h2 id="bugs"&gt;Bugs
&lt;/h2&gt;&lt;p&gt;I am sure there are plenty. Please submit an issue if you find one or if you would like to see other supported tools. I am also interested in inconsistencies between outputs, missing data, and other issues if you see them.&lt;/p&gt;</description></item></channel></rss>