WEB TEKNOLOJİLERİ GİRİŞ

Preview:

DESCRIPTION

WEB TEKNOLOJİLERİ GİRİŞ. www.webguvenligi.org. Client Side. Server Side. Middleware. Backend. ODBC. HTTP. HTTP. IE. Applets. Apache. PHP. .NET Framework. ASP.NET. ORACLE. ADO. HTTPS. HTTPS. Firefox. JScript. IIS. ASP. Apache Tomcat. JSP Servlet. MSSQL. JDBC. JNLP. RMI. - PowerPoint PPT Presentation

Citation preview

WEB TEKNOLOJİLERİ GİRİŞ

www.webguvenligi.org20.04.23

2 Web Güvenlik Topluluğu / OWASPTR

Applets

ORACLE

MSSQL

PGSQL

DB2

MYSQL

SAP/ERP

Mainframe

LDAP

IE

JScriptFirefox

HTMLOpera

CSSThick

Clients

DHTML

Safari

XMLMobile

Browsers

ActionScript

Opera

WS Client

Google Browser

PHPApach

e

ASPIIS

CGISun

SSIIBM

WS Server

Oracle

Cold Fusio

n

Custom

Servers

Python

Google

Perl

JSP Servle

t

Apache Tomcat

RoROracle

iAS

Web Servic

es

IBM Websphe

re

EJBBEA

WebLogic

Jetty

Sun AppServ

er

ASP.NET

.NET Framew

ork

AJAXJava Web Start

Client Side Server Side Middleware Backend

HTTP

HTTPS

JNLP

RPC

IIOP

TCP/IP

HTTP

HTTPS

RMI

RPC

IIOP

TCP/IP

RMI

ODBC

ADO

JDBC

LDAP

MQ

TCP/IP

SOAP

SOAP JMS

3 Web Güvenlik Topluluğu / OWASPTR

Browser

Internet Explorer

Database ServerMYSQL

Web ServerApache

4Genel İçerik

İstemci Tarafı WWW HTML

JavascriptDHTML URL HTTP

Web Güvenlik Topluluğu / OWASPTR

5Genel İçerik

Sunucu Tarafı Web Uygulama Kavramları Geliştirme Ortamları Uygulama Sunucusu Arka-uç Bağlantıları

Web Güvenlik Topluluğu / OWASPTR

6World Wide Web (WWW)

Tim Berners-Lee tarafından CERN için geliştirilmeye başlanılan bir doküman paylaşım sistemi

Bu dokümanları,oluşturmak için bir dil: HTML

bulmak için bir adresleme: URL

transfer etmek için bir mekanizma: HTTP

Web Güvenlik Topluluğu / OWASPTR

7HTML

HyperText Markup LanguageWeb tarayıcıların yazı (text) ve şekil

(graphic) sunmaları için geliştirilmiş bir dil

Yayınlanan standardlar; HTML 2.0 HTML 3.0 HTML 3.2 HTML 4.0, 1999

Web Güvenlik Topluluğu / OWASPTR

8HTML

Örnek HTML dokümanı

Web Güvenlik Topluluğu / OWASPTR

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

"http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title> My Web Page </title> </head> <body>

… </body> </html>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

"http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title> My Web Page </title> </head> <body>

… </body> </html>

9HTML

HTML (kaynak kodu ve diğer) inceleme Firefox : Extensions

DOMInspector HTMLValidator SourceEditor

Internet Explorer : Toolbar DevToolBar

Örnekler için http://www.w3schools.com/html/html_examples.asp

Web Güvenlik Topluluğu / OWASPTR

10HTML

HTML Kodlama Tarayıcıda < gibi özel karakterleri gösterebilmek için

kullanılan bir kodlama Bir html dokümanında,

&lt; → < &gt; → > &quot; → “ &amp; → &

karakterlerini gösterir.

Web Güvenlik Topluluğu / OWASPTR

11Javascript

Sadece HTML istenilen interaktifliği sağlayamadı

İstemci tarafında kod (betik) çalıştırma için LiveScript geliştirildi. (1996)

Daha sonra ismi Javascript olarak değiştirildi ancak Java ile paylaştığı çok şey yoktur.

Internet tarayıcılarından başka Adobe Acrobat, Photoshop gibi ürünler içerisinde de çalışır.

Web Güvenlik Topluluğu / OWASPTR

12Javascript

HTML sayfalarının içinde; Daha iyi kullanıcı ara yüzleri oluşturmak, Form değerlerini denetlemek, Tarayıcıların sürümlerini bulmak, Cookie oluşturmak, Son olarak AJAX,

gibi bir çok işlem için kullanılırlar.

Web Güvenlik Topluluğu / OWASPTR

13DHTML

Dynamic HTMLDaha dinamik ve interaktif web sayfaları

oluşturmak için bazı teknolojilerin bir arada kullanılması; HTML Javascript Document Object Model (DOM)

Bir standard değildir.Web Güvenlik Topluluğu / OWASPTR

14DHTML

Document Object Model (DOM) HTML DOM, ilgili HTML dokümanını bir ağaç yapısı

içerisinde saklar. HTML dokümanı içerisindeki tüm etiketler (tag) ve

diğer bilgiler bu ağaç yapısı yolu ile erişebilir ve manipüle edilebilir.

Web Güvenlik Topluluğu / OWASPTR

15DHTML

Örnek HTML DOM

Web Güvenlik Topluluğu / OWASPTR

16DHTML

Örnek DHTML

Web Güvenlik Topluluğu / OWASPTR

<html> <head> <script type="text/javascript">

function ChangeColor() { document.body.bgColor="yellow"

} </script> </head> <body onclick="ChangeColor()">

Click on this document! </body> </html>

<html> <head> <script type="text/javascript">

function ChangeColor() { document.body.bgColor="yellow"

} </script> </head> <body onclick="ChangeColor()">

Click on this document! </body> </html>

17URL

Uniform (Universal) Resource LocatorWeb’de bulunan dokümanlara ve diğer

kaynaklara ulaşılmasını sağlayan adresleme standardı

Web Güvenlik Topluluğu / OWASPTR

18URL

Syntax:

Web Güvenlik Topluluğu / OWASPTR

scheme http, https, telnet, ftp, mailto, ...

host:port www.google.com:80, www.ftp.org:21, ...

path /, /index.html, /bank/index.jsp, ...

?parameter=value

?prm1=val1&prm2=val2 ...

#fragment #anchor

scheme://host:port/path?parameter=value#fragment

http://www.google.com.tr/search.jsp?search=as#bottom

19URL

URL Kodlama veya Yüzde (Percent) Kodlama

Bazı özel durumlarda URL içerisindeki karakterlerin kodlanması

URL kullanılan karakterler ikiye ayrılır; Genel kullanım için “reserved” karakterler Bazı durumlarda özel anlamlara gelen “unreserved”

karakterler

Web Güvenlik Topluluğu / OWASPTR

20URL

“Reserved” karakterler[a-zA-Z0-9] - _ . ~

“Unreserved” karakterler! * ‘ ( ) ; : @ & = + $ , / ? % # [ ]

Örnek URL Kodlama+ → %2B/ → %2FA → %41

Web Güvenlik Topluluğu / OWASPTR

21HTTP

Web’de dokümanların transfer edilme standardı.

Web Güvenlik Topluluğu / OWASPTR

22HTTP

İki tür HTTP mesaj çeşidi mevcuttur. İstek (Request) Cevap (Response)

Genel HTTP mesaj yapısı şu şekildedir:

Web Güvenlik Topluluğu / OWASPTR

istek veya cevap için değişen ilk satır

bir veya daha fazla başlık (header)

boş bir satır

opsiyonel bir mesaj bölümü

istek veya cevap için değişen ilk satır

bir veya daha fazla başlık (header)

boş bir satır

opsiyonel bir mesaj bölümü

23HTTP

İstek (Request) GET

Web Güvenlik Topluluğu / OWASPTR

GET /index.jsp HTTP/1.1

User-Agent: Mozilla/4.0 (MSIE 6.0; ...Host: en.wikipedia.orgProxy-Connection: Keep-Alive

GET /index.jsp HTTP/1.1

User-Agent: Mozilla/4.0 (MSIE 6.0; ...Host: en.wikipedia.orgProxy-Connection: Keep-Alive

24HTTP

İstek (Request) POST

Web Güvenlik Topluluğu / OWASPTR

POST /login.jsp HTTP/1.1

User-Agent: Mozilla/4.0 (MSIE 6.0; ...Host: en.wikipedia.orgProxy-Connection: Keep-AliveContent-Length: 30

login=webappsec&passwd=1g4Olm#

POST /login.jsp HTTP/1.1

User-Agent: Mozilla/4.0 (MSIE 6.0; ...Host: en.wikipedia.orgProxy-Connection: Keep-AliveContent-Length: 30

login=webappsec&passwd=1g4Olm#

25HTTP

Cevap (Response) 200 OK

Web Güvenlik Topluluğu / OWASPTR

HTTP/1.1 200 OK

Date: Fri, 31 Mar 2006 10:08:00 GMTServer: Apache/2.47Content-Length: 92Connection: Keep-Alive

<html><head></head><body>…</html>

HTTP/1.1 200 OK

Date: Fri, 31 Mar 2006 10:08:00 GMTServer: Apache/2.47Content-Length: 92Connection: Keep-Alive

<html><head></head><body>…</html>

26HTTP

Cevap (Response) 404 Not Found

Web Güvenlik Topluluğu / OWASPTR

HTTP/1.1 404 Not Found

Date: Fri, 31 Mar 2006 10:08:00 GMTServer: Apache/2.47Content-Length: 96Connection: close

<html><head></head><body>…</html>

HTTP/1.1 404 Not Found

Date: Fri, 31 Mar 2006 10:08:00 GMTServer: Apache/2.47Content-Length: 96Connection: close

<html><head></head><body>…</html>

27HTTP

Cevap (Response) 302 Found

Web Güvenlik Topluluğu / OWASPTR

HTTP/1.1 302 Found

Date: Fri, 31 Mar 2006 10:08:00 GMTServer: Apache/2.47Content-Length: 91Location: http://www.google.com/a.jspConnection: close

<html>…</html>

HTTP/1.1 302 Found

Date: Fri, 31 Mar 2006 10:08:00 GMTServer: Apache/2.47Content-Length: 91Location: http://www.google.com/a.jspConnection: close

<html>…</html>

28HTTP

Cevap (Response) bazı kodlar 200 OK : istenilen kaynak bulundu 404 Not Found : istenilen kaynak bulunamadı 302 Found : kaynak başka yerde 500 Server Error : dahili sunucu hatası ...

Web Güvenlik Topluluğu / OWASPTR

29HTTP

HTTP Vekiller (Proxy) : tarayıcı ve sunucu arasına giren programlar. Neden? Güvenlik kontrolleri (güvenlik duvarları v.b.) HTTP cevap zamanını kısaltmak Hata ayıklama veya denetim amaçlı (Kişisel Vekiller)

Web Güvenlik Topluluğu / OWASPTR

30HTTP

Kişisel Vekiller (webscarab)

Web Güvenlik Topluluğu / OWASPTR

31Web Uygulamaları

Genellikle web tarayıcı tarafından web üzerinden erişilen programlar

Web Güvenlik Topluluğu / OWASPTR

32Web Uygulama Kavramları

Web uygulamalar için genel kritik bileşenler ve konular HTTP İstek HTTP Cevap Oturum yönetimi (genellikle cookie’ler yardımı ile)

Web Güvenlik Topluluğu / OWASPTR

33Uygulama Geliştirme & Koşma

Integrated Development Environment (IDE)EclipseNetbeansMS Visual Studio…

Web Güvenlik Topluluğu / OWASPTR

34Uygulama Geliştirme & Koşma

Uygulama SunucularıApache TomcatIIS .NET FrameworkBEA Weblogic…

Web Güvenlik Topluluğu / OWASPTR

35Arka-uç Bağlantısı

Kalıcı bir veri deposu gereksinimi ve veritabanları

SQL sorguları Veritabanı arka-uç bağlantıları için

kullanılan teknolojiler ve yapılarODBCJDBCADO.NET

Web Güvenlik Topluluğu / OWASPTR

36

webguvenligi.orgowasp.org

Web Güvenlik Topluluğu / OWASPTR

Recommended