View
36
Download
3
Category
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
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,
< → < > → > " → “ & → &
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