Close Menu
    Facebook X (Twitter) Instagram
    SciTechDaily
    • Biology
    • Chemistry
    • Earth
    • Health
    • Physics
    • Science
    • Space
    • Technology
    Facebook X (Twitter) Pinterest YouTube RSS
    SciTechDaily
    Home»Technology»New Debugging Method Finds 23 Undetected Security Flaws in Popular Web Applications
    Technology

    New Debugging Method Finds 23 Undetected Security Flaws in Popular Web Applications

    By Larry Hardesty, Massachusetts Institute of TechnologyApril 18, 20161 Comment4 Mins Read
    Facebook Twitter Pinterest Telegram LinkedIn WhatsApp Email Reddit
    Share
    Facebook Twitter LinkedIn Pinterest Telegram Email Reddit
    New Debugging Method Finds Undetected Security Flaws in Popular Web Applications
    MIT researchers have developed a system that quickly detects security flaws in Ruby on Rails web applications.

    A new debugging system found 23 previously undiagnosed security flaws in 50 popular Web applications, and it took no more than 64 seconds to analyze any given program.

    By exploiting some peculiarities of the popular Web programming framework Ruby on Rails, MIT researchers have developed a system that can quickly comb through tens of thousands of lines of application code to find security flaws.

    In tests on 50 popular Web applications written using Ruby on Rails, the system found 23 previously undiagnosed security flaws, and it took no more than 64 seconds to analyze any given program.

    The researchers will present their results at the International Conference on Software Engineering, in May.

    According to Daniel Jackson, professor in the Department of Electrical Engineering and Computer Science, the new system uses a technique called static analysis, which seeks to describe, in a very general way, how data flows through a program.

    “The classic example of this is if you wanted to do an abstract analysis of a program that manipulates integers, you might divide the integers into the positive integers, the negative integers, and zero,” Jackson explains. The static analysis would then evaluate every operation in the program according to its effect on integers’ signs. Adding two positives yields a positive; adding two negatives yields a negative; multiplying two negatives yields a positive; and so on.

    “The problem with this is that it can’t be completely accurate because you lose information,” Jackson says. “If you add a positive and a negative integer, you don’t know whether the answer will be positive, negative, or zero. Most work on static analysis is focused on trying to make the analysis more scalable and accurate to overcome those sorts of problems.”

    With Web applications, however, the cost of accuracy is prohibitively high, Jackson says. “The program under analysis is just huge,” he says. “Even if you wrote a small program, it sits atop a vast edifice of libraries and plug-ins and frameworks. 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.”

    That vast edifice of libraries, however, also gave Jackson and his former student Joseph Near, who graduated from MIT last spring and is now doing a postdoc at the University of California at Berkeley, a way to make static analysis of programs written in Ruby on Rails practical.

    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.

    Ruby on Rails — or Rails, as it’s called for short — has the peculiarity of defining even its most basic operations in libraries. Every addition, every assignment of a particular value to a variable, imports code from a library.

    Near 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. With Near’s libraries, running a Rails program through the interpreter produces a formal, line-by-line description of how the program handles data.

    In his Ph.D. work, Near used this general machinery to build three different debuggers for Ruby on Rails applications, each requiring different degrees of programmer involvement. The one described in the new paper, which the researchers call Space, evaluates a program’s data access procedures.

    Near 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.

    For each of these data-access patterns, Near developed a simple logical model that describes what operations a user can perform on what data, under what circumstances. From the descriptions generated by the hacked libraries, Space can automatically determine whether the program adheres to those models. If it doesn’t, there’s likely to be a security flaw.

    Using Space does require someone with access to the application code to determine which program variables and functions correspond to which aspects of Near’s models. But that isn’t an onerous requirement: Near was able to map correspondences for all 50 of the applications he evaluated. And that mapping should be even easier for a programmer involved in an application’s development from the outset, rather than coming to it from the outside as Near did.

    Never miss a breakthrough: Join the SciTechDaily newsletter.
    Follow us on Google and Google News.

    Computer Science Computer Technology Engineering MIT Popular Security Software
    Share. Facebook Twitter Pinterest LinkedIn Email Reddit

    Related Articles

    New Platform Analyzes Big Data to Answer Plain-Language Queries in Minutes

    New Technique Illuminates the Inner Workings of AI Systems

    TrueNorth Computer Chip Emulates Human Cognition

    MIT Engineers Create a System That Reallocates Cache Access on the Fly

    MIT Researchers Develop a New Way of Managing Memory on Computer Chips

    New Energy-Friendly Chip Can Perform Powerful AI Tasks

    “Data Science Machine” Replaces Human Intuition with Algorithms

    New Programming System Could Help Prevent Information Leaks

    Mathematical Framework Formalizes Loop Perforation Technique

    1 Comment

    1. Ethan on December 2, 2020 4:58 am

      Indeed, modern business processes and everyday life are increasingly dependent on the use of web applications, in a variety of aspects: from complex infrastructure systems to IoT devices. At the same time, many companies want to automate the process of assigning roles to people. And there is such a system – airSlate – https://www.airslate.com/bot/open-as-role, it can also be used to automatically assign the role of “Client” to the person who opens the contract of sale within the sales workflow.

      Reply
    Leave A Reply Cancel Reply

    • Facebook
    • Twitter
    • Pinterest
    • YouTube

    Don't Miss a Discovery

    Subscribe for the Latest in Science & Tech!

    Trending News

    Even Occasional Binge Drinking May Triple Liver Damage Risk

    Liftoff! NASA’s Artemis II Launch Sends Astronauts Around the Moon for First Time in 50 Years

    Scientists Discover New Way To Eliminate “Zombie Cells” Driving Aging

    This New Quantum Theory Could Change Everything We Know About the Big Bang

    This One Vitamin May Help Protect Your Brain From Dementia Years Later

    Stopping Weight-Loss Drugs Like Ozempic Can Quickly Erase Heart Benefits

    A 500-Million-Year-Old Surprise Is Forcing Scientists to Rethink Spider Evolution

    Coffee and Blood Pressure: What You Need To Know Before Your Next Cup

    Follow SciTechDaily
    • Facebook
    • Twitter
    • YouTube
    • Pinterest
    • Newsletter
    • RSS
    SciTech News
    • Biology News
    • Chemistry News
    • Earth News
    • Health News
    • Physics News
    • Science News
    • Space News
    • Technology News
    Recent Posts
    • Longevity Isn’t Equal: Why Life-Extending Treatments May Be a “Biological Lottery”
    • AI May Soon Detect Cancer Just by Listening to You Speak
    • Your Child’s Clothes Could Contain Toxic Lead, Study Finds
    • Atomic Chains Turn Electric Fields into Measurable Quantum Signals
    • 12,000-Year-Old Native American Dice Rewrite the History of Gambling
    Copyright © 1998 - 2026 SciTechDaily. All Rights Reserved.
    • Science News
    • About
    • Contact
    • Editorial Board
    • Privacy Policy
    • Terms of Use

    Type above and press Enter to search. Press Esc to cancel.