Movatterモバイル変換


[0]ホーム

URL:


Sign in / up
The Register

Channel

This article is more than1 year old

Rich data: the dark side to Web 2.0 applications

With great programming comes great responsibility

iconJeff Williams
Fri 1 Aug 2008 //15:02 UTC

All web applications allow some form of rich data, but that rich data has become a key part of Web 2.0. Data is "rich" if it allows markup, special characters, images, formatting, and other complex syntax. This richness allows users create new and innovative content and services.

Unfortunately, richness affords attackers an unprecedented opportunity to bury attacks targeting users and systems downstream of the offending application or service supplier.

Even in the early days of Web 2.0, this is a huge problem: at least half the vulnerabilities that plague web applications and web services involve some form of injection.

The software industry already has a poor reputation for delivering software that doesn't work or contains security holes. Imagine how bad things will get in a world where people pick up vulnerabilities and hacks by connecting to dynamic web sites and "mashing up" applications.

Here are some things to bear in mind, to protect both your reputation and your users' systems and data.

Unscramble the egg

One of the oldest security principles in the book is you should alwayskeep code and data separate. Once you mix them together, it's almost impossible separate them again. Unfortunately, most of the data formats and protocols we're using today mixing code and data like a bad DJ hashing up a cross fade. That's why injection is going to be with us for a long time.

HTML is one of the worst offenders. JavaScript code can be placed in a huge number of places with dozens of different forms and encodings - see theXSS cheatsheet for some examples. HTML allows JavaScript in the header, body, dozens of event handlers, links, CSS definitions, and style attributes.

There's no simple validation that can detect all the variants of code in all these places. However, you have to have afull security parser to validate HTML data before you can use it.

Untrusted data is code

Almost everything connected to the internet will execute data if an attacker buries the right kind of code in it. The code might be JavaScript, VB, SQL, LDAP, XPath, shell script, machine code or a hundred others depending on where that data goes.

SQL injection is just an attacker sneaking malicious SQL inside user inputs that gets concatenated into a query. Injected code isn't just a snippet anymore - it might be a huge program.

What's important to remember is that every piece of untrusted data - every form field, every URL parameter, every cookie, and every XML parameter - might contain injected code for some downstream system. If you're not absolutely sure there is no code in the data - and that's pretty much impossible - then for all you know, that data is really a little program. There is no such thing as plain old "data" anymore.

Page:

More about

More like these

More about


COMMENTS

More about

More like these

TIP US OFF

Send us news


Other stories you might like

Vulnerability scores, huh, what are they good for? Almost nothing

CVE and CVSS systems suffer from misaligned incentives and inconsistency
Security16 Oct 2025 |5

'Highly sophisticated' government goons hacked F5, stole source code and undisclosed bug details

And they swiped a limited amount of customers' config data
Cybersecurity Month15 Oct 2025 |25

Leak suggests US government is fibbing over FEMA security failings

Infosec in brief Plus, PAN under attack, IT whistleblowers get a payout, and China kills online scammers
Cybersecurity Month6 Oct 2025 |27

Built for what's next: Arm's advantage in the AI PC era

When considering your upgrade for Windows 11, it’s time to look at Arm vs x86 - It's an upgrade to improved efficiency, performance, and battery life.
Sponsored Feature

Microsoft kills 9.9-rated ASP.NET Core bug – 'our highest ever' score

Flaw in Kestrel web server allowed request smuggling, impact depends on hosting setup and application code
Security16 Oct 2025 |3

Frightful Patch Tuesday gives admins a scare with 175+ Microsoft CVEs, 3 under attack

Plus: Adobe, SAP, Ivanti offer treats, not tricks
Cybersecurity Month14 Oct 2025 |21

Android 'Pixnapping' attack can capture app data like 2FA codes

GPU-based timing attack inspired by decade-old iframe technique
Cybersecurity Month13 Oct 2025 |8

Google declares AI bug hunting season open, sets a $30K max reward

Jailbreaks, direct prompt injection not allowed
Cybersecurity Month7 Oct 2025 |1

CISA exec blames nation-state hackers and Democrats for putting America's critical systems at risk

Federal agencies have seven days to patch F5 products
Cybersecurity Month15 Oct 2025 |19

American Airlines subsidiary Envoy caught in Clop's Oracle EBS raid

Not a good week for Big Red
Cybersecurity Month17 Oct 2025 |3

'Fax virus' panicked a manager and sparked job-killing Reply-All incident

On Call The 1990s called with a reminder that in the time before ransomware, infosec panics could be quite quaint
Networks17 Oct 2025 |147

Chinese phishing kit helps scammers who send fake texts impersonate TikTok, Coinbase, others

Exclusive Researchers tracking 2,158 domains hosting YYlaiyu phishing pages
Cybersecurity Month10 Oct 2025 |3

[8]ページ先頭

©2009-2025 Movatter.jp