[WEB SECURITY] "AJAX breathes new life into Web apps"
Jeremiah Grossman
jeremiah at whitehatsec.com
Tue May 24 20:36:28 EDT 2005
True enough, as always the mantra remains don't trust user input.
However, what I was trying to describe was...
When normal post data arrives its simple to parse, simple to sanity
check:
foo=1&bar=2&text=testing
After that we're seeing XML arrive in post data. Arguably a bit more
complicated to parse, as well as sanity check (Likely less developers
are properly sanity checking XML):
<data>
<foo id="1">testing1</foo>
<foo id="2">testing2</foo>
<foo id="3">testin3</foo>
</data>
Now some new Ajax applications are sending serialized JS objects
across. The exact reason I don't know (maybe it's eval'ed server-side),
but its much more difficult to parse and sanity check:
new.obj = {
entry: [
{
id: '1',
text: 'testing1'
},
{
id: '2',
text: 'testing2'
},
{
id: '3',
text: 'testing3'
},
],
}
Thats why I was saying that performing sanity checking in the Ajax
space is likely to become increasingly complication. I'm not arguing
that is should, only that is will.
Jeremiah-
On Tuesday, May 24, 2005, at 05:23 PM, Ian Holsman wrote:
> It's the same problem as normal POST applications... nothing's really
> changed with/without ajax.
>
> you shouldn't trust any data coming in from the client.. at the end of
> the day it will be vunerable to the same kind of attacks as typical
> server-side CGIs are.
>
> hopefully people have learned a bit and coded securely, but I doubt it.
>
>
> --Ian
>
> On 5/25/05, Jeremiah Grossman <jeremiah at whitehatsec.com> wrote:
>>
>> On Tuesday, May 24, 2005, at 01:13 PM, Garth Somerville wrote:
>>
>>> Nathan Tobik wrote:
>>>
>>>> I've read a bit about AJAX and it's a pretty cool technology. What
>>>> I'm
>>>> wondering is what are the security implications of using this within
>>>> web
>>>> apps?
>>>>
>>> One issue could be that it may not occur to developers that
>>> asynchronous requests made using xmlHttpRequest need to be validated
>>> on the server.
>>
>> I also expect this type of server-side-validation to become
>> significantly more complex in the Ajax world. At the moment, we're
>> used
>> to dealing with the standard URL encoded query string format going
>> back
>> and forth across the wire. To some extent, XML as well.
>>
>> However, after ripping apart some of the new Ajax applications, I've
>> been witnessing very strange data structures being passed. For
>> example,
>> serialized DOM objects where is looks like big complicated JS array.
>> Who knows how this data being handled on the server. I'm sure others
>> have seen the same.
>>
>> Jeremiah-
>>
---------------------------------------------------------------------
The Web Security Mailing List
http://www.webappsec.org/lists/websecurity/
The Web Security Mailing List Archives
http://www.webappsec.org/lists/websecurity/archive/
More information about the websecurity
mailing list