@prefix rdf:	<http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix ns1:	<http://myopenlink.net/dataspace/ondras#> .
@prefix sioc:	<http://rdfs.org/sioc/ns#> .
ns1:this	rdf:type	sioc:User .
@prefix ns3:	<http://myopenlink.net/dataspace/person/ondras#> .
@prefix foaf:	<http://xmlns.com/foaf/0.1/> .
ns3:this	rdf:type	foaf:Person .
@prefix rdfs:	<http://www.w3.org/2000/01/rdf-schema#> .
@prefix ns6:	<https://myopenlink.net:4433/dataspace/person/> .
ns3:this	rdfs:seeAlso	ns6:ondras .
@prefix atom:	<http://atomowl.org/ontologies/atomrdf#> .
<http://myopenlink.net/dataspace/ondras/weblog/Ondrej%27s%20Weblog>	rdf:type	atom:Feed .
@prefix sioct:	<http://rdfs.org/sioc/types#> .
<http://myopenlink.net/dataspace/ondras/weblog/Ondrej%27s%20Weblog>	rdf:type	sioct:Weblog ;
	rdfs:label	"Ondrej Zara's Weblog" ;
	rdf:type	sioct:BlogPost ,
		atom:Entry ;
	sioc:link	<http://myopenlink.net/weblog/ondras/?id=1639> ;
	sioc:has_creator	ns1:this ;
	sioc:has_container	<http://myopenlink.net/dataspace/ondras/weblog/Ondrej%27s%20Weblog> .
@prefix dt:	<http://www.w3.org/2001/XMLSchema#> .
@prefix dcterms:	<http://purl.org/dc/terms/> .
<http://myopenlink.net/dataspace/ondras/weblog/Ondrej%27s%20Weblog/1639>	dcterms:created	"2007-04-04T04:06:00-04:00"^^dt:dateTime ;
	dcterms:modified	"2007-05-27T18:43:24-04:00"^^dt:dateTime ;
	atom:title	"OAT and JS Hijacking" ;
	atom:author	ns3:this ;
	atom:published	"2007-04-04T08:06:00Z" ;
	atom:updated	"2007-05-27T22:43:24Z" .
@prefix dc:	<http://purl.org/dc/elements/1.1/> .
<http://myopenlink.net/dataspace/ondras/weblog/Ondrej%27s%20Weblog/1639>	dc:title	"OAT and JS Hijacking" ;
	sioc:links_to	<http://www.fortifysoftware.com/servlet/downloads/public/JavaScript_Hijacking.pdf> .
@prefix ns12:	<http://ajaxian.com/archives/> .
<http://myopenlink.net/dataspace/ondras/weblog/Ondrej%27s%20Weblog/1639>	sioc:links_to	ns12:towards-secure-ajax-mashups ,
		<http://www.networkworld.com/news/2007/040207-javascript-ajax-applications.html> .
@prefix ns13:	<http://myopenlink.net/dataspace/ondras/weblog/Ondrej%27s%20Weblog/tag/> .
<http://myopenlink.net/dataspace/ondras/weblog/Ondrej%27s%20Weblog/1639>	sioc:topic	ns13:security ,
		ns13:json ,
		ns13:oat ,
		ns13:ajax ;
	rdfs:label	"OAT and JS Hijacking" ;
	foaf:maker	ns3:this ;
	sioc:content	"\n      &lt;div class=&quot;moz-text-flowed&quot; style=&quot;font-family: Verdana,Arial,Helvetica,sans-serif; font-size: 13px;&quot; lang=&quot;x-western&quot;&gt;There has been some &lt;a href=&quot;http://ajaxian.com/archives/towards-secure-ajax-mashups&quot;&gt;recent&lt;/a&gt; &lt;a href=&quot;http://www.networkworld.com/news/2007/040207-javascript-ajax-applications.html&quot;&gt;buzz&lt;/a&gt; regarding security issues of Web 2.0 sites. I decided to thoroughly study and analyze how this works, manifests and influences JS toolkits.&lt;br /&gt; &lt;br /&gt;The best approach here is to study whitepaper located at\u00A0 &lt;a class=&quot;moz-txt-link-freetext&quot; href=&quot;http://www.fortifysoftware.com/servlet/downloads/public/JavaScript_Hijacking.pdf&quot;&gt;http://www.fortifysoftware.com/servlet/downloads/public/JavaScript_Hijacking.pdf&lt;/a&gt;. One can find a typical attack scenario, some defense suggestions and security considerations. While the paper is (in my opinion) oversized, telling rather small amount of facts on large amount of pages, it contains some interesting information. Let me share how all this relates to OAT.&lt;br /&gt; &lt;br /&gt;First of all, I must conclude that none of OAT-based apps is   vulnerable to mentioned attacks, for two reasons:  &lt;br /&gt;  &lt;ol&gt;   &lt;li&gt;attacks are only appliable in JSON documents, fetched via GET method.   Our OAT apps use XML format, requested with POST (via XML/A - SOAP).&lt;/li&gt;   &lt;li&gt;attacks are only appliable when security tokens (i.e. user name,   password) are passed via browser cookie. This is not our case, since we   pass these in POST request&amp;#39;s body.  &lt;br /&gt;   &lt;/li&gt;  &lt;/ol&gt;However, we might take into consideration the fact that OAT can be used   for building different applications. So I added some low-level support   for security countermeasures mentioned in the PDF document. Specifically   (as a client-side only toolkit), the following two methods:  &lt;br /&gt;  &lt;br /&gt;\u00A0 a) cookie-based secret, passed as URL parameter in GET requests. So   every OAT.AJAX.GET invocation will  &lt;ul&gt;   &lt;li&gt;set a cookie called &amp;#39;oatSecurityCookie&amp;#39; to some random value&lt;/li&gt;   &lt;li&gt;add &amp;#39;oatSecurityCookie=xxx&amp;#39; to URL string, where xxx equals to   the random value mentioned above.\u00A0&lt;/li&gt; &lt;/ul&gt;\u00A0 b) enhanced JSON parser with smarter text analysis, effectively   filtering out  &lt;br /&gt;  &lt;ul&gt;   &lt;li&gt;comments (at the beginning and end of JSONified text)&lt;/li&gt;   &lt;li&gt;the &amp;#39;while(1);&amp;#39; trap, situated at the beginning of received text  &lt;br /&gt;   &lt;/li&gt;  &lt;/ul&gt;  Both methods are now mentioned in the OAT documentation. Of course, applying OAT eqipped with these countermeasures doesn&amp;#39;t make (yet) your app secure: one must explicitely use one (or both) methods on server side, to complement OAT&amp;#39;s security features.&lt;br /&gt;  &lt;br /&gt;  To sum this up - OAT is now providing a maximum support for securing GETting JSONified data. It is up to user whether he wants to take advantage of this. We are - as (nearly) always - ready :)&lt;br /&gt;\n&lt;br /&gt;  &lt;/div&gt;    \n" ;
	sioc:id	"01cbcc6675bdbc6bc2f3c8d0efe043c5" ;
	atom:source	<http://myopenlink.net/dataspace/ondras/weblog/Ondrej%27s%20Weblog> .
@prefix ore:	<http://www.openarchives.org/ore/terms/> .
<http://myopenlink.net/dataspace/ondras/weblog/Ondrej%27s%20Weblog/1639>	ore:isDescribedBy	<http://myopenlink.net/dataspace/ondras/weblog/Ondrej%27s%20Weblog/1639/sioc.rdf> .
@prefix moat:	<http://moat-project.org/ns#> .
ns13:ajax	rdf:type	moat:Tag .
@prefix scot:	<http://scot-project.org/scot/ns#> .
ns13:ajax	rdf:type	scot:Tag .
ns13:json	rdf:type	scot:Tag ,
		moat:Tag .
ns13:oat	rdf:type	scot:Tag ,
		moat:Tag .
ns13:security	rdf:type	scot:Tag ,
		moat:Tag .@prefix rdf:	<http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix ns1:	<http://myopenlink.net/dataspace/ondras#> .
@prefix sioc:	<http://rdfs.org/sioc/ns#> .
ns1:this	rdf:type	sioc:User ;
	sioc:creator_of	<http://myopenlink.net/dataspace/ondras/weblog/Ondrej%27s%20Weblog/1639> .
@prefix ns3:	<http://myopenlink.net/dataspace/person/ondras#> .
@prefix foaf:	<http://xmlns.com/foaf/0.1/> .
ns3:this	rdf:type	foaf:Person .
@prefix rdfs:	<http://www.w3.org/2000/01/rdf-schema#> .
@prefix ns6:	<https://myopenlink.net:4433/dataspace/person/> .
ns3:this	rdfs:seeAlso	ns6:ondras ;
	foaf:made	<http://myopenlink.net/dataspace/ondras/weblog/Ondrej%27s%20Weblog/1639> .
@prefix sioct:	<http://rdfs.org/sioc/types#> .
<http://myopenlink.net/dataspace/ondras/weblog/Ondrej%27s%20Weblog>	rdf:type	sioct:Weblog .
@prefix atom:	<http://atomowl.org/ontologies/atomrdf#> .
<http://myopenlink.net/dataspace/ondras/weblog/Ondrej%27s%20Weblog>	rdf:type	atom:Feed ;
	sioc:container_of	<http://myopenlink.net/dataspace/ondras/weblog/Ondrej%27s%20Weblog/1639> ;
	rdfs:label	"Ondrej Zara's Weblog" ;
	atom:contains	<http://myopenlink.net/dataspace/ondras/weblog/Ondrej%27s%20Weblog/1639> ;
	atom:entry	<http://myopenlink.net/dataspace/ondras/weblog/Ondrej%27s%20Weblog/1639> .
@prefix ns9:	<http://myopenlink.net/dataspace/ondras/weblog/Ondrej%27s%20Weblog/tag/> .
@prefix scot:	<http://scot-project.org/scot/ns#> .
ns9:ajax	rdf:type	scot:Tag .
@prefix moat:	<http://moat-project.org/ns#> .
ns9:ajax	rdf:type	moat:Tag .
@prefix skos:	<http://www.w3.org/2004/02/skos/core#> .
ns9:ajax	skos:isSubjectOf	<http://myopenlink.net/dataspace/ondras/weblog/Ondrej%27s%20Weblog/1639> .
ns9:json	rdf:type	scot:Tag ,
		moat:Tag ;
	skos:isSubjectOf	<http://myopenlink.net/dataspace/ondras/weblog/Ondrej%27s%20Weblog/1639> .
ns9:oat	rdf:type	scot:Tag ,
		moat:Tag ;
	skos:isSubjectOf	<http://myopenlink.net/dataspace/ondras/weblog/Ondrej%27s%20Weblog/1639> .
ns9:security	rdf:type	moat:Tag ,
		scot:Tag ;
	skos:isSubjectOf	<http://myopenlink.net/dataspace/ondras/weblog/Ondrej%27s%20Weblog/1639> .