Mike Shema mshemaqualys.com Security Research Engineer, Qualys - PowerPoint PPT Presentation

1 / 32
About This Presentation
Title:

Mike Shema mshemaqualys.com Security Research Engineer, Qualys

Description:

Redirect to /login.cgi -- server. x.y.72.13 -- /trade.cgi?sid=655321 ... Social networking (e.g. MySpace, Facebook, Orkut)? Media aggregation (e.g. YouTube) ... – PowerPoint PPT presentation

Number of Views:550
Avg rating:3.0/5.0
Slides: 33
Provided by: cat148
Category:

less

Transcript and Presenter's Notes

Title: Mike Shema mshemaqualys.com Security Research Engineer, Qualys


1
Mike Shema Security Research
Engineer, Qualys
Web Browser Insecurity
March 25th, 2009
2
Web Security
  • Web application (in)security continues to grow.
  • Web-related vulnerabilities pop up on Bugtraq
    daily. (http//www.securityfocus.com/bid/)?
  • Web-related attacks are large and expensive to
    investigate, react, and resolve.
  • Web security becomes a requirement of PCI in
    2008.
  • Common focus on threats to web applications.
  • OWASP Top 10
  • WASC Threat Classification
  • What is a web application attack?
  • SQL injection, cross site scripting, request a
    link, deliver some HTML, visit a web page, post a
    comment

3
Web Security
  • Web security expands its grasp
  • Attackers target large properties.
  • Researchers target application engines.
  • Exploits target browsers.
  • XSS remains a significant problem.
  • Original CERT advisory February 2000
  • http//www.cert.org/advisories/CA-2000-02.html
  • USENET references to malicious html and
    malicious javascript as far back as 1996
  • comp.security.unix post on March 1996
    http//tinyurl.com/2s593m
  • Entertaining discussion of JavaScript
    http//tinyurl.com/2g2476

4
Description of XSS, June 1996
  • Another 'application' of JavaScript is to poke
    holes in Netscape's
  • security. To anyone using old versions of
    Netscape before 2.01
  • (including the beta versions) you can be at risk
    to malicious
  • Javascript pages which can
  • a) nick your history
  • b) nick your email address
  • c) download malicious files into your
    cache and run them
  • (although you need to be coerced
    into pressing the
  • button)
  • d) examine your filetree.
  • comp.sys.acorn.misc, http//tinyurl.com/2g2476

5
Description of XSS, OWASP Top 10 2007
  • Cross site scripting, better known as XSS, is in
    fact a subset of HTML injection. XSS is the most
    prevalent and pernicious web application security
    issue. XSS flaws occur whenever an application
    takes data that originated from a user and sends
    it to a web browser without first validating or
    encoding that content.
  • XSS allows attackers to execute script in the
    victims browser, which can hijack user sessions,
    deface web sites, insert hostile content, conduct
    phishing attacks, and take over the users
    browser using scripting malware. The malicious
    script is usually JavaScript, but any scripting
    language supported by the victims browser is a
    potential target for this attack.
  • http//www.owasp.org/index.php/Top_10_2007-A1

6
Web Security
  • Reported web server vulnerabilities have
    decreased.
  • IIS 6.0 released April 2003
  • MS06-034 (specially-crafted ASP file could cause
    buffer overflow)
  • No resurgence of Code Red or Nimda style
    vulnerabilities
  • Apache 2.0.45 (March 2003) to Apache 2.0.63
    (January 2008)
  • 40 security bugs according to changelog
  • 24 specific to core or mod_ssl
  • Apache 2.2.0 (November 2005) to Apache 2.2.8
    (January 2008)
  • 13 security bugs according to changelog
  • 2 specific to core or mod_ssl
  • And the number of servers continuesto grow
    significantly.

7
Web Security
  • Reported browser vulnerabilities remain high.
  • FireFox 2.0.0.1 (2006) to 2.0.0.14 (April 2008)
  • 64 security bugs according to MFSA bulletins
  • 22 rated critical
  • FireFox 1.5 (2006) to 1.5.0.12 (2007)
  • 83 security bugs according to MFSA bulletins
  • 44 rated critical
  • No longer supported
  • IE 6.0, 7.0
  • Most recent patch April 8, 2008
  • Safari 3
  • Most recent patch April 2008
  • Vulnerabilities in plugins crop up on a monthly
    basis
  • Quicktime, Flash, Acrobat, ActiveX, Java

8
Desktop Browser Security
  • Desktop applications moving to the web faster
    than desktop security.
  • Strong bulwarks between the browser and the
    filesystem.
  • Same Origin Rule intended to separate data access
    within the browser.
  • Code within a domain is executed with the
    assumption of trust.
  • Browsers present forensic challenges.
  • Much easier to write HTML JavaScript than to
    craft a reliable buffer overflow.

9
A Brief History of Desktop Security
  • User and file privileges
  • Event logging
  • Signature-based virus detection
  • Host-based firewall
  • Behavioral-based virus detection
  • Host-based intrusion detection system
  • NAC / NAP (dont let the device onto the network
    unless its secure)

10
A Brief History of Browser Security
  • Same Origin Rule
  • First CERT advisory March 1996 (http//www.cert.or
    g/advisories/CA-1996-05.html)
  • Restrict Java applet access to the localhost
  • Block access to specific ports (some browsers)
  • because of security concerns
  • Block pop-ups
  • because of obnoxious advertising
  • Block third-party cookies
  • because of advertising and privacy concerns
  • Block web bugs (1x1 images, etc.)
  • because of advertising and privacy concerns
  • Compare URLs with known phishing sites
  • Send your complete browsing behavior to a
    third-partyraises privacy concerns
  • Security plugins (NoScript, etc.)

11
Threats Evolve
  • Financial motivation
  • More information with value
  • Game accounts, Ebay accounts, bank accounts
  • Infect rather than deface
  • Add malicious content to a site to spread
    compromise to visitors of the site
    (http//isc.sans.org/diary.html?storyid2166)?
  • Defacement detected quickly, infection detected
    slowly
  • Increased potential for targeted attacks
  • Exploit a victims social network
  • Exploit a sites business logic
  • Exploit the trust between the server and browser
  • Thrive on the increase in user-generated content

12
Attacks Adapt
  • Bring the exploit to victim rather than bring the
    victim to the exploit.
  • Web 2.0 More business logic and capabilities
    moved to the web browser.
  • Consolidation of personal, business, or financial
    data into a web application.
  • Social networking as an enabler for non-technical
    attacks.
  • ID theft, bullying, fraud, graft, libel
  • Target the web browser
  • Cross-platform uniform exploit environment

13
Site Infection
  • Insert malicious content into a web page
  • Less likely to be noticed than a defacement
  • Each visitor to the site is a potential victim
  • Malicious JavaScript
  • Programming language executed in the browser
  • Ability to modify, add, and monitor browser
    properties and events.
  • An HTML injection flaw can lead to significant
    compromises of the user.
  • Malicious JavaScript is not inhibited by the Same
    Origin Rule -- its already on the origin!

14
Persistent Browser Problems
  • Assumption of trust in HTML and JavaScript (no
    signed content)?
  • SSL enables trust of identity, but not content
    (or intent).
  • No separation of UI generation and data
    manipulation
  • JavaScript can affect all aspects of DOM
  • Leads to exploits like XSS, phishing, social
    engineering
  • Coarse data access controls (yes/no)
  • Few restrictions on pulling together inter-domain
    content, no trusted peers for a domain.
  • Some exceptions for images and cookies, due to
    spam and advertisers
  • DNS load balancing, third-party content servers,
    open nature of the web make this an extremely
    difficult problem.

15
Browser Engine Attack Techniques
  • Same Origin Defeat
  • Break the domain access restrictions
  • HTML parsing idiosyncrasy
  • E.g. SAMY, Firefox unclosed
  • DOM injection
  • Create, modify, delete elements
  • e.g. create elements to determine live
    hosts/ports, modify event handlers to insert
    keylogger
  • Namespace infection
  • Inject JavaScript into the page, unaffected by
    SOR
  • e.g. modify serialized values, affect application
    logic

16
Browser Engine Attack Techniques (contd)
  • Browser instrumentation (Cross-Site Request
    Forgery)
  • Inject HTML or JavaScript that conducts
    pre-packaged requests to a third party.
  • Doesnt have to bypass SOR
  • Information leakage via inference
  • Timing (e.g. DNS resolution, response time for
    elements to determine live hosts/ports)
  • Content inspection (e.g. access font colors to
    determine browser history)
  • Ambiguous content-type
  • JavaScript inside PDF, file metadata
  • Insecure plug-in
  • Buffer overflow
  • Uninitialized variables in Flash applications.
    (http//tinyurl.com/6bbh2h)

17
What do these attacks look like?
  • Review some examples to see where vulnerabilities
    exist and how they are exploited.

18
Recent Examples
  • Graft Gullibility
  • How to collect usernames and passwords.
  • CERT advisory on social engineering in April 1991
  • http//www.cert.org/advisories/CA-1991-04.html

19
Recent Examples
  • Hacking Happiness
  • One password to rule them all
  • Poor separation of duties
  • Lack of rate limiting
  • http//tinyurl.com/9f7ata

20
Recent Examples
  • Session Fixation Stock Inflation
  • Buy stocks using someone elses account.

21
Session Fixation CSRF
  • Victim receives an e-mail with a legitimate link
    to the trading site https//site/login.cgi?sid65
    531
  • x.y.72.13 -- /trade.cgi?sid655321shares1000st
    ockFOO
  • Redirect to /login.cgi
  • x.y.72.13 -- /trade.cgi?sid655321shares1000st
    ockFOO
  • Redirect to /login.cgi
  • x.y.72.13 -- /trade.cgi?sid655321shares1000st
    ockFOO
  • Redirect to /login.cgi
  • a.b.101.92 -- /login.cgi?sid655321
  • Redirect to /welcome.cgi?sid655321
  • x.y.72.13 -- /trade.cgi?sid655321shares1000st
    ockFOO
  • Trade executed

Session ID 655321
Unauthenticated
Unauthenticated
Unauthenticated
Authenticated
Authenticated
22
Wildly Different Vulnerabilities
  • Greed
  • Session fixation
  • Cross-site request forgery
  • Lack of input validation
  • Manipulation of business logic
  • Data fingerprints
  • Insufficient anonymity

23
Where Are The Worms?
  • Persistent transmission nodes
  • Social networking (e.g. MySpace, Facebook,
    Orkut)?
  • Media aggregation (e.g. YouTube)?
  • User-generated content (e.g. Wikipedia, blogs)?
  • Demonstrated transmission techniques
  • Browser exploit (buffer overflow)?
  • Malicious JavaScript in payload
  • Malicious JavaScript hosted on drop site
  • Semi-persistent carriers
  • Active while the browser is open

24
Where Are The Worms?
  • Attacks like Nimda, Code Red or SQL Slammer
    havent been repeated in a while.
  • Inefficient in terms of time and benefit for a
    financial purpose.
  • Noisy, detected quickly
  • Exploit preferences seem to fall to the lowest
    common denominator.
  • Financially successful attacks dont require
    sophistication.
  • Infecting a single popular, trusted site with XSS
    (or a virus, etc.) ensures that the payload will
    spread to many victims.

25
May Be More Likely To See
  • Thick-client bots
  • Anti-analysis
  • JavaScript obfuscation
  • De-obfuscation traps
  • Anti-detection
  • Detect browsers vs. automated tools
  • Geo-based content
  • Identify browsers in virtualized systems (e.g.
    HoneyMonkey project)

26
Proactive Countermeasures
  • Prevent the initial compromise
  • Web application hardening
  • Prevent unexpected HTML injection
  • Identify areas where user-generated content is
    permitted
  • Pre-inspect content
  • Quarantine content
  • Enforce content-type and character set
    interpretation
  • Continuous monitoring of the site for infection.
  • Minimize the potential for the application to be
    used as a distribution point for malicious content

27
Reactive Countermeasures
  • Proxies
  • Centralizes access control to web sites
  • Access logs may be able to identify compromised
    browsers or browsers that have navigated to sites
    that are known to have malicious content
  • Attacks might still be able to hide within SSL
    connections

28
Countermeasures in the Browser
  • Browser anti-virus
  • Current A/V only detects a subset of known
    Trojans, exploits
  • Anti-Spyware and -malware solutions focus on
    requests to blacklisted domains or content
    signatures
  • With the exception of HIDS, these rely on
    blacklists and signatures.
  • An HTML or JavaScript payload can be written in
    many different ways.
  • DOM access and prompts for information (e.g.
    password, credit card number) are not inherently
    malicious.
  • Signatures and blacklists are a reactive measure.
  • Disable or restrict capabilities
  • Firefox NoScript

29
Upcoming Areas of Interest
  • The uneasy relationship between web application
    capabilities and browser security ensures a
    profitable future.
  • HTML5 Client-side database storage
  • More user-data accessible to malicious scripts,
    XSS, CSRF
  • HTML5 Cross-document messaging
  • Intentional relaxation of the Same Origin Rule
  • IE8 XDomainRequest()
  • Asynchronous cross-domain requests
  • The network becomes the computer (again)
  • Vulnerabilities without borders

30
Summary
  • The web browser continues to bear more and more
    functionality that used to be relegated to
    desktop applications -- but the browser security
    model hasnt kept pace.
  • Attackers placing more focus on compromising
    trusted sites rather than lure victims to fake
    sites.
  • Social networking, Web 2.0, and similar concepts
    place more and more personal data only a browser
    request away.

31
  • Thank you!

32
Questions
  • ?
Write a Comment
User Comments (0)
About PowerShow.com