|
When it comes to emerging web technologies, AJAX is
leading the charge as one of the most dynamic tool sets on the
development market. Short for Asynchronous Javascript and XML, AJAX is
attracting the attention of developers and businesses around the
world. Unknown to some, AJAX isn’t a programming technology like HTML
or PHP, yet a collection of technologies that provide a robust facility
for developing powerful web-based applications. The power of AJAX is
seen in many applications today including Google Maps and Yahoo! mail.
What Makes AJAX So Different?
The purpose AJAX is to enhance speed, interactivity and
usability. The combination of technologies provide a more
feature-rich, user-friendly experience. Instead of loading the
requested page at the start of the session, an AJAX engine scripted in
Javascript is loaded. This engine acts a middlemen between the user
and the web page, enabling communication between the client and
server. The end result of this interaction is noticed almost
instantly. When making a request to an AJAX page, you may see
individual elements of the page update before your eyes
(asynchronously) rather than waiting for the page to load completely.
The AJAX Disadvantage
AJAX is a very powerful weapon but one must be aware of
the security vulnerabilities that exist. Some developers have the
misconception that AJAX applications offer tighter security because it
is believed that the server-side script can’t be accessed without the
rendered user interface, which is simply the AJAX-based page.
Unfortunately, this couldn’t be further from the truth. The mere
factor of increased interactivity within the application results in
increased text, XML and HMTL network traffic. This in turn, could lead
to the exposure of back-end applications that may have not vulnerable
otherwise. Without adequate server-side protection, it could also give
unauthenticated users the ability to manipulate privilege
configurations.
Another AJAX vulnerability is associated with the
process it utilizes to formulate server requests. Its engine uses
Javascript to capture user commands and convert them into function
calls. These function calls are transmitted to the server in
plaintext, making them visible to savvy eavesdroppers. This could
allow an intruder to easily access database fields that contain user
login credentials and other critical variables that can be manipulated
for malicious gain. With this information, a hacker can victimize AJAX
functions all without directly creating specific HTTP requests to the
server. Coupled with the known vulnerabilities of Javascript, AJAX
applications are susceptible to attacks like cross site scripting and
similar threats that plague scripts created by other development
technologies.
While the evolution of web technologies has enabled
applications to enjoy more responsive, interactive, efficient
functionality, they also increase the vulnerabilities developers and
businesses face on a daily basis. The growing prevalence of AJAX
applications has considerably broadened the threat window, essentially
giving hackers a greater opportunity to compromise sensitive data and
thieve invaluable assets. For this reason, developers must stop living
under a false sense of security and take every measure possible to
ensure that their AJAX applications are completely secure.
|