Bedirhan URGUN Web Güvenlik Topluluğu Tübitak – UEKAE urgunb@hotmail

Preview:

DESCRIPTION

Web 2.0. Savunma. Saldırı. Dili: Javascript. Bedirhan URGUN Web Güvenlik Topluluğu Tübitak – UEKAE urgunb@hotmail.com. İçerik. Amaç Motivasyon Javascript Temelleri Javascript ve İki Sıradışı Özelliği Javascript ile Saldırı Tespit - Demo Sonuç. Amaç. - PowerPoint PPT Presentation

Citation preview

Copyright © The OWASP FoundationPermission is granted to copy, distribute and/or modify this document under the terms of the OWASP License.

The OWASP Foundation

OWASP-TR

http://www.owasp.org

SaldırıSavunma

Bedirhan URGUNWeb Güvenlik TopluluğuTübitak – UEKAEurgunb@hotmail.com

Dili: JavascriptWeb 2.0

OWASP Türkiye

İçerik

Amaç Motivasyon Javascript Temelleri Javascript ve İki Sıradışı Özelliği Javascript ile Saldırı Tespit - Demo Sonuç

OWASP Türkiye

Amaç

Javascript ile Web 2.0 güvenliği farkındalığı

OWASP Türkiye

Motivasyon

OWASP Türkiye

Motivasyon devam

Javascript Malware (kötücül yazılım)Bilgi hırsızlığı

Oturum korsanlığı Clipboard çalma Tuş yakalama Ekran çalma

İçerik değişikliği (tahrifat)

OWASP Türkiye

Geçmiş Tarama Motivasyon

www.gnucitizen.org

OWASP Türkiye

Port Tarama Motivasyon

www.gnucitizen.org

OWASP Türkiye

Dahili IP Çalma Motivasyon

www.gnucitizen.org

OWASP Türkiye

Web Spidering Motivasyon

www.gnucitizen.org

OWASP Türkiye

XSS Bot(net) Motivasyon

www.gnucitizen.org

OWASP Türkiye

Açıklık Tarama Motivasyon

www.spidynamics.com

OWASP Türkiye

Web Solucanı Motivasyon

www.webguvenligi.org

OWASP Türkiye

Javascript Temelleri

1995 Netscape, Brendan Eich 1996 Microsoft, JScript 1997 ECMA-262, ECMAScript Lehçeler;

Mozilla Firefox, Spider Monkey, Rhino IE, Opera, Konqueror, Safari .NET FrameworkAdobe: Flash, Flex, Acrobat

OWASP Türkiye

Javascript Temelleri devam

Dinamik Prototip tabanlı Zayıf yapısal (loose typing) Statik kapsamlı (lexical scoping) Birinci sınıf nesneler olarak fonksiyonlar Açık kod dağıtımı (source code delivery)

OWASP Türkiye

Global ve lokal değişkenlertat = “tuzsuz”;function tuzkoy(){

tat = “tuzlu”;}tuzkoy()alert(tat);

Komut sonu karakteri ; veya yeni satır Büyük küçük harf hassasiyeti

Javascript Temelleri devam

var

OWASP Türkiye

Javascript Temelleri devam

Veri tipleriNumberBooleanStringnullundefined ve diğer herşey Object

OWASP Türkiye

Javascript ve Farklı Özellikleri

Programlama Dilleri – 3xxBuyurucu (Imperative) programlama

komutlarla durumun değişmesi örn:

for(var i=0; i < myarray.length; i++)square( myarray[i] )

Bildirimsel (Declarative) programlama fonksiyonların uygulanması örn:

myarray.map( square, null )

OWASP Türkiye

Javascript ve Farklı Özellikleri

Bildirimsel programlamanın 2 temeliLambda (birinci sınıf nesneler : fonksiyonlar)

var ikiEkle = function (x) { return x + 2;}ikiEkle(3); // sonuç 5

Bir kez oluştur ve bir kez çalıştır

OWASP Türkiye

Javascript ve Farklı Özellikleri

Bildirimsel programlamanın 2 temeli devam

Closure (Kuşatma)

function birEkle (y) { return function() { return y + 1; };}var x = birEkle(5);x(); // sonuç 6

OWASP Türkiye

DEMO

Depolanmış XSS Javascript ile Saldırı Tespit Stratejisi Atlatma Daha İyi Saldırı Tespit Stratejisi

DEMO SUNUMDA D

EĞİL

OWASP Türkiye

Depolanmış XSS

OWASP Türkiye

Sonuç

JavascriptWeb 2.0 güvenliği için temel,Web 2.0 uygulama geliştirilmesi için temel,Göründüğünden daha karmaşık ve güçlü,Her açıdan incelenmeye değer bir dil

OWASP Türkiye

Kaynaklar

Yahoo! UI Library: YUI TheaterDouglas Crockford http://developer.yahoo.com/yui/theater/

Javascript: The Definitive GuideDavid Flanagan http://books.google.com

Recommended