nullcon 2011 - (secure) sitehoster – disable xss & sql injection

36
NEW CONCEPTS DEFEATING WEB ATTACKS (secure) SiteHoster http://nullcon.net

Upload: nu-the-open-security-community

Post on 08-Jun-2015

832 views

Category:

Technology


3 download

DESCRIPTION

(secure) SiteHoster – Disable XSS & SQL Injection by Abhishek Kumar

TRANSCRIPT

Page 1: nullcon 2011 - (secure) SiteHoster – Disable XSS & SQL Injection

NEW CONCEPTS

DEFEATING

WEB ATTACKS

( s e c u r e ) S i t e H o s t e r

http://nullcon.net

Page 2: nullcon 2011 - (secure) SiteHoster – Disable XSS & SQL Injection

http://null.co.in http://nullcon.net aBionic@twitter,linkedin,FB

Family Named: AbhishekKr

Friends Call: ABK

g33k Handle: aBionic

Independent Security Enthusiast/Researcher

Also a Member of „EvilFingers‟ (other than ‘NULL’)

Application-Developer in ThoughtWorks Inc.

OpenSource Lover

Page 3: nullcon 2011 - (secure) SiteHoster – Disable XSS & SQL Injection

http://null.co.in http://nullcon.net aBionic@twitter,linkedin,FB

Other than expanding to (secure)SiteHoster

A Fresh Approach

A Lab RAT

(s)SH

http://sourceforge.net/projects/sitehoster

Page 4: nullcon 2011 - (secure) SiteHoster – Disable XSS & SQL Injection

http://null.co.in

http://nullcon.net

aBionic@

twitter,linkedin,FB

It‟s The Same Old Problem

Page 5: nullcon 2011 - (secure) SiteHoster – Disable XSS & SQL Injection

http://null.co.in

http://nullcon.net

aBionic@

twitter,linkedin,FB

With A New Perspective To Solve It

Same Old Problem

Page 6: nullcon 2011 - (secure) SiteHoster – Disable XSS & SQL Injection

http://null.co.in

http://nullcon.net

aBionic@

twitter,linkedin,FB

ATTACK THE ATTACKER

offensive security to secure

Page 7: nullcon 2011 - (secure) SiteHoster – Disable XSS & SQL Injection

http://null.co.in

http://nullcon.net

aBionic@

twitter,linkedin,FB

Stats are not same (of 2009) …

But t h r e a t s are

Major Threats for Web Applications

Page 8: nullcon 2011 - (secure) SiteHoster – Disable XSS & SQL Injection

http://null.co.in http://nullcon.net aBionic@twitter,linkedin,FB

always aim the strongest opponent first,

makes you win battle easily

XSS Defeating Concept

Page 9: nullcon 2011 - (secure) SiteHoster – Disable XSS & SQL Injection

aBionic@twitter,linkedin,FB

IT IS JUST A PIECE OF CODE

Page 10: nullcon 2011 - (secure) SiteHoster – Disable XSS & SQL Injection

aBionic@twitter,linkedin,FB

<TAGS/> R GooD

Page 11: nullcon 2011 - (secure) SiteHoster – Disable XSS & SQL Injection

aBionic@twitter,linkedin,FB

And if it’s Code…

Page 12: nullcon 2011 - (secure) SiteHoster – Disable XSS & SQL Injection

http://null.co.in

http://nullcon.net

aBionic@

twitter,linkedin,FB

BUG

!dea is to

Page 13: nullcon 2011 - (secure) SiteHoster – Disable XSS & SQL Injection

http://null.co.in

http://nullcon.net

aBionic@

twitter,linkedin,FB

All Effect From Options of User Input, a Web2.0 Gift

3 Major XSS Attack Patterns

Page 14: nullcon 2011 - (secure) SiteHoster – Disable XSS & SQL Injection

http://null.co.in

http://nullcon.net

aBionic@

twitter,linkedin,FB

What You See Is (*NOT*) What You Get

Included or injected <script/>

+ Karthik calling Karthik…

+ User (tricked) Input…

Page 15: nullcon 2011 - (secure) SiteHoster – Disable XSS & SQL Injection

http://null.co.in

http://nullcon.net

aBionic@

twitter,linkedin,FB

What finally happens is unwanted <script/>

Who calls, or who injects

Page 16: nullcon 2011 - (secure) SiteHoster – Disable XSS & SQL Injection

http://null.co.in

http://nullcon.net

aBionic@

twitter,linkedin,FB

Take away all its POWER!!!!!

Disarm <script/>

Page 17: nullcon 2011 - (secure) SiteHoster – Disable XSS & SQL Injection

http://null.co.in

http://nullcon.net

aBionic@

twitter,linkedin,FB

To kill all unwanted „Creepy-Living‟ Beings

Dis-Infect Entire Body

Page 18: nullcon 2011 - (secure) SiteHoster – Disable XSS & SQL Injection

aBionic@twitter,linkedin,FB

Generated HyperText

<html>

<head><script>function h(){alert(“some dev-script in HEAD

Tag”);}</script></head>

<body>

<script DEFER>heavy_stuff=true;</script>

name: <div id=”fromDB” onMouseOver=”h();”>

<script>alert(„attacker injected it, could do anything‟);</script>

</div>

</body>

</html>

Page 19: nullcon 2011 - (secure) SiteHoster – Disable XSS & SQL Injection

aBionic@twitter,linkedin,FB

Server Patched View

<html>

<head>

<script> function h(){alert(“this is dev-scripts in HEAD Tag”);}</script>

</head>

<BD>

<BODY >

<script DEFER>heavy_stuff=true;</script>

<script type='text/javascript'>

x=document.getElementsByTagName("BODY");

x[0].innerHTML = "name:<div id=\"fromDB\" onclick=\"h();\">

<script>alert(\'attacker injected it, could do anything\');<\/script><\/div>“;

</script>

</BODY>

</BD>

</html>

Page 20: nullcon 2011 - (secure) SiteHoster – Disable XSS & SQL Injection

http://null.co.in

http://nullcon.net

aBionic@

twitter,linkedin,FB

…other two monkeys got a chance

But… still

Page 21: nullcon 2011 - (secure) SiteHoster – Disable XSS & SQL Injection

http://null.co.in

http://nullcon.net

aBionic@

twitter,linkedin,FB

„javascript:‟ may effect as

Page 22: nullcon 2011 - (secure) SiteHoster – Disable XSS & SQL Injection

http://null.co.in

http://nullcon.net

aBionic@

twitter,linkedin,FB

So „javascript:<bugMe/>‟

Page 23: nullcon 2011 - (secure) SiteHoster – Disable XSS & SQL Injection

http://null.co.in

http://nullcon.net

aBionic@

twitter,linkedin,FB

2 are pwn3d… but 3rd is powerful enough

1 Monkey can wreck havoc

Page 24: nullcon 2011 - (secure) SiteHoster – Disable XSS & SQL Injection

http://null.co.in

http://nullcon.net

aBionic@

twitter,linkedin,FB

-says „JS-Events‟

„Be Kind‟ on Entropy

Page 25: nullcon 2011 - (secure) SiteHoster – Disable XSS & SQL Injection

http://null.co.in http://nullcon.net aBionic@twitter,linkedin,FB

Page 26: nullcon 2011 - (secure) SiteHoster – Disable XSS & SQL Injection

aBionic@twitter,linkedin,FB

Ninja Parse User Input

Page 27: nullcon 2011 - (secure) SiteHoster – Disable XSS & SQL Injection

aBionic@twitter,linkedin,FB

Bug-it-su pwn JS-Events

Page 28: nullcon 2011 - (secure) SiteHoster – Disable XSS & SQL Injection

aBionic@twitter,linkedin,FB

hardcore ‘js-events’ pwnage

Page 29: nullcon 2011 - (secure) SiteHoster – Disable XSS & SQL Injection

http://null.co.in

http://nullcon.net

aBionic@

twitter,linkedin,FB

<TAGS/> go Green

XSS Attack gets bugged

Page 30: nullcon 2011 - (secure) SiteHoster – Disable XSS & SQL Injection

http://null.co.in

http://nullcon.net

aBionic@

twitter,linkedin,FB

Normal User Input Matching Attack aint Filtered

Innocence Is Saved

Page 31: nullcon 2011 - (secure) SiteHoster – Disable XSS & SQL Injection

http://null.co.in

http://nullcon.net

aBionic@

twitter,linkedin,FB

And so are Script-Junkies

All Monkeys Defeated

Page 32: nullcon 2011 - (secure) SiteHoster – Disable XSS & SQL Injection

aBionic@twitter,linkedin,FB

CURRENTLY JUST DEV PERSPECTIVE

Page 33: nullcon 2011 - (secure) SiteHoster – Disable XSS & SQL Injection

aBionic@twitter,linkedin,FB

For Un-Privileged AXNs

Page 34: nullcon 2011 - (secure) SiteHoster – Disable XSS & SQL Injection

aBionic@twitter,linkedin,FB

Old Wine, Why Not Always Used

DB

Web-App User-

Mapper

Read on Table T1

Read,Write on Table t2

all Read,write.*

boss

Page 35: nullcon 2011 - (secure) SiteHoster – Disable XSS & SQL Injection

http://null.co.in

http://nullcon.net

aBionic@

twitter,linkedin,FB

A n A A p p l e H a s h A A n D a y I n p u t

Ke e p s T h e D o c t o r A t t a c k e r Aw a y

& For Condition Match