SlideShare une entreprise Scribd logo
1  sur  65
.Net Havoc
Abusing ASP.net Mechanics &
Overriding Properties of ServerSide Web Controls

Shay Chen, CTO
Hacktics ASC, Ernst & Young
September 12th, 2013

Page 1
About
► Formerly

a boutique company that provided
information security services since 2004.
► As of 01/01/2011, Ernst & Young acquired
Hacktics professional services practice, and
the group joined EY as one of the firm’s
advanced security centers (ASC).

Page 2
Abusing ASP.net Mechanics
Identify
Hidden
Server
Controls

Web
Control
Event
Execution

Cached
Viewstate /
Validation
Mining

Enumerate
Control
Type

Inject /
Override
Control
Properties
Introducing

SCIP!
Server Control Invisibility Purge

A project based on a research by Niv Sela and Shay Chen,
ZAP Extension Implementation by Alex Mor.
Property Injection / Property Override
► Fingerprint

visible & hidden control types
► Override server side control properties
► Access additional data sources in the
backend databases and systems
► Execute application attacks while
bypassing ASP.net security mechanisms

Page 5
Event Execution Exploits (EodSec)
► Elevate

privileges by executing
controls/events of high-privileged users
► Exploit vulnerable code stored in dormant
events
► Corrupt the application data
► Exceed logical restrictions
► Etc

Page 6
Risk Factors
► Hidden

Server Control Identification
► Server Control Type Fingerprinting
► Server Control Property Manipulation
► Server Control Property Injection
► Execution of Dormant Server Controls
► Cached Viewstate Reuse

Page 7
The Attack Surface of
ASP.net / Mono
Security Features in ASP.net/Mono
► Event

Validation
► Digital Signatures / MAC
►

Limit to List, Manipulation Prevention

► Security

Filter (XSS)
► Sandbox
► Built-in Regular Expressions
► Etc

Page 9
Attack Surface Analysis: Entry Points
► Purpose:
►
►
►

►
►

Locating Code to Abuse

Web Pages
Web Service Methods
Global Modules (Filters, Handlers, Etc)
…
*Events of Server Web Controls*

Page 10
Server-Side Web Controls
►
►
►

Rendered into HTML/JS code
Include server side implementation
Core Controls and Custom Controls (e.g. ascx)

Page 11
Server-Side Control Events
►

►

►

A triggered server-side code segment, containing
optional functionality (PostBack/CallBack in ASP.Net)
Client triggering mechanism rely on EVENTTARGET,
EVENTARGUMENT and VIEWSTATE
Sample Server Side Implementation (C#, ASP.Net):
►

aspx:

►

.aspx.cs:

Page 12
Client-Side Implementation of Events
►

Sample client-side implementation (ASP.Net
postback):

Page 13
The Structure of the Viewstate Field
►

Viewstate HTML Structure:

►
►

Serialized into Base64*
Signed (MAC), clear-text or
encrypted

Page 14
Event Validation Drill Down
Independent Events (e.g. buttons with
usesubmitbehavior=false, etc)
► Programmatic vs. Declarative
►

Page 15
The Event Validation Mechanism
►

Name/Value HashCode Formula

if ([ControlValue] == null)
return GetStringHashCode([ControlName]);
else
return GetStringHashCode([ControlName]) ^ GetStringHashCode([ControlValue]);
The EventValidation Field

►
<-Viewstate
Hashcode

►

<-Control
Hashcodes

►
►

MachineKey and MAC
Control Name/Value
Verification, Prior to Event
Execution
Include viewstate hashcode
Included in the HTML:

Page 16
Evidence of Hidden Controls & Type
►

►

Visible/Enabled Controls:

EventValidation
(Viewstate Decoder):

Invisible / Disabled Controls (Properties in Viewstate):
EventValidation
(Viewstate Decoder):

Page 17
Server Controls / Props:
Application Building
Blocks
Fingerprinting Server Controls
►

Control Viewstate Presence
►
►
►

►

Collection of Properties for Each Control
Boolean, Numeric, Text, etc
Properties reloaded from the viewstate

Rule of Thumb – Properties in Viewstate
►
►

Programmatic value manipulation
Significant In-Design Modifications

Page 19
Mapping Viewstate Reloaded Props

Page 20
Demo I:
Altering Server Side
Boolean Properties
Demo II:
Override the GridView
sqlDataSource and key
fields
Demo III:
Executing Application
Attacks via Viewstate
Overriding Control Properties
►

Reusing Valid Viewstates
►
►
►

►

MAC Compatibility
Mining Sources
Structure Similarity

Reconstructing Unsigned Viewstates
►
►

Structure and Order of Properties
Insertion of Value Pair Blocks

Page 24
Hidden Web Controls:
Archetypes
Dormant Server Web Controls, 1 of 3
►

Commented Out Controls
►
►

Commented out using HTML comments (<!-- -->)
Rendered inside an HTML comment, but the server
code is still active.

Page 26
Dormant Server Web Controls, 2 of 3
►

Disabled Controls
►
►
►

The control enabled property is set to false (Server)
Rendered with the disabled="disabled" HTML property
Rendered without an input postback method

Page 27
Dormant Server Web Controls, 3 of 3
►

Invisible Controls
►
►

The control visible property is set to false
Not rendered in the presentation layer, but the code is
still active

Page 28
Dormant Events of Web Controls
► Dormant
►

►

Events of Visible Controls

Declarative: Optional events of controls with
multiple events
Programmatic: Optional event listeners
registered in the code level for controls with at
least one active event

Page 29
Dormant & Invisible
Control Execution
Commented Control Event Execution
►

Prerequisites (ASP.Net) - Commented Out Controls:
►
►

►

Process
►

►

Comment server control using HTML comments
Event code does not include privilege validation

“uncomment” the HTML control and execute the event, or
send the appropriate values directly.

Advantages
►

Exploit works despite the Viewstate MAC AND
EventValidation.
Page 31
Commented Control Execution, Cont.

Page 32
Commented Control Execution, Cont.

Page 33
Disabled Control Event Execution
►

Prerequisites (ASP.Net / Mono) - Disabled Controls:
►
►

►

Process
►

►

►

The control “enabled” server property is set to FALSE
Event code does not include privilege validation

ASP.Net/Mono: Forge a postback / callback call, or send the
appropriate values directly.
Mono: delete the viewstate (!)

Advantages
►

Exploit works despite an active Viewstate MAC AND
EventValidation.
Page 34
Forging a Disabled Control Event
►
►

Forging a PostBack / CallBack Method Call
Why does it work?
►
►

►

ASP.Net: Temporarily disabled controls are a feature
Mono: EventValidation’ Viewstate hash-code issue

How does it work?
►

The control name is exposed in the disabled control

►

Use an interception proxy to “inject” postback calls into
HTML control events, or craft requests manually.

Page 35
Disabled Control Execution, Cont.

Page 36
Invisible Control Event Execution 1/4
►

Prerequisites (ASP.Net / Mono) - Invisible Controls:
►

(I) Either the ViewstateMAC OR the EventValidation features
must be turned off

►

(II) The control “visible” server property is set to FALSE
(III) Event code does not include privilege validation

►

Page 37
Invisible Control Event Execution 2/4
►

EventValidation is OFF
►

No event validation = ANY event can be executed,
regardless of MAC

<%@ Page Language="C#" AutoEventWireup="true"
EnableEventValidation=“false" EnableViewStateMac=“true“ …%>

►

Process
►
►

Craft a request with valid EVENTTARGET value OR
Inject a custom Postback/Callback call to the response
HTML, and target the event of the invisible control

Page 38
Invisible Control Event Execution 3/4
►

EventValidation is ON , Viewstate MAC is OFF
►

Forge valid viewstate / eventvalidation fields (no MAC)

<%@ Page Language="C#" AutoEventWireup="true"
EnableEventValidation="true" EnableViewStateMac=“false“ …%>

►

Process
►

Craft a request using SCIP or other eventvalidation editors

Page 39
Invisible Control Event Execution 4/4
►

Hashcode Generation

Page 40
Error-Based Control Enumeration
►
►

Accessing invalid control names will NOT raise exceptions
Accessing protected will - if the EventValidation is ON

Page 41
Blind Control Enumeration
►

Basic Blind Differentiation Formula:
ValidControlEvent = False;
OriginalResponse = getResponse(“Page1.aspx?param=value”);
VerificationResponse = getResponse(“Page1.aspx?param=value”);
ConfirmationResponse = getResponse(“Page1.aspx?param=value”);
InconsistentContent = VerificationResponse - ReflectedValues TimestampTokens;
ClearResponse = OriginalRespone - ReflectedValues InconsistentContent - TimestampTokens;
EventExecResponse =
getResponse(“Page1.aspx?param=value&EVENTTARGET=…”);
EventExecResponse = OriginalRespone - ReflectedValues InconsistentContent - TimestampTokens;
If (Diff (ClearResponse, EventExecResponse ) > 0) ValidControlEvent = True;

Page 42
Control Naming Conventions
►

Default: [ControlType][Number]
►

►

Default II (v1.1-v3.5/Master): ctl[ID]$[contentScope]$...
►

►

txtUsername, txtPassword, btnSubmit, cmdAddUser …

Plain: [Logic]
►

►

txt1, txt2, btn1, btn2, cmd1, cmd2, lst1, lst2 …

Custom Legacy: [ControlTypeShortCut][Logic]
►

►

ctl00$MainContent$txtName, ctl00$Content$cmdSubmit

Legacy: [ControlTypeShortCut][Number]
►

►

Button1, Button2, TextBox1, TextBox2 …

user, pass, submit, delete

Title Match: [Title]
►

Username, Password, Origin, Email, Update

Page 43
Hidden/Optional Event Execution 1/2
►

Prerequisites – Multiple Dormant Events of Controls:
►
►

►

Process:
►

►

►

Control assigned with multiple events.
(Calendar control, Custom Controls, etc)
Fuzz the eventargument field, in addition to eventtarget
Eventargument variation can execute different server
events (for example - V[value] vs. [value])

Advanced:
►

►

Core Events vs. Custom Events
Example:
Click, Command, onSelectionChanged, OnVisibleMonthCha
nged, Etc
Page 44
Hidden/Optional Event Execution 2/2

Page 45
Invisible Control Execution, Cont.

Page 46
Invisible Control Execution, Cont.

Page 47
Invisible Control Execution, Cont.

Page 48
Advanced Event
Execution Methods

Executing Events of Invisible Controls
DESPITE
EventValidation and Viewstate MAC
Missing CallBack Code Validation
►

Prerequisites – Improper CallBack Implementation
►
►

►

Process:
►

►

Event validation not performed manually in CallBack code
Relies on the CALLBACKID and CALLBACKPARAM

Ignore Event Validation when Forging Event Call

Advantage:
►

Works despite of Viewstate MAC & EventValidation.
Page 50
Mining Cached Viewstate Values 1/2
►

Prerequisites – Reusing Signed Cached Values
►

►

Obtain control names from cached / indexed content: search
engines, proxies, browser cache of privileged users

Process:
►

Reuse the cached VIEWSTATE, EVENTTARGET,
EVENTARGUMENT and EVENTVALIDATION
Page 51
Mining Cached Viewstate Values 2/2
►

Advantages
►

►

Exploit works DESPITE the Viewstate MAC AND
EventValidation

Shared Hosting Attack Model:
►
►

Can bypass Viewstate MAC and EventValidation
Scenarios for Shared / Isolated Application Pool
Page 52
Risk Mitigation
Secure Coding Guidelines
Preventing Event Execution & Property Override
►
►
►

►
►
►
►

►

Do NOT use the Disabled property for security purposes
Do NOT rely on HTML comments to hide controls
Remove unnecessary dormant events from all layers:
HTML, Design (e.g. aspx), CodeBehind (e.g. aspx.cs)
Implement code-level privilege validation in each event
Enforce digital signatures (Viewstate MAC)
Activate event validation mechanisms (EventValidation)
Disable cache / Prevent indexing in pages with sensitive
controls!
Customize the platform error messages
Page 54
Event Level Privilege Validation
►

Explicit Privilege Validation in Event Code
protected void Button1_Click(object sender, EventArgs e)
{
if (((String)Session["user"]).Equals("admin"))
{
...
}
}

►

Enable Event Validation / MAC
<%@ Page Language="C#" AutoEventWireup="true"
EnableEventValidation="true" EnableViewStateMac="true“ …%>

Page 55
Disable Cache & Prevent Indexing
►

Disable Browser/Proxy Cache (Sample Code)

HttpContext.Current.Response.Cache.SetExpires(DateTime.UtcNow.AddDays(-1));
HttpContext.Current.Response.Cache.SetValidUntilExpires(false);
HttpContext.Current.Response.Cache.SetRevalidation(HttpCacheRevalidation.AllCaches);
HttpContext.Current.Response.Cache.SetCacheability(HttpCacheability.NoCache);
HttpContext.Current.Response.Cache.SetNoStore();

►

Restrict SE access in robots.txt (Sample Config)
►

http://www.robotstxt.org/robotstxt.html

User-agent: *
Disallow: /

►

Restrict SE caching/crawling via meta tags
►

http://www.robotstxt.org/meta.html
Page 56
Summary
Dormant Control Execution Summary
Control / Event
Type

ONLY
Event
Validation
Is ON

ONLY
Event
Viewstate MAC Validation AND
is ON
Viewstate MAC
are ON

Commented

Disabled
Invisible
Optional

Page 58
Advanced Invisible Control Execution
►

Execute Control Events DESPITE MAC/Validation
►

►
►

Reuse cached / indexed ViewState and EventValidation
fields of the same Page
Abuse insecure callback implementations
Abuse MachineKey in Shared Hosting Model

Page 59
The RIA SCIP Project
►
►
►
►

Homepage: http://code.google.com/p/ria-scip/
OWASP ZAP extension (v2.0+), requires Java 1.7
Included in ZAP’s Marketplace
Currently focused at ASP.net

Page 60
Activating SCIP in ZAP
The RIA SCIP Project, Cont.
►

Current Features
►
►
►
►

►
►

►

►

Passively identifies traces of Invisible Controls
Error-based invisible control name enumeration
Blind-based invisible control name enumeration (NEW!)
Disabled/commented control event execution
Invisible control event execution
Viewstate manipulation for manual parameter tampering,
when MAC is OFF (NEW!), Control Injection Templates
Manual execution of target events

Upcoming Features
►
►

Cached viewstate scraping / comparison / reuse (déjà vu)
Control type fingerprinting & exploitation
Page 62
Additional Resources
►

►

►
►

déjà vu (cache analysis) ZAP Extension:
https://github.com/hacktics/deja-vu
Woanware Viewstate Hacker:
http://www.woanware.co.uk/application/viewstatehack
er.html
OWASP ZAP: https://code.google.com/p/zaproxy/
James Jardine blog posts:
http://www.jardinesoftware.net/

Page 63
EY Advanced Security Centers
•

Americas
•
•
•
•

•

EMEIA
•
•

•

Hacktics IL
Houston
New York
Buenos Aires
Dublin
Barcelona

Asia Pacific
•
•

Singapore
Melbourne
Questions?
Shay Chen (@sectooladdict)
Niv Sela (@nivselatwit)
Alex Mor (@nashcontrol)

Contenu connexe

En vedette

44CON 2014 - Flushing Away Preconceptions of Risk, Thom Langford
44CON 2014 - Flushing Away Preconceptions of Risk, Thom Langford44CON 2014 - Flushing Away Preconceptions of Risk, Thom Langford
44CON 2014 - Flushing Away Preconceptions of Risk, Thom Langford44CON
 
44CON London 2015 - Hunting Asynchronous Vulnerabilities
44CON London 2015 - Hunting Asynchronous Vulnerabilities44CON London 2015 - Hunting Asynchronous Vulnerabilities
44CON London 2015 - Hunting Asynchronous Vulnerabilities44CON
 
44CON 2014 - Researching Android Device Security with the Help of a Droid Arm...
44CON 2014 - Researching Android Device Security with the Help of a Droid Arm...44CON 2014 - Researching Android Device Security with the Help of a Droid Arm...
44CON 2014 - Researching Android Device Security with the Help of a Droid Arm...44CON
 
44CON London 2015 - Reverse engineering and exploiting font rasterizers: the ...
44CON London 2015 - Reverse engineering and exploiting font rasterizers: the ...44CON London 2015 - Reverse engineering and exploiting font rasterizers: the ...
44CON London 2015 - Reverse engineering and exploiting font rasterizers: the ...44CON
 
44CON 2014 - Advanced Excel Hacking, Didier Stevens
44CON 2014 - Advanced Excel Hacking, Didier Stevens44CON 2014 - Advanced Excel Hacking, Didier Stevens
44CON 2014 - Advanced Excel Hacking, Didier Stevens44CON
 
44CON 2014 - Switches Get Stitches, Eireann Leverett & Matt Erasmus
44CON 2014 - Switches Get Stitches,  Eireann Leverett & Matt Erasmus44CON 2014 - Switches Get Stitches,  Eireann Leverett & Matt Erasmus
44CON 2014 - Switches Get Stitches, Eireann Leverett & Matt Erasmus44CON
 
44CON 2014 - I Hunt TR-069 Admins: Pwning ISPs Like a Boss, Shahar Tal
44CON 2014 - I Hunt TR-069 Admins: Pwning ISPs Like a Boss, Shahar Tal44CON 2014 - I Hunt TR-069 Admins: Pwning ISPs Like a Boss, Shahar Tal
44CON 2014 - I Hunt TR-069 Admins: Pwning ISPs Like a Boss, Shahar Tal44CON
 
44CON London 2015 - Playing with Fire: Attacking the FireEye MPS
44CON London 2015 - Playing with Fire: Attacking the FireEye MPS44CON London 2015 - Playing with Fire: Attacking the FireEye MPS
44CON London 2015 - Playing with Fire: Attacking the FireEye MPS44CON
 
44CON 2014 - I gave a talk about robots and hardware!, Josh Thomas
44CON 2014 - I gave a talk about robots and hardware!, Josh Thomas44CON 2014 - I gave a talk about robots and hardware!, Josh Thomas
44CON 2014 - I gave a talk about robots and hardware!, Josh Thomas44CON
 
44CON 2014 - Simple Hardware Sidechannel Attacks for 10 GBP or Less, Joe Fitz...
44CON 2014 - Simple Hardware Sidechannel Attacks for 10 GBP or Less, Joe Fitz...44CON 2014 - Simple Hardware Sidechannel Attacks for 10 GBP or Less, Joe Fitz...
44CON 2014 - Simple Hardware Sidechannel Attacks for 10 GBP or Less, Joe Fitz...44CON
 
44CON London 2015 - Inside Terracotta VPN
44CON London 2015 - Inside Terracotta VPN44CON London 2015 - Inside Terracotta VPN
44CON London 2015 - Inside Terracotta VPN44CON
 
44CON 2014 - GreedyBTS: Hacking Adventures in GSM, Hacker Fantastic
44CON 2014 - GreedyBTS: Hacking Adventures in GSM, Hacker Fantastic44CON 2014 - GreedyBTS: Hacking Adventures in GSM, Hacker Fantastic
44CON 2014 - GreedyBTS: Hacking Adventures in GSM, Hacker Fantastic44CON
 
44CON London 2015 - Smart Muttering; a story and toolset for smart meter plat...
44CON London 2015 - Smart Muttering; a story and toolset for smart meter plat...44CON London 2015 - Smart Muttering; a story and toolset for smart meter plat...
44CON London 2015 - Smart Muttering; a story and toolset for smart meter plat...44CON
 
44CON 2014 - Stupid PCIe Tricks, Joe Fitzpatrick
44CON 2014 - Stupid PCIe Tricks, Joe Fitzpatrick44CON 2014 - Stupid PCIe Tricks, Joe Fitzpatrick
44CON 2014 - Stupid PCIe Tricks, Joe Fitzpatrick44CON
 
44CON 2014 - Binary Protocol Analysis with CANAPE, James Forshaw
44CON 2014 - Binary Protocol Analysis with CANAPE, James Forshaw44CON 2014 - Binary Protocol Analysis with CANAPE, James Forshaw
44CON 2014 - Binary Protocol Analysis with CANAPE, James Forshaw44CON
 
44CON London - Attacking VxWorks: from Stone Age to Interstellar
44CON London - Attacking VxWorks: from Stone Age to Interstellar44CON London - Attacking VxWorks: from Stone Age to Interstellar
44CON London - Attacking VxWorks: from Stone Age to Interstellar44CON
 
44CON London 2015 - Stegosploit - Drive-by Browser Exploits using only Images
44CON London 2015 - Stegosploit - Drive-by Browser Exploits using only Images44CON London 2015 - Stegosploit - Drive-by Browser Exploits using only Images
44CON London 2015 - Stegosploit - Drive-by Browser Exploits using only Images44CON
 
44CON London 2015 - Windows 10: 2 Steps Forward, 1 Step Back
44CON London 2015 - Windows 10: 2 Steps Forward, 1 Step Back44CON London 2015 - Windows 10: 2 Steps Forward, 1 Step Back
44CON London 2015 - Windows 10: 2 Steps Forward, 1 Step Back44CON
 
44CON 2014 - Pentesting NoSQL DB's Using NoSQL Exploitation Framework, Franci...
44CON 2014 - Pentesting NoSQL DB's Using NoSQL Exploitation Framework, Franci...44CON 2014 - Pentesting NoSQL DB's Using NoSQL Exploitation Framework, Franci...
44CON 2014 - Pentesting NoSQL DB's Using NoSQL Exploitation Framework, Franci...44CON
 
44CON London 2015 - Old Dog, New Tricks: Forensics With PowerShell
44CON London 2015 - Old Dog, New Tricks: Forensics With PowerShell44CON London 2015 - Old Dog, New Tricks: Forensics With PowerShell
44CON London 2015 - Old Dog, New Tricks: Forensics With PowerShell44CON
 

En vedette (20)

44CON 2014 - Flushing Away Preconceptions of Risk, Thom Langford
44CON 2014 - Flushing Away Preconceptions of Risk, Thom Langford44CON 2014 - Flushing Away Preconceptions of Risk, Thom Langford
44CON 2014 - Flushing Away Preconceptions of Risk, Thom Langford
 
44CON London 2015 - Hunting Asynchronous Vulnerabilities
44CON London 2015 - Hunting Asynchronous Vulnerabilities44CON London 2015 - Hunting Asynchronous Vulnerabilities
44CON London 2015 - Hunting Asynchronous Vulnerabilities
 
44CON 2014 - Researching Android Device Security with the Help of a Droid Arm...
44CON 2014 - Researching Android Device Security with the Help of a Droid Arm...44CON 2014 - Researching Android Device Security with the Help of a Droid Arm...
44CON 2014 - Researching Android Device Security with the Help of a Droid Arm...
 
44CON London 2015 - Reverse engineering and exploiting font rasterizers: the ...
44CON London 2015 - Reverse engineering and exploiting font rasterizers: the ...44CON London 2015 - Reverse engineering and exploiting font rasterizers: the ...
44CON London 2015 - Reverse engineering and exploiting font rasterizers: the ...
 
44CON 2014 - Advanced Excel Hacking, Didier Stevens
44CON 2014 - Advanced Excel Hacking, Didier Stevens44CON 2014 - Advanced Excel Hacking, Didier Stevens
44CON 2014 - Advanced Excel Hacking, Didier Stevens
 
44CON 2014 - Switches Get Stitches, Eireann Leverett & Matt Erasmus
44CON 2014 - Switches Get Stitches,  Eireann Leverett & Matt Erasmus44CON 2014 - Switches Get Stitches,  Eireann Leverett & Matt Erasmus
44CON 2014 - Switches Get Stitches, Eireann Leverett & Matt Erasmus
 
44CON 2014 - I Hunt TR-069 Admins: Pwning ISPs Like a Boss, Shahar Tal
44CON 2014 - I Hunt TR-069 Admins: Pwning ISPs Like a Boss, Shahar Tal44CON 2014 - I Hunt TR-069 Admins: Pwning ISPs Like a Boss, Shahar Tal
44CON 2014 - I Hunt TR-069 Admins: Pwning ISPs Like a Boss, Shahar Tal
 
44CON London 2015 - Playing with Fire: Attacking the FireEye MPS
44CON London 2015 - Playing with Fire: Attacking the FireEye MPS44CON London 2015 - Playing with Fire: Attacking the FireEye MPS
44CON London 2015 - Playing with Fire: Attacking the FireEye MPS
 
44CON 2014 - I gave a talk about robots and hardware!, Josh Thomas
44CON 2014 - I gave a talk about robots and hardware!, Josh Thomas44CON 2014 - I gave a talk about robots and hardware!, Josh Thomas
44CON 2014 - I gave a talk about robots and hardware!, Josh Thomas
 
44CON 2014 - Simple Hardware Sidechannel Attacks for 10 GBP or Less, Joe Fitz...
44CON 2014 - Simple Hardware Sidechannel Attacks for 10 GBP or Less, Joe Fitz...44CON 2014 - Simple Hardware Sidechannel Attacks for 10 GBP or Less, Joe Fitz...
44CON 2014 - Simple Hardware Sidechannel Attacks for 10 GBP or Less, Joe Fitz...
 
44CON London 2015 - Inside Terracotta VPN
44CON London 2015 - Inside Terracotta VPN44CON London 2015 - Inside Terracotta VPN
44CON London 2015 - Inside Terracotta VPN
 
44CON 2014 - GreedyBTS: Hacking Adventures in GSM, Hacker Fantastic
44CON 2014 - GreedyBTS: Hacking Adventures in GSM, Hacker Fantastic44CON 2014 - GreedyBTS: Hacking Adventures in GSM, Hacker Fantastic
44CON 2014 - GreedyBTS: Hacking Adventures in GSM, Hacker Fantastic
 
44CON London 2015 - Smart Muttering; a story and toolset for smart meter plat...
44CON London 2015 - Smart Muttering; a story and toolset for smart meter plat...44CON London 2015 - Smart Muttering; a story and toolset for smart meter plat...
44CON London 2015 - Smart Muttering; a story and toolset for smart meter plat...
 
44CON 2014 - Stupid PCIe Tricks, Joe Fitzpatrick
44CON 2014 - Stupid PCIe Tricks, Joe Fitzpatrick44CON 2014 - Stupid PCIe Tricks, Joe Fitzpatrick
44CON 2014 - Stupid PCIe Tricks, Joe Fitzpatrick
 
44CON 2014 - Binary Protocol Analysis with CANAPE, James Forshaw
44CON 2014 - Binary Protocol Analysis with CANAPE, James Forshaw44CON 2014 - Binary Protocol Analysis with CANAPE, James Forshaw
44CON 2014 - Binary Protocol Analysis with CANAPE, James Forshaw
 
44CON London - Attacking VxWorks: from Stone Age to Interstellar
44CON London - Attacking VxWorks: from Stone Age to Interstellar44CON London - Attacking VxWorks: from Stone Age to Interstellar
44CON London - Attacking VxWorks: from Stone Age to Interstellar
 
44CON London 2015 - Stegosploit - Drive-by Browser Exploits using only Images
44CON London 2015 - Stegosploit - Drive-by Browser Exploits using only Images44CON London 2015 - Stegosploit - Drive-by Browser Exploits using only Images
44CON London 2015 - Stegosploit - Drive-by Browser Exploits using only Images
 
44CON London 2015 - Windows 10: 2 Steps Forward, 1 Step Back
44CON London 2015 - Windows 10: 2 Steps Forward, 1 Step Back44CON London 2015 - Windows 10: 2 Steps Forward, 1 Step Back
44CON London 2015 - Windows 10: 2 Steps Forward, 1 Step Back
 
44CON 2014 - Pentesting NoSQL DB's Using NoSQL Exploitation Framework, Franci...
44CON 2014 - Pentesting NoSQL DB's Using NoSQL Exploitation Framework, Franci...44CON 2014 - Pentesting NoSQL DB's Using NoSQL Exploitation Framework, Franci...
44CON 2014 - Pentesting NoSQL DB's Using NoSQL Exploitation Framework, Franci...
 
44CON London 2015 - Old Dog, New Tricks: Forensics With PowerShell
44CON London 2015 - Old Dog, New Tricks: Forensics With PowerShell44CON London 2015 - Old Dog, New Tricks: Forensics With PowerShell
44CON London 2015 - Old Dog, New Tricks: Forensics With PowerShell
 

Similaire à ASP.net Server Control Attacks

Asp.net state management
Asp.net state managementAsp.net state management
Asp.net state managementpriya Nithya
 
Windows Store app using XAML and C#: Enterprise Product Development
Windows Store app using XAML and C#: Enterprise Product Development Windows Store app using XAML and C#: Enterprise Product Development
Windows Store app using XAML and C#: Enterprise Product Development Mahmoud Hamed Mahmoud
 
Prévention et détection des mouvements latéraux
Prévention et détection des mouvements latérauxPrévention et détection des mouvements latéraux
Prévention et détection des mouvements latérauxColloqueRISQ
 
13 asp.net session19
13 asp.net session1913 asp.net session19
13 asp.net session19Vivek chan
 
Workshop: Building Vaadin add-ons
Workshop: Building Vaadin add-onsWorkshop: Building Vaadin add-ons
Workshop: Building Vaadin add-onsSami Ekblad
 
A framework for self-healing applications – the path to enable auto-remediation
A framework for self-healing applications – the path to enable auto-remediationA framework for self-healing applications – the path to enable auto-remediation
A framework for self-healing applications – the path to enable auto-remediationJürgen Etzlstorfer
 
Developing ASP.NET Applications Using the Model View Controller Pattern
Developing ASP.NET Applications Using the Model View Controller PatternDeveloping ASP.NET Applications Using the Model View Controller Pattern
Developing ASP.NET Applications Using the Model View Controller Patterngoodfriday
 
Kentico 8 EMS API Deep Dive
Kentico 8 EMS API Deep DiveKentico 8 EMS API Deep Dive
Kentico 8 EMS API Deep DiveBrian McKeiver
 
Chapter5-Bypass-ClientSide-Control-Presentation.pptx
Chapter5-Bypass-ClientSide-Control-Presentation.pptxChapter5-Bypass-ClientSide-Control-Presentation.pptx
Chapter5-Bypass-ClientSide-Control-Presentation.pptxilhamilyas5
 
Platform Events by Tim Taylor
Platform Events by Tim TaylorPlatform Events by Tim Taylor
Platform Events by Tim TaylorChristine Smith
 
Social Gold In-Flash Payments Webinar
Social Gold In-Flash Payments WebinarSocial Gold In-Flash Payments Webinar
Social Gold In-Flash Payments WebinarSocial Gold
 
Social Gold in-Flash Webinar Jan 2010
Social Gold in-Flash Webinar Jan 2010Social Gold in-Flash Webinar Jan 2010
Social Gold in-Flash Webinar Jan 2010Social Gold
 
WSO2Con US 2013 - Advanced API Management Tactics
WSO2Con US 2013 - Advanced API Management TacticsWSO2Con US 2013 - Advanced API Management Tactics
WSO2Con US 2013 - Advanced API Management TacticsWSO2
 
The complete ASP.NET (IIS) Tutorial with code example in power point slide show
The complete ASP.NET (IIS) Tutorial with code example in power point slide showThe complete ASP.NET (IIS) Tutorial with code example in power point slide show
The complete ASP.NET (IIS) Tutorial with code example in power point slide showSubhas Malik
 

Similaire à ASP.net Server Control Attacks (20)

Asp.net state management
Asp.net state managementAsp.net state management
Asp.net state management
 
Windows Store app using XAML and C#: Enterprise Product Development
Windows Store app using XAML and C#: Enterprise Product Development Windows Store app using XAML and C#: Enterprise Product Development
Windows Store app using XAML and C#: Enterprise Product Development
 
2310 b 05
2310 b 052310 b 05
2310 b 05
 
State management
State managementState management
State management
 
Prévention et détection des mouvements latéraux
Prévention et détection des mouvements latérauxPrévention et détection des mouvements latéraux
Prévention et détection des mouvements latéraux
 
13 asp.net session19
13 asp.net session1913 asp.net session19
13 asp.net session19
 
Workshop: Building Vaadin add-ons
Workshop: Building Vaadin add-onsWorkshop: Building Vaadin add-ons
Workshop: Building Vaadin add-ons
 
A framework for self-healing applications – the path to enable auto-remediation
A framework for self-healing applications – the path to enable auto-remediationA framework for self-healing applications – the path to enable auto-remediation
A framework for self-healing applications – the path to enable auto-remediation
 
Developing ASP.NET Applications Using the Model View Controller Pattern
Developing ASP.NET Applications Using the Model View Controller PatternDeveloping ASP.NET Applications Using the Model View Controller Pattern
Developing ASP.NET Applications Using the Model View Controller Pattern
 
Kentico 8 EMS API Deep Dive
Kentico 8 EMS API Deep DiveKentico 8 EMS API Deep Dive
Kentico 8 EMS API Deep Dive
 
Chapter5-Bypass-ClientSide-Control-Presentation.pptx
Chapter5-Bypass-ClientSide-Control-Presentation.pptxChapter5-Bypass-ClientSide-Control-Presentation.pptx
Chapter5-Bypass-ClientSide-Control-Presentation.pptx
 
Platform Events by Tim Taylor
Platform Events by Tim TaylorPlatform Events by Tim Taylor
Platform Events by Tim Taylor
 
Social Gold In-Flash Payments Webinar
Social Gold In-Flash Payments WebinarSocial Gold In-Flash Payments Webinar
Social Gold In-Flash Payments Webinar
 
Social Gold in-Flash Webinar Jan 2010
Social Gold in-Flash Webinar Jan 2010Social Gold in-Flash Webinar Jan 2010
Social Gold in-Flash Webinar Jan 2010
 
2310 b 07
2310 b 072310 b 07
2310 b 07
 
ELEVATE Paris
ELEVATE ParisELEVATE Paris
ELEVATE Paris
 
WSO2Con US 2013 - Advanced API Management Tactics
WSO2Con US 2013 - Advanced API Management TacticsWSO2Con US 2013 - Advanced API Management Tactics
WSO2Con US 2013 - Advanced API Management Tactics
 
Asp.net tips
Asp.net tipsAsp.net tips
Asp.net tips
 
Html bridge
Html bridgeHtml bridge
Html bridge
 
The complete ASP.NET (IIS) Tutorial with code example in power point slide show
The complete ASP.NET (IIS) Tutorial with code example in power point slide showThe complete ASP.NET (IIS) Tutorial with code example in power point slide show
The complete ASP.NET (IIS) Tutorial with code example in power point slide show
 

Plus de 44CON

They're All Scorpions - Successful SecOps in a Hostile Workplace - Pete Herzo...
They're All Scorpions - Successful SecOps in a Hostile Workplace - Pete Herzo...They're All Scorpions - Successful SecOps in a Hostile Workplace - Pete Herzo...
They're All Scorpions - Successful SecOps in a Hostile Workplace - Pete Herzo...44CON
 
How to Explain Post-Quantum Cryptography to a Middle School Student - Klaus S...
How to Explain Post-Quantum Cryptography to a Middle School Student - Klaus S...How to Explain Post-Quantum Cryptography to a Middle School Student - Klaus S...
How to Explain Post-Quantum Cryptography to a Middle School Student - Klaus S...44CON
 
Using SmartNICs to Provide Better Data Center Security - Jack Matheson - 44CO...
Using SmartNICs to Provide Better Data Center Security - Jack Matheson - 44CO...Using SmartNICs to Provide Better Data Center Security - Jack Matheson - 44CO...
Using SmartNICs to Provide Better Data Center Security - Jack Matheson - 44CO...44CON
 
JARVIS never saw it coming: Hacking machine learning (ML) in speech, text and...
JARVIS never saw it coming: Hacking machine learning (ML) in speech, text and...JARVIS never saw it coming: Hacking machine learning (ML) in speech, text and...
JARVIS never saw it coming: Hacking machine learning (ML) in speech, text and...44CON
 
Reverse Engineering and Bug Hunting on KMDF Drivers - Enrique Nissim - 44CON ...
Reverse Engineering and Bug Hunting on KMDF Drivers - Enrique Nissim - 44CON ...Reverse Engineering and Bug Hunting on KMDF Drivers - Enrique Nissim - 44CON ...
Reverse Engineering and Bug Hunting on KMDF Drivers - Enrique Nissim - 44CON ...44CON
 
The UK's Code of Practice for Security in Consumer IoT Products and Services ...
The UK's Code of Practice for Security in Consumer IoT Products and Services ...The UK's Code of Practice for Security in Consumer IoT Products and Services ...
The UK's Code of Practice for Security in Consumer IoT Products and Services ...44CON
 
Weak analogies make poor realities – are we sitting on a Security Debt Crisis...
Weak analogies make poor realities – are we sitting on a Security Debt Crisis...Weak analogies make poor realities – are we sitting on a Security Debt Crisis...
Weak analogies make poor realities – are we sitting on a Security Debt Crisis...44CON
 
Pwning the 44CON Nerf Tank
Pwning the 44CON Nerf TankPwning the 44CON Nerf Tank
Pwning the 44CON Nerf Tank44CON
 
Security module for php7 – Killing bugclasses and virtual-patching the rest! ...
Security module for php7 – Killing bugclasses and virtual-patching the rest! ...Security module for php7 – Killing bugclasses and virtual-patching the rest! ...
Security module for php7 – Killing bugclasses and virtual-patching the rest! ...44CON
 
44CON London 2015 - Is there an EFI monster inside your apple?
44CON London 2015 - Is there an EFI monster inside your apple?44CON London 2015 - Is there an EFI monster inside your apple?
44CON London 2015 - Is there an EFI monster inside your apple?44CON
 
44CON London 2015 - Indicators of Compromise: From malware analysis to eradic...
44CON London 2015 - Indicators of Compromise: From malware analysis to eradic...44CON London 2015 - Indicators of Compromise: From malware analysis to eradic...
44CON London 2015 - Indicators of Compromise: From malware analysis to eradic...44CON
 
44CON London 2015 - How to drive a malware analyst crazy
44CON London 2015 - How to drive a malware analyst crazy44CON London 2015 - How to drive a malware analyst crazy
44CON London 2015 - How to drive a malware analyst crazy44CON
 
44CON London 2015 - 15-Minute Linux Incident Response Live Analysis
44CON London 2015 - 15-Minute Linux Incident Response Live Analysis44CON London 2015 - 15-Minute Linux Incident Response Live Analysis
44CON London 2015 - 15-Minute Linux Incident Response Live Analysis44CON
 
44CON London 2015 - Going AUTH the Rails on a Crazy Train
44CON London 2015 - Going AUTH the Rails on a Crazy Train44CON London 2015 - Going AUTH the Rails on a Crazy Train
44CON London 2015 - Going AUTH the Rails on a Crazy Train44CON
 
44CON London 2015 - Software Defined Networking (SDN) Security
44CON London 2015 - Software Defined Networking (SDN) Security44CON London 2015 - Software Defined Networking (SDN) Security
44CON London 2015 - Software Defined Networking (SDN) Security44CON
 
44CON London 2015 - DDoS mitigation EPIC FAIL collection
44CON London 2015 - DDoS mitigation EPIC FAIL collection44CON London 2015 - DDoS mitigation EPIC FAIL collection
44CON London 2015 - DDoS mitigation EPIC FAIL collection44CON
 

Plus de 44CON (16)

They're All Scorpions - Successful SecOps in a Hostile Workplace - Pete Herzo...
They're All Scorpions - Successful SecOps in a Hostile Workplace - Pete Herzo...They're All Scorpions - Successful SecOps in a Hostile Workplace - Pete Herzo...
They're All Scorpions - Successful SecOps in a Hostile Workplace - Pete Herzo...
 
How to Explain Post-Quantum Cryptography to a Middle School Student - Klaus S...
How to Explain Post-Quantum Cryptography to a Middle School Student - Klaus S...How to Explain Post-Quantum Cryptography to a Middle School Student - Klaus S...
How to Explain Post-Quantum Cryptography to a Middle School Student - Klaus S...
 
Using SmartNICs to Provide Better Data Center Security - Jack Matheson - 44CO...
Using SmartNICs to Provide Better Data Center Security - Jack Matheson - 44CO...Using SmartNICs to Provide Better Data Center Security - Jack Matheson - 44CO...
Using SmartNICs to Provide Better Data Center Security - Jack Matheson - 44CO...
 
JARVIS never saw it coming: Hacking machine learning (ML) in speech, text and...
JARVIS never saw it coming: Hacking machine learning (ML) in speech, text and...JARVIS never saw it coming: Hacking machine learning (ML) in speech, text and...
JARVIS never saw it coming: Hacking machine learning (ML) in speech, text and...
 
Reverse Engineering and Bug Hunting on KMDF Drivers - Enrique Nissim - 44CON ...
Reverse Engineering and Bug Hunting on KMDF Drivers - Enrique Nissim - 44CON ...Reverse Engineering and Bug Hunting on KMDF Drivers - Enrique Nissim - 44CON ...
Reverse Engineering and Bug Hunting on KMDF Drivers - Enrique Nissim - 44CON ...
 
The UK's Code of Practice for Security in Consumer IoT Products and Services ...
The UK's Code of Practice for Security in Consumer IoT Products and Services ...The UK's Code of Practice for Security in Consumer IoT Products and Services ...
The UK's Code of Practice for Security in Consumer IoT Products and Services ...
 
Weak analogies make poor realities – are we sitting on a Security Debt Crisis...
Weak analogies make poor realities – are we sitting on a Security Debt Crisis...Weak analogies make poor realities – are we sitting on a Security Debt Crisis...
Weak analogies make poor realities – are we sitting on a Security Debt Crisis...
 
Pwning the 44CON Nerf Tank
Pwning the 44CON Nerf TankPwning the 44CON Nerf Tank
Pwning the 44CON Nerf Tank
 
Security module for php7 – Killing bugclasses and virtual-patching the rest! ...
Security module for php7 – Killing bugclasses and virtual-patching the rest! ...Security module for php7 – Killing bugclasses and virtual-patching the rest! ...
Security module for php7 – Killing bugclasses and virtual-patching the rest! ...
 
44CON London 2015 - Is there an EFI monster inside your apple?
44CON London 2015 - Is there an EFI monster inside your apple?44CON London 2015 - Is there an EFI monster inside your apple?
44CON London 2015 - Is there an EFI monster inside your apple?
 
44CON London 2015 - Indicators of Compromise: From malware analysis to eradic...
44CON London 2015 - Indicators of Compromise: From malware analysis to eradic...44CON London 2015 - Indicators of Compromise: From malware analysis to eradic...
44CON London 2015 - Indicators of Compromise: From malware analysis to eradic...
 
44CON London 2015 - How to drive a malware analyst crazy
44CON London 2015 - How to drive a malware analyst crazy44CON London 2015 - How to drive a malware analyst crazy
44CON London 2015 - How to drive a malware analyst crazy
 
44CON London 2015 - 15-Minute Linux Incident Response Live Analysis
44CON London 2015 - 15-Minute Linux Incident Response Live Analysis44CON London 2015 - 15-Minute Linux Incident Response Live Analysis
44CON London 2015 - 15-Minute Linux Incident Response Live Analysis
 
44CON London 2015 - Going AUTH the Rails on a Crazy Train
44CON London 2015 - Going AUTH the Rails on a Crazy Train44CON London 2015 - Going AUTH the Rails on a Crazy Train
44CON London 2015 - Going AUTH the Rails on a Crazy Train
 
44CON London 2015 - Software Defined Networking (SDN) Security
44CON London 2015 - Software Defined Networking (SDN) Security44CON London 2015 - Software Defined Networking (SDN) Security
44CON London 2015 - Software Defined Networking (SDN) Security
 
44CON London 2015 - DDoS mitigation EPIC FAIL collection
44CON London 2015 - DDoS mitigation EPIC FAIL collection44CON London 2015 - DDoS mitigation EPIC FAIL collection
44CON London 2015 - DDoS mitigation EPIC FAIL collection
 

Dernier

Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...AliaaTarek5
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Manual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditManual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditSkynet Technologies
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Scott Andery
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 

Dernier (20)

Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Manual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditManual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance Audit
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 

ASP.net Server Control Attacks

  • 1. .Net Havoc Abusing ASP.net Mechanics & Overriding Properties of ServerSide Web Controls Shay Chen, CTO Hacktics ASC, Ernst & Young September 12th, 2013 Page 1
  • 2. About ► Formerly a boutique company that provided information security services since 2004. ► As of 01/01/2011, Ernst & Young acquired Hacktics professional services practice, and the group joined EY as one of the firm’s advanced security centers (ASC). Page 2
  • 3. Abusing ASP.net Mechanics Identify Hidden Server Controls Web Control Event Execution Cached Viewstate / Validation Mining Enumerate Control Type Inject / Override Control Properties
  • 4. Introducing SCIP! Server Control Invisibility Purge A project based on a research by Niv Sela and Shay Chen, ZAP Extension Implementation by Alex Mor.
  • 5. Property Injection / Property Override ► Fingerprint visible & hidden control types ► Override server side control properties ► Access additional data sources in the backend databases and systems ► Execute application attacks while bypassing ASP.net security mechanisms Page 5
  • 6. Event Execution Exploits (EodSec) ► Elevate privileges by executing controls/events of high-privileged users ► Exploit vulnerable code stored in dormant events ► Corrupt the application data ► Exceed logical restrictions ► Etc Page 6
  • 7. Risk Factors ► Hidden Server Control Identification ► Server Control Type Fingerprinting ► Server Control Property Manipulation ► Server Control Property Injection ► Execution of Dormant Server Controls ► Cached Viewstate Reuse Page 7
  • 8. The Attack Surface of ASP.net / Mono
  • 9. Security Features in ASP.net/Mono ► Event Validation ► Digital Signatures / MAC ► Limit to List, Manipulation Prevention ► Security Filter (XSS) ► Sandbox ► Built-in Regular Expressions ► Etc Page 9
  • 10. Attack Surface Analysis: Entry Points ► Purpose: ► ► ► ► ► Locating Code to Abuse Web Pages Web Service Methods Global Modules (Filters, Handlers, Etc) … *Events of Server Web Controls* Page 10
  • 11. Server-Side Web Controls ► ► ► Rendered into HTML/JS code Include server side implementation Core Controls and Custom Controls (e.g. ascx) Page 11
  • 12. Server-Side Control Events ► ► ► A triggered server-side code segment, containing optional functionality (PostBack/CallBack in ASP.Net) Client triggering mechanism rely on EVENTTARGET, EVENTARGUMENT and VIEWSTATE Sample Server Side Implementation (C#, ASP.Net): ► aspx: ► .aspx.cs: Page 12
  • 13. Client-Side Implementation of Events ► Sample client-side implementation (ASP.Net postback): Page 13
  • 14. The Structure of the Viewstate Field ► Viewstate HTML Structure: ► ► Serialized into Base64* Signed (MAC), clear-text or encrypted Page 14
  • 15. Event Validation Drill Down Independent Events (e.g. buttons with usesubmitbehavior=false, etc) ► Programmatic vs. Declarative ► Page 15
  • 16. The Event Validation Mechanism ► Name/Value HashCode Formula if ([ControlValue] == null) return GetStringHashCode([ControlName]); else return GetStringHashCode([ControlName]) ^ GetStringHashCode([ControlValue]); The EventValidation Field ► <-Viewstate Hashcode ► <-Control Hashcodes ► ► MachineKey and MAC Control Name/Value Verification, Prior to Event Execution Include viewstate hashcode Included in the HTML: Page 16
  • 17. Evidence of Hidden Controls & Type ► ► Visible/Enabled Controls: EventValidation (Viewstate Decoder): Invisible / Disabled Controls (Properties in Viewstate): EventValidation (Viewstate Decoder): Page 17
  • 18. Server Controls / Props: Application Building Blocks
  • 19. Fingerprinting Server Controls ► Control Viewstate Presence ► ► ► ► Collection of Properties for Each Control Boolean, Numeric, Text, etc Properties reloaded from the viewstate Rule of Thumb – Properties in Viewstate ► ► Programmatic value manipulation Significant In-Design Modifications Page 19
  • 20. Mapping Viewstate Reloaded Props Page 20
  • 21. Demo I: Altering Server Side Boolean Properties
  • 22. Demo II: Override the GridView sqlDataSource and key fields
  • 24. Overriding Control Properties ► Reusing Valid Viewstates ► ► ► ► MAC Compatibility Mining Sources Structure Similarity Reconstructing Unsigned Viewstates ► ► Structure and Order of Properties Insertion of Value Pair Blocks Page 24
  • 26. Dormant Server Web Controls, 1 of 3 ► Commented Out Controls ► ► Commented out using HTML comments (<!-- -->) Rendered inside an HTML comment, but the server code is still active. Page 26
  • 27. Dormant Server Web Controls, 2 of 3 ► Disabled Controls ► ► ► The control enabled property is set to false (Server) Rendered with the disabled="disabled" HTML property Rendered without an input postback method Page 27
  • 28. Dormant Server Web Controls, 3 of 3 ► Invisible Controls ► ► The control visible property is set to false Not rendered in the presentation layer, but the code is still active Page 28
  • 29. Dormant Events of Web Controls ► Dormant ► ► Events of Visible Controls Declarative: Optional events of controls with multiple events Programmatic: Optional event listeners registered in the code level for controls with at least one active event Page 29
  • 31. Commented Control Event Execution ► Prerequisites (ASP.Net) - Commented Out Controls: ► ► ► Process ► ► Comment server control using HTML comments Event code does not include privilege validation “uncomment” the HTML control and execute the event, or send the appropriate values directly. Advantages ► Exploit works despite the Viewstate MAC AND EventValidation. Page 31
  • 34. Disabled Control Event Execution ► Prerequisites (ASP.Net / Mono) - Disabled Controls: ► ► ► Process ► ► ► The control “enabled” server property is set to FALSE Event code does not include privilege validation ASP.Net/Mono: Forge a postback / callback call, or send the appropriate values directly. Mono: delete the viewstate (!) Advantages ► Exploit works despite an active Viewstate MAC AND EventValidation. Page 34
  • 35. Forging a Disabled Control Event ► ► Forging a PostBack / CallBack Method Call Why does it work? ► ► ► ASP.Net: Temporarily disabled controls are a feature Mono: EventValidation’ Viewstate hash-code issue How does it work? ► The control name is exposed in the disabled control ► Use an interception proxy to “inject” postback calls into HTML control events, or craft requests manually. Page 35
  • 37. Invisible Control Event Execution 1/4 ► Prerequisites (ASP.Net / Mono) - Invisible Controls: ► (I) Either the ViewstateMAC OR the EventValidation features must be turned off ► (II) The control “visible” server property is set to FALSE (III) Event code does not include privilege validation ► Page 37
  • 38. Invisible Control Event Execution 2/4 ► EventValidation is OFF ► No event validation = ANY event can be executed, regardless of MAC <%@ Page Language="C#" AutoEventWireup="true" EnableEventValidation=“false" EnableViewStateMac=“true“ …%> ► Process ► ► Craft a request with valid EVENTTARGET value OR Inject a custom Postback/Callback call to the response HTML, and target the event of the invisible control Page 38
  • 39. Invisible Control Event Execution 3/4 ► EventValidation is ON , Viewstate MAC is OFF ► Forge valid viewstate / eventvalidation fields (no MAC) <%@ Page Language="C#" AutoEventWireup="true" EnableEventValidation="true" EnableViewStateMac=“false“ …%> ► Process ► Craft a request using SCIP or other eventvalidation editors Page 39
  • 40. Invisible Control Event Execution 4/4 ► Hashcode Generation Page 40
  • 41. Error-Based Control Enumeration ► ► Accessing invalid control names will NOT raise exceptions Accessing protected will - if the EventValidation is ON Page 41
  • 42. Blind Control Enumeration ► Basic Blind Differentiation Formula: ValidControlEvent = False; OriginalResponse = getResponse(“Page1.aspx?param=value”); VerificationResponse = getResponse(“Page1.aspx?param=value”); ConfirmationResponse = getResponse(“Page1.aspx?param=value”); InconsistentContent = VerificationResponse - ReflectedValues TimestampTokens; ClearResponse = OriginalRespone - ReflectedValues InconsistentContent - TimestampTokens; EventExecResponse = getResponse(“Page1.aspx?param=value&EVENTTARGET=…”); EventExecResponse = OriginalRespone - ReflectedValues InconsistentContent - TimestampTokens; If (Diff (ClearResponse, EventExecResponse ) > 0) ValidControlEvent = True; Page 42
  • 43. Control Naming Conventions ► Default: [ControlType][Number] ► ► Default II (v1.1-v3.5/Master): ctl[ID]$[contentScope]$... ► ► txtUsername, txtPassword, btnSubmit, cmdAddUser … Plain: [Logic] ► ► txt1, txt2, btn1, btn2, cmd1, cmd2, lst1, lst2 … Custom Legacy: [ControlTypeShortCut][Logic] ► ► ctl00$MainContent$txtName, ctl00$Content$cmdSubmit Legacy: [ControlTypeShortCut][Number] ► ► Button1, Button2, TextBox1, TextBox2 … user, pass, submit, delete Title Match: [Title] ► Username, Password, Origin, Email, Update Page 43
  • 44. Hidden/Optional Event Execution 1/2 ► Prerequisites – Multiple Dormant Events of Controls: ► ► ► Process: ► ► ► Control assigned with multiple events. (Calendar control, Custom Controls, etc) Fuzz the eventargument field, in addition to eventtarget Eventargument variation can execute different server events (for example - V[value] vs. [value]) Advanced: ► ► Core Events vs. Custom Events Example: Click, Command, onSelectionChanged, OnVisibleMonthCha nged, Etc Page 44
  • 49. Advanced Event Execution Methods Executing Events of Invisible Controls DESPITE EventValidation and Viewstate MAC
  • 50. Missing CallBack Code Validation ► Prerequisites – Improper CallBack Implementation ► ► ► Process: ► ► Event validation not performed manually in CallBack code Relies on the CALLBACKID and CALLBACKPARAM Ignore Event Validation when Forging Event Call Advantage: ► Works despite of Viewstate MAC & EventValidation. Page 50
  • 51. Mining Cached Viewstate Values 1/2 ► Prerequisites – Reusing Signed Cached Values ► ► Obtain control names from cached / indexed content: search engines, proxies, browser cache of privileged users Process: ► Reuse the cached VIEWSTATE, EVENTTARGET, EVENTARGUMENT and EVENTVALIDATION Page 51
  • 52. Mining Cached Viewstate Values 2/2 ► Advantages ► ► Exploit works DESPITE the Viewstate MAC AND EventValidation Shared Hosting Attack Model: ► ► Can bypass Viewstate MAC and EventValidation Scenarios for Shared / Isolated Application Pool Page 52
  • 54. Secure Coding Guidelines Preventing Event Execution & Property Override ► ► ► ► ► ► ► ► Do NOT use the Disabled property for security purposes Do NOT rely on HTML comments to hide controls Remove unnecessary dormant events from all layers: HTML, Design (e.g. aspx), CodeBehind (e.g. aspx.cs) Implement code-level privilege validation in each event Enforce digital signatures (Viewstate MAC) Activate event validation mechanisms (EventValidation) Disable cache / Prevent indexing in pages with sensitive controls! Customize the platform error messages Page 54
  • 55. Event Level Privilege Validation ► Explicit Privilege Validation in Event Code protected void Button1_Click(object sender, EventArgs e) { if (((String)Session["user"]).Equals("admin")) { ... } } ► Enable Event Validation / MAC <%@ Page Language="C#" AutoEventWireup="true" EnableEventValidation="true" EnableViewStateMac="true“ …%> Page 55
  • 56. Disable Cache & Prevent Indexing ► Disable Browser/Proxy Cache (Sample Code) HttpContext.Current.Response.Cache.SetExpires(DateTime.UtcNow.AddDays(-1)); HttpContext.Current.Response.Cache.SetValidUntilExpires(false); HttpContext.Current.Response.Cache.SetRevalidation(HttpCacheRevalidation.AllCaches); HttpContext.Current.Response.Cache.SetCacheability(HttpCacheability.NoCache); HttpContext.Current.Response.Cache.SetNoStore(); ► Restrict SE access in robots.txt (Sample Config) ► http://www.robotstxt.org/robotstxt.html User-agent: * Disallow: / ► Restrict SE caching/crawling via meta tags ► http://www.robotstxt.org/meta.html Page 56
  • 58. Dormant Control Execution Summary Control / Event Type ONLY Event Validation Is ON ONLY Event Viewstate MAC Validation AND is ON Viewstate MAC are ON Commented Disabled Invisible Optional Page 58
  • 59. Advanced Invisible Control Execution ► Execute Control Events DESPITE MAC/Validation ► ► ► Reuse cached / indexed ViewState and EventValidation fields of the same Page Abuse insecure callback implementations Abuse MachineKey in Shared Hosting Model Page 59
  • 60. The RIA SCIP Project ► ► ► ► Homepage: http://code.google.com/p/ria-scip/ OWASP ZAP extension (v2.0+), requires Java 1.7 Included in ZAP’s Marketplace Currently focused at ASP.net Page 60
  • 62. The RIA SCIP Project, Cont. ► Current Features ► ► ► ► ► ► ► ► Passively identifies traces of Invisible Controls Error-based invisible control name enumeration Blind-based invisible control name enumeration (NEW!) Disabled/commented control event execution Invisible control event execution Viewstate manipulation for manual parameter tampering, when MAC is OFF (NEW!), Control Injection Templates Manual execution of target events Upcoming Features ► ► Cached viewstate scraping / comparison / reuse (déjà vu) Control type fingerprinting & exploitation Page 62
  • 63. Additional Resources ► ► ► ► déjà vu (cache analysis) ZAP Extension: https://github.com/hacktics/deja-vu Woanware Viewstate Hacker: http://www.woanware.co.uk/application/viewstatehack er.html OWASP ZAP: https://code.google.com/p/zaproxy/ James Jardine blog posts: http://www.jardinesoftware.net/ Page 63
  • 64. EY Advanced Security Centers • Americas • • • • • EMEIA • • • Hacktics IL Houston New York Buenos Aires Dublin Barcelona Asia Pacific • • Singapore Melbourne
  • 65. Questions? Shay Chen (@sectooladdict) Niv Sela (@nivselatwit) Alex Mor (@nashcontrol)