Changes for page Engine_XalanJ

Last modified by Nicolas Gregoire on 2012/01/31 17:35

From version Icon 19.1 Icon
edited by Nicolas Gregoire
on 2012/01/10 11:23
Change comment: There is no comment for this version
To version Icon 34.1 Icon
edited by Nicolas Gregoire
on 2012/01/11 22:55
Change comment: There is no comment for this version

Summary

Details

Icon Page properties
Content
... ... @@ -5,16 +5,17 @@
5 5  
6 6  1.0
7 7  
8 -
9 9  == Command line ==
10 10  
11 11  $> java org.apache.xalan.xslt.Process -in foo.xml -xsl foo.xsl
12 12  
12 +__Note__ : xml-apis.jar, xercesImpl.jar and xalan*.jar must be in the $CLASSPATH
13 +
13 13  == Identification strings ==
14 14  
15 -| xsl:vendor-url|http:~/~/xml.apache.org/xalan-j
16 -| xsl:vendor|Apache Software Foundation
17 -| xsl:version|1.0
16 +|=xsl:vendor-url|http:~/~/xml.apache.org/xalan-j
17 +|=xsl:vendor|Apache Software Foundation
18 +|=xsl:version|1.0
18 18  
19 19  == Special features ==
20 20  
... ... @@ -21,67 +21,25 @@
21 21  * File creation
22 22  * Code execution
23 23  * JDBC connectivity
24 -* Java properties
25 -* CheckEnv()
25 +* Java properties disclosure
26 +* Java environment disclosure
26 26  
27 -== CheckEnv() ==
28 +== Java environment disclosure ==
28 28  
29 -The following code will display some information about the execution context :
30 +The checkEnvironment() extension function (documented [[here>>http://xml.apache.org/xalan-j/faq.html#faq-N10064||rel="__blank"]]) will display some information about the execution context (packages, paths, versions, ...).
30 30  
31 -[[checkenv.xsl>>attach:checkenv.xsl]]
32 +|=Namespace|=Extension function|=PoC|=Sample output
33 +|http:~/~/xml.apache.org/xalan|checkEnvironment()|[[xalanj-checkenv.xsl>>attach:xalanj-checkenv.xsl]]|[[xalanj-checkenv-output.txt>>attach:xalanj-checkenv-output.txt]]
32 32  
33 -TODO
34 -
35 -=== Code ===
36 -
37 -##<?xml version="1.0"?>
38 -<xsl:stylesheet xmlns:xsl="http:~/~/www.w3.org/1999/XSL/Transform"
39 - xmlns:xalan="http:~/~/xml.apache.org/xalan"
40 - exclude-result-prefixes="xalan"
41 - version="1.0">##
42 -
43 - <xsl:output indent="yes"/>
44 - <xsl:template match="/">
45 - (% style="color:red" %)<xsl:copy-of select="xalan:checkEnvironment()"/>
46 -
47 - </xsl:template>
48 -\\</xsl:stylesheet>
49 -
50 -=== Output ===
51 -
52 -<?xml version="1.0" encoding="UTF-8"?><checkEnvironmentExtension>
53 -<EnvironmentCheck version="$Revision$">
54 -<environment>
55 -<item key="version.DOM.draftlevel">2.0fd</item>
56 -<item key="java.class.path">:/usr/share/java/xalan2.jar:/usr/share/java/xml-apis.jar:/usr/share/java/xercesImpl.jar:/usr/share/java/xalan25.jar:/usr/share/java/bsf-2.4.0.jar</item>
57 -<item key="version.JAXP">1.1 or higher</item>
58 -<item key="java.ext.dirs">/usr/lib/jvm/java-6-openjdk/jre/lib/ext:/usr/java/packages/lib/ext</item>
59 -<item key="version.xerces2">Xerces-J 2.9.1</item>
60 -<item key="version.xerces1">not-present</item>
61 -<item key="version.xalan2_2">Xalan Java 2.7.1</item>
62 -<item key="version.xalan1">not-present</item>
63 -<item key="version.ant">not-present</item>
64 -<item key="java.version">1.6.0_20</item>
65 -<item key="version.DOM">2.0</item>
66 -<item key="version.crimson">not-present</item>
67 -<item key="sun.boot.class.path">/usr/lib/jvm/java-6-openjdk/jre/lib/resources.jar:/usr/lib/jvm/java-6-openjdk/jre/lib/rt.jar:/usr/lib/jvm/java-6-openjdk/jre/lib/sunrsasign.jar:/usr/lib/jvm/java-6-openjdk/jre/lib/jsse.jar:/usr/lib/jvm/java-6-openjdk/jre/lib/jce.jar:/usr/lib/jvm/java-6-openjdk/jre/lib/charsets.jar:/usr/lib/jvm/java-6-openjdk/jre/lib/netx.jar:/usr/lib/jvm/java-6-openjdk/jre/lib/plugin.jar:/usr/lib/jvm/java-6-openjdk/jre/lib/rhino.jar:/usr/lib/jvm/java-6-openjdk/jre/lib/modules/jdk.boot.jar:/usr/lib/jvm/java-6-openjdk/jre/classes</item>
68 -<foundJar desc="apis.jar-apparent.version" name="xml">xml-apis.jar present-unknown-version</foundJar>
69 -<foundJar desc="apis.jar-path" name="xml">/usr/share/java/xml-apis.jar</foundJar>
70 -<foundJar desc="apparent.version" name="xercesImpl.jar">xercesImpl.jar WARNING.present-unknown-version</foundJar>
71 -<foundJar desc="path" name="xercesImpl.jar">/usr/share/java/xercesImpl.jar</foundJar>
72 -<item key="version.SAX">2.0</item>
73 -<item key="version.xalan2x">Xalan Java 2.7.1</item>
74 -</environment>
75 -<status result="OK"/>
76 -</EnvironmentCheck>
77 -</checkEnvironmentExtension>
78 -
79 79  == Java code execution ==
80 80  
81 -The following code will display the current date :
37 +The attached code will display the current date using a newly created "java.util.Date" object. This should be enough to demonstrate Java code execution.
82 82  
83 -TODO
84 84  
40 +|=Namespace|=Extension function|=PoC|=Sample output
41 +|http:~/~/xml.apache.org/xalan/java/java.util.Date|new()|[[xalanj-java-date.xsl>>attach:xalanj-java-date.xsl]]|Current date:
42 +Wed Jan 11 22:45:07 CET 2012
43 +
85 85  == Execution of external commands ==
86 86  
87 87  The following code will execute the command "touch /tmp/hello" :
Icon checkenv.xsl
Author
... ... @@ -1,1 +1,0 @@
1 -xwiki:XWiki.NicolasGregoire
Size
... ... @@ -1,1 +1,0 @@
1 -324 bytes
Content
... ... @@ -1,14 +1,0 @@
1 -<?xml version="1.0"?>
2 -
3 -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
4 - xmlns:xalan="http://xml.apache.org/xalan"
5 - exclude-result-prefixes="xalan"
6 - version="1.0">
7 -
8 - <xsl:output indent="yes"/>
9 - <xsl:template match="/">
10 - <xsl:copy-of select="xalan:checkEnvironment()"/>
11 - </xsl:template>
12 -
13 -</xsl:stylesheet>
14 -
Icon xalanj-checkenv-output.txt
Author
... ... @@ -1,0 +1,1 @@
1 +xwiki:XWiki.NicolasGregoire
Size
... ... @@ -1,0 +1,1 @@
1 +2.5 KB
Content
... ... @@ -1,0 +1,31 @@
1 +<?xml version="1.0" encoding="UTF-8"?><checkEnvironmentExtension>
2 + <EnvironmentCheck version="$Revision$">
3 + <environment>
4 + <item key="version.DOM.draftlevel">2.0fd</item>
5 + <item key="java.class.path">/usr/share/java/xalan2.jar:/usr/share/java/xml-apis.jar:/usr/share/java/xercesImpl.jar:/usr/share/java/serializer.jar:/usr/share/java/xsltc.jar</item>
6 + <item key="version.JAXP">1.1 or higher</item>
7 + <item key="java.ext.dirs">/usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/ext:/usr/java/packages/lib/ext</item>
8 + <item key="version.xerces2">Xerces-J 2.9.1</item>
9 + <item key="version.xerces1">not-present</item>
10 + <item key="version.xalan2_2">Xalan Java 2.7.1</item>
11 + <item key="version.xalan1">not-present</item>
12 + <item key="version.ant">not-present</item>
13 + <item key="java.version">1.6.0_26</item>
14 + <item key="version.DOM">2.0</item>
15 + <item key="version.crimson">not-present</item>
16 + <item key="sun.boot.class.path">/usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/resources.jar:/usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/rt.jar:/usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/sunrsasign.jar:/usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/jsse.jar:/usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/jce.jar:/usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/charsets.jar:/usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/modules/jdk.boot.jar:/usr/lib/jvm/java-6-sun-1.6.0.26/jre/classes</item>
17 + <foundJar desc="apis.jar-apparent.version" name="xml">xml-apis.jar present-unknown-version</foundJar>
18 + <foundJar desc="apis.jar-path" name="xml">/usr/share/java/xml-apis.jar</foundJar>
19 + <foundJar desc="apparent.version" name="xercesImpl.jar">xercesImpl.jar WARNING.present-unknown-version</foundJar>
20 + <foundJar desc="path" name="xercesImpl.jar">/usr/share/java/xercesImpl.jar</foundJar>
21 + <foundJar desc="apparent.version" name="serializer.jar">serializer.jar present-unknown-version</foundJar>
22 + <foundJar desc="path" name="serializer.jar">/usr/share/java/serializer.jar</foundJar>
23 + <foundJar desc="apparent.version" name="xsltc.jar">xsltc.jar present-unknown-version</foundJar>
24 + <foundJar desc="path" name="xsltc.jar">/usr/share/java/xsltc.jar</foundJar>
25 + <item key="version.SAX">2.0</item>
26 + <item key="version.xalan2x">Xalan Java 2.7.1</item>
27 + </environment>
28 + <status result="OK"/>
29 + </EnvironmentCheck>
30 +</checkEnvironmentExtension>
31 +
Icon xalanj-checkenv.xsl
Author
... ... @@ -1,0 +1,1 @@
1 +xwiki:XWiki.NicolasGregoire
Size
... ... @@ -1,0 +1,1 @@
1 +310 bytes
Content
... ... @@ -1,0 +1,11 @@
1 +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
2 + xmlns:xalan="http://xml.apache.org/xalan"
3 + version="1.0">
4 +
5 + <xsl:output method="xml" indent="yes" xalan:indent-amount="4"/>
6 + <xsl:template match="/">
7 + <xsl:copy-of select="xalan:checkEnvironment()"/>
8 + </xsl:template>
9 +
10 +</xsl:stylesheet>
11 +