In tests on 50 popular applications written using Web programming framework Ruby on Rails, the system found 23 previously undiagnosed security flaws, and took no more than 64 seconds to analyse any given programme.
According to researchers from Massachusetts Institute of Technology (MIT) in the US, the new system uses a technique called static analysis which seeks to describe in a very general way how data flows through a programme.
"The classic example of this is if you wanted to do an abstract analysis of a programme that manipulates integers, you might divide the integers into the positive integers, the negative integers, and zero," said Daniel Jackson from MIT.
"The problem with this is that it cannot be completely accurate, because you lose information. If you add a positive and a negative integer, you do not know whether the answer will be positive, negative, or zero," said Jackson.
"Most work on static analysis is focused on trying to make the analysis more scalable and accurate to overcome those sorts of problems," he said.
"The programme under analysis is just huge. Even if you wrote a small program, it sits atop a vast edifice of libraries and plug-ins and frameworks," he said.
"So when you look at something like a Web application written in language like Ruby on Rails, if you try to do a conventional static analysis, you typically find yourself mired in this huge bog. And this makes it really infeasible in practice," he added.
A library is a compendium of code that programmers tend to use over and over again. Rather than rewriting the same functions for each new program, a programmer can just import them from a library, researchers said.
Researchers rewrote those libraries so that the operations defined in them describe their own behavior in a logical language. That turns the Rails interpreter, which converts high-level Rails programs into machine-readable code, into a static-analysis tool.
They identified seven different ways in which Web applications typically control access to data. Some data are publicly available, some are available only to users who are currently logged in, some are private to individual users, some users - administrators - have access to select aspects of everyone's data, and so on.
You’ve reached your limit of {{free_limit}} free articles this month.
Subscribe now for unlimited access.
Already subscribed? Log in
Subscribe to read the full story →
Smart Quarterly
₹900
3 Months
₹300/Month
Smart Essential
₹2,700
1 Year
₹225/Month
Super Saver
₹3,900
2 Years
₹162/Month
Renews automatically, cancel anytime
Here’s what’s included in our digital subscription plans
Exclusive premium stories online
Over 30 premium stories daily, handpicked by our editors


Complimentary Access to The New York Times
News, Games, Cooking, Audio, Wirecutter & The Athletic
Business Standard Epaper
Digital replica of our daily newspaper — with options to read, save, and share


Curated Newsletters
Insights on markets, finance, politics, tech, and more delivered to your inbox
Market Analysis & Investment Insights
In-depth market analysis & insights with access to The Smart Investor


Archives
Repository of articles and publications dating back to 1997
Ad-free Reading
Uninterrupted reading experience with no advertisements


Seamless Access Across All Devices
Access Business Standard across devices — mobile, tablet, or PC, via web or app
