Application Security Uygulama Güvenliği Chapter 8
Orientation • Some attacks inevitably get through network protections and reach individual hosts • In Chapter 7, we looked at OS and host hardening • In Chapter 8, we look at application hardening • This is the last chapter on protection Copyright Pearson Prentice-Hall 20102
Oryantasyon • Bazı saldırıların ağ koruması yoluyla alınması ve bireysel bilgisayarlar ulaşması kaçınılmazdır • Bölüm 7, OS ve host güçlendirilmesine baktık • Bölüm 8, uygulama güçlendirilmesine bakacağız • Koruma ile ilgili son bölüm Copyright Pearson Prentice-Hall 20103
8-1: Application Security Threats What can happen if an attacker takes over an application? • Can execute commands in a “privilege” mode • Buffer overflow attacks can take place – If an attacker sends too much data, a buffer might overflow, overwriting an adjacent section of RAM • Login screen bypass attacks • Cross-site scripting (XSS) attacks – One user’s input can go to another user’s webpage • SQL injection attacks Copyright Pearson Prentice-Hall 20104
8-1: Uygulama Güvenlik Tehditleri Bir saldırgan bir uygulamayı yönetim altına alırsa ne olur? • komutları “yetkili" modunda çalıştırabilir • Buffer overflow saldırıları gerekleştirebilir – Bir saldırganın çok fazla veri gönderirse, buffer RAM de taşma olabilri ve bitişik bir bölümü üzerine yazma olabilir • Giriş ekranı geçilerek yapılan saldırılar • Cross-site scripting (XSS) saldırıları – Bir kullanıcının girişi başka bir kullanıcının web sayfasına gidebilir • SQL enjeksiyon saldırıları Copyright Pearson Prentice-Hall 20105
8-1: Application Security Threats • Example of XSS – Attacker sends the victim an message with a link to a legitimate site – The link includes a script that is not visible in the browser window – The intended victim clicks on the link and the victim is taken to another webpage – The webserver sends back a webpage including the script – The script is invisible to the user (script executes) – The script may exploit a vulnerability in the browser or another part of the user’s software Copyright Pearson Prentice-Hall 20106
8-1: Uygulama Güvenlik Tehditleri • XSS örneği – Saldırgan, kurbana uygun bir link içeren bir e-posta iletisi gönderi bir meşru site r – link tarayıcı penceresinde görünmeyen bir script içerir – Kurban linke tıkladığında kurban başka bir web sitesine alınır – webserver geri script içeren bir web sayfası gönderir – script(script çalıştırılır) kullanıcıya görünmez – script tarayıcıda bir güvenlik açığınden yararlanabilir ya da kullanıcının başka bir yazılımından Copyright Pearson Prentice-Hall 20107
8-1: Application Security Threats • SQL injection attacks on databases – Programmer expects an input value (text, number, etc) • This may be used as part of an SQL query or operation against database – Say to accept a last name as input and return the person’s telephone number – Attacker enters an unexpected string • For example: a last name followed by a full SQL query string • The program may execute both the telephone number lookup command and the extra SQL query • This information should not be available to the attacker – Attacker may even delete an entire data table Copyright Pearson Prentice-Hall 20108
8-1: Uygulama Güvenlik Tehditleri • Veritabanları üzerinde SQL enjeksiyon saldırıları – Programcı bir giriş değeri (metin, sayı, vb) bekler • Bu veritabanına karşı bir SQL sorgusu veya operasyonun parçası olarak kullanılabilir – Girdi olarak bir soyadı kabul eder ve kişinin telefon numarasını döndürmesini söyler – Saldırgan, beklenmedik bir string girer • Örneğin: bir soyadı ardından tam bir SQL sorgu string i • Program hem telefon numarası arama komutu hemde ekstra SQL sorgusu çalıştırabilir • This information should not be available to the attacker – Saldırgan, hatta bütün bir veri tablosunu silebilir Copyright Pearson Prentice-Hall 20109
8-3: Hardening Applications Basics ◦ Provide physical security ◦ Periodic and effective backup ◦ Harden the OS ◦ Harden the application itself Copyright Pearson Prentice-Hall
8-3: Uygulamaları Güçlendirme Temelleri ◦ Fiziksel güvenlik sağlayın ◦ Periyodik ve etkili yedek ◦ OS yi güçlendirin ◦ Uygulamanın kendisini güçlendirin Copyright Pearson Prentice-Hall
8-3: Hardening Applications Minimize number of applications on a server • Implement secure configurations – Use baselines to go beyond “default” installation configurations • Install patches • Minimize the permissions of applications • Add application layer authentication, authorizations, and auditing – more specific to the application than general OS logins • Implement cryptographic systems (if needed) Copyright Pearson Prentice-Hall
8-3: Uygulamaları Güçlendirme Bir sunucu üzerinde uygulama sayısını azaltmak • güvenli yapılandırmalarınu uygulamak – Varolan yükleme konfigürasyonlarının ötesinde ayarlar kullanmak • Yamaları yüklemek • Uygulamaların izinleri azaltmak • Uygulama katmanı kimlik doğrulama, yetkilendirme ve denetleme eklemek – OS girişlerinden ziyade uygulama için daha özelleşmiş girişler • şifreleme sistemlerinin uygulanması(gerekirse) Copyright Pearson Prentice-Hall
8-4: Securing Custom Applications General • Be ware of problems in customized applications – Written by a firm’s own programmers or outsourced – Programmers may not be well trained for secure software development methodology or coding • User input without checking is needed – Testing/validation Copyright Pearson Prentice-Hall
8-4: Özel uygulamaları güvenlikleştirme Genel • Özelleştirilmiş uygulamalar sorunlarından haberdar olmak – Uygulamaların bir firmanın kendi programcıları ya da dış kaynaklı yazılması – Programcılar da güvenli yazılım geliştirme metodolojisi ve kodlama için eğitimli olmayabilir • Kontrol gerekmeden kullanıcı input ları – Test / doğrulama Copyright Pearson Prentice-Hall
8-4: Securing Custom Applications • Programmers should be trained well for protection – General secure programming principles – Programming language specific information – Application specific threats and countermeasures Copyright Pearson Prentice-Hall
8-4: Özel uygulamaları güvenlikleştirme • Programcılar koruma için iyi eğitilmiş olmalı – Genel güvenlik programlama ilkeleri – Programlama dillerine özel bilgileri – Uygulamaya özel tehditleri ve önlemler Copyright Pearson Prentice-Hall
8-5: WWW and E-Commerce • Importance of WWW Service and E- Commerce Security – Disruptions to services – Harm to reputation/image – Customer fraud – Exposure of private information Copyright Pearson Prentice-Hall
8-5: WWW and E-Commerce • WWW Servis ve E-Ticaret Güvenlik Önemi – Hizmetler deki aksamalar – itibar / görüntü ye zarar – Müşteri dolandırıcılık – Özel bilgilerin ifşa edilemesi Copyright Pearson Prentice-Hall
8-5: WWW versus E-Commerce • Some common WWW servers: – Microsoft Internet Information Server (IIS) – Apache on UNIX – etc • E-commerce servers add functionality: – Order entry, shopping cart, payment, etc. – Links to internal corporate databases and external services (such as credit card checking) Copyright Pearson Prentice-Hall
8-5: WWW versus E-Commerce • Bazı ortak WWW sunucuları:: – Microsoft Internet Information Server (IIS) – Apache on UNIX – etc • E-ticaret sunucuları işlevsellik eklerler: – Sipariş girişi, alışveriş sepeti, ödeme, vs. – iç kurumsal veri tabanları ve dış hizmetlerine bağlantılar (kredi kartı kontrolü gibi) Copyright Pearson Prentice-Hall
WWW service Versus E-Commerce Service Copyright Pearson Prentice-Hall
8-7: Some Webserver Attacks • Website defacement (change/replace) • Numerous IIS buffer overflow attacks • IIS directory traversal attacks Copyright Pearson Prentice-Hall
8-7: bazı Web sunucu saldırıları • Web sitesi tahrifi (değişim / değiştirme) • Sayısız IIS buffer overflow saldırıları • IIS directory traversal saldırıları Copyright Pearson Prentice-Hall
8-8: Directory Traversal Attack Copyright Pearson Prentice-Hall Attack: to move up levels in directory structure. If allowed, user can get outside the WWW root box, into other directories
8-9: Webserver and E-Commerce Protections • Patching software and their components – Patching the webserver and e-commerce SW • Other website protections – Use website vulnerability assessment tools – Read website error logs – Place a webserver-specific proxy server Copyright Pearson Prentice-Hall
8-9: Webserver ve E-Ticaret Korumalar • Yama yazılım ve bileşenleri – web sunucusu ve e-ticaret SW yama yükleme • Diğer web sitesi korumaları – web sitesi güvenlik açığı değerlendirme araçları kullanmak – web sitesi hata günlükleri okumak – Bir web sunucusuna özgü proxy sunucusu yerleştirmek Copyright Pearson Prentice-Hall
8-10: Seperation of SW Servers Copyright Pearson Prentice-Hall
8-11: Browser Attacks and Protections • PCs can be attacked through a browser – Client-side scripting (mobile vode) • Java applets (small Java programs) • Active-X from Microsoft – Sometimes can be highly dangerous • Scripting languages (not full programming languages) – A script is a series of commands in a scripting language – A script usually is invisible to users » JavaScript, VBScript – Malicious links • User usually must click on them to execute • Tricking users to visit other (phishing) websites – Other client-side attacks Copyright Pearson Prentice-Hall
8-11: Tarayıcı Saldırıları ve Korunma • Bilgisayarlar bir tarayıcı üzerinden saldırabilir – istemci tarafı (script) komut dosyası • Java applet leri (küçük Java programları) • Microsoft Active-X – Bazen çok tehlikeli olabilir • Scripting dilleri (tam programlama dilleri değil) – Bir script scripting dilinde komutlar dizisidir – Bir komut dosyası genellikle kullanıcılar için görünmez » JavaScript, VBScript – Kötü niyetli linkler • Kullanıcının genelde çalıştırabilmesi için üzerlerine tıklaması gerekir • Diğer web sitelerini ziyaret ederek kullanıcıları kandırılar – Diğer istemci tarafı saldırıları Copyright Pearson Prentice-Hall
8-11: Browser Attacks and Protections • Other Client-Side Attacks – T urn the computer into an unintended file server – Executing a command-line interface (CLI) to open a shell • Then attacker can enter many commands – Automatic redirection to unwanted webpage • User may be automatically directed to a malicious website – Cookies • Cookies are placed on user computer – can be retrieved by a website – can contain private information • Can be used to track users at a website • Accepting cookies may be necessary to use many websites Copyright Pearson Prentice-Hall
8-11: Tarayıcı Saldırıları ve Korunma • Diğer istemci tarafı saldırıları – Bilgisayarı istenmeyen dosya sunucusu içine döndürün – Bir kabuk(shell) açmak için bir komut satırı arayüzü (CLI) çalıştırılıyor • Daha sonra saldırgan birçok komut girebilir – Istenmeyen web sayfasına otomatik yönlendirme • Kullanıcı otomatik olarak kötü amaçlı bir web sitesine yönlendirilebilir – Cookies (çerezler) • Çerezler, kullanıcı bilgisayarında yerleştirilir – bir web sitesi tarafından alınabilir – özel bilgi içerebilir • Bir web sitesinde kullanıcıları izlemek için kullanılabilir • Çerezleri kabul etme pek çok web sitesini kullanmak için gerekli olabilir Copyright Pearson Prentice-Hall
8-11: Browser Attacks and Protections • Enhancing Browser Security – Patches and updates – Set strong security configuration options – Set strong privacy configuration options Copyright Pearson Prentice-Hall
8-11: Tarayıcı Saldırıları ve Korunma • Tarayıcı Güvenliğinin Artırılması – Yamalar ve güncellemeler – güçlü güvenlik yapılandırması seçeneklerini kurma – güçlü gizlilik yapılandırma seçenekleri kurma Copyright Pearson Prentice-Hall
8-14: Security • Malicious code – in attachments and HTML bodies (scripts) • Spam – Unsolicited commercial – Volume is growing rapidly – Slowing PCs and annoying users – Filtering for spam also rejects some legitimate messages • Inappropriate content • Protecting intellectual property rights (IPR) • Transmission of sensitive personally identifiable information Copyright Pearson Prentice-Hall
8-14: Güvenliği • Kötü niyetli kod – HTML (scripts) ve ekler olarak • Spam – İstenmeyen ticari e-posta – Hacmi hızla büyüyor – PC leri yavaşlatıyor ve kullanıcıları rahatsız ediyor – Spam filtreleme bazı uygun ve düzgün mesajları reddediyor • Uygunsuz içerik • fikri mülkiyet haklarının korunması • Hassas kişisel bilgileri taşıma Copyright Pearson Prentice-Hall
8-15: Possible Filtering Locations Copyright Pearson Prentice-Hall
8-14: Security • Employee training is needed for the following – Company is not private • company has right to read – Your messages may be forwarded without permission – Never put anything in a message that you would not want to see in court, printed in the newspapers, or read by your boss – Never forward messages without permission Copyright Pearson Prentice-Hall
8-14: Güvenliği • Personel eğitimi aşağıdakiler için gereklidir – Şirket e-posta sı özel değildir • şirket okuma hakkına sahiptir – Mesajlarınız izin olmadan iletilebilir – gazetelerde basılı, mahkemeye görmek istediğiniz veya patronunuz tarafından okunmasını isyemediğiniz hiç bir içeriği mesajınıza asla koymayınız – İzinsiz Asla mesajları iletmeyiniz Copyright Pearson Prentice-Hall
8-14: Security Copyright Pearson Prentice-Hall
8-16: Retention • Benefits of Retention – Major part of corporate memory – Often need to retrieve some old mails • Disadvantages of Retention – Can contain potentially damaging information – Expensive process because of required resources • Accidental Retention – Even if firms delete from mail servers, – May be stored on backup tapes – Users will often store copies on their own computers • There can be Legal Archiving Requirements Copyright Pearson Prentice-Hall
8-16: saklama • Saklamanın faydaları – Kurumsal hafızanın büyük bölümü – Genellikle bazı eski postaları almak gerekir • Saklamanın dezavantajları – Zararlı bilgiler içerebilir – Gerekli kaynakları nedeniyle pahalı bir işlem • Yanlışlıkla saklama – Firmaların posta sunucularından e-posta silmeleri bile – yedekleme bantları saklanabilir – Kullanıcıların çoğu zaman kendi bilgisayarlarında kopyaları saklar • Yasal Arşivleme Gereksinimleri olabilir Copyright Pearson Prentice-Hall
8-16: Retention • Message Authentication – Spoofed messages can cause problems for employees or the firms – Message authentication is need to prevent spoofed sender addresses Copyright Pearson Prentice-Hall
8-16: saklama • Mesaj kimlik doğrulaması – Sahte mesajlar çalışanlar veya firmalar için sorun yaratabilir – Mesaj kimlik doğrulaması sahte gönderen adresinin önlemek için gerekir Copyright Pearson Prentice-Hall
8-18: Voice over IP (VoIP) Copyright Pearson Prentice-Hall
8-20: VoIP Threats • Eavesdropping • Denial-of-Service Attacks – Latency and jitter can be highly disruptive • Caller Impersonation • Hacking and Malware Attacks – Compromised servers/clients can do disruptive signaling • Toll Fraud – Attacker uses corporate VoIP network to place free calls • Spam over IP Telephony (SPIT) – Especially disruptive because it interrupts the called party Copyright Pearson Prentice-Hall
8-20: VoIP Tehditleri • Dinlenmeler • Denial-of-Service saldırıları – Gecikme ve jitter son derece yıkıcı olabilir • CalArayanı taklit etme • Hacking ve kötü amaçlı yazılım saldırıları – Aşılan sunucular / müşteriler sinyal bozucu yapabilir • Toll Fraud – Saldırgan kurumsal VoIP ağ kullanarak ücretsiz görüşme yapabilir • IP Telephony üzerinden Spam (SPIT) – Özellikle yıkıcı çünkü arama abone sini kesmeleri nedeniyle Copyright Pearson Prentice-Hall
8-21: Implementing VoIP Security • Basic corporate security policies • Authentication – SIP Identity provides strong authentication • Encryption for confidentiality – Can add to latency • Firewalls – Firewall must prioritize VoIP traffic Copyright Pearson Prentice-Hall
8-21: Güvenli VoIP Uygulama • Temel kurumsal güvenlik politikaları • Kimlik doğrulama – SIP kimliği güçlü kimlik doğrulama sağlar • Gizlilik için Şifreleme – Gecikme ekleyebilir • Güvenlik duvarları – Güvenlik duvarı VoIP trafiğine öncelik vermeli Copyright Pearson Prentice-Hall
8-22: Skype Security Concerns • Widely Used Public VoIP Service • Uses Proprietary Protocols and Code • Vulnerabilities? Backdoors? Etc. • Firewalls have a difficult time even recognizing Skype traffic • Encryption for Confidentiality Inadequate Authentication ◦ Uncontrolled user registration; can use someone else’s name and so appear to be them Peer-to-Peer (P2P) Service ◦ Bad for corporate security control Skype File Sharing Copyright Pearson Prentice-Hall
8-22: Skype Güvenlik Kaygıları • Yaygın kullanılan Kamu VoIP Hizmeti • Özel Protokoller ve Kod Kullanır • Güvenlik açıkları? Arka kapı? Vb.. • Güvenlik duvarları Skype trafiğini tanımada bile bazı zamanlar zorlanır • Gizlilik için şifreleme Yetersiz Kimlik Doğrulama ◦ Kontrolsüz kullanıcı kaydı; başkasının adını kullanır ve onları gibi görünür Peer-to-Peer (P2P) Hizmetleri ◦ Bad for corporate security control Skype Dosya Paylaşımı Copyright Pearson Prentice-Hall
8-23: Other Applications • Databases – Often used in mission-critical applications – Relational databases • Tables with rows (entities) and columns (attributes) – Avoid SQL injection attacks (discussed before) – Restrict Access to Data • Restrict users to certain columns or rows – Restrict Granularity • Allow only access to sums and averages for aggregates Copyright Pearson Prentice-Hall
8-23: Diğer uygulamalar • Veritabanları – Genellikle kritik uygulamalarda kullanılan – İlişkisel veritabanları • Satır (varlık) ve sütunlar (nitelikler) ile tablolar – SQL enjeksiyon saldırılarını önlemek (daha önce tartışılan) – Veri erişimini kısıtlama • Belli sütunları veya satırları kullanıcılara kısıtlama – Parçaları Kısıtlamak • Allow only access to sums and averages for aggregates Copyright Pearson Prentice-Hall
8-24: Servers in Instant Messaging (IM) Copyright Pearson Prentice-Hall Presence servers merely tell the clients that others exist and what their IP addresses are Durum sunucuları var olan diğer istemcileri ve onların IP adresleri istemcilere söyler
8-24: Servers in Instant Messaging (IM) Copyright Pearson Prentice-Hall All transmissions go through relay servers when relay servers are used.
8-25: Spreadsheet Vault Server Copyright Pearson Prentice-Hall The vault server stores spreadsheets and strongly controls access to them. Authentication Authorizations Auditing 1. The vault server stores spreadsheets and strongly controls access to them. Authentication Authorizations Auditing 2. Spreadsheets record each change for auditing purposes 2. Spreadsheets record each change for auditing purposes
8-25: Spreadsheet Vault Server Copyright Pearson Prentice-Hall Cryptographic Protections for Transmissions 3. Cryptographic Protections for Transmissions 4. Strong Client Security 4. Strong Client Security
8-26: TCP/IP Supervisory Applications • TCP/IP Supervisory Protocols – Many supervisory protocols in TCP/IP • ARP, ICMP, DNS, DHCP, LDAP, RIP, OSPF, BGP, SNMP, etc. • The targets of many attacks – Such as SNMP • GET messages to get information from a managed object • SET messages to change the configuration of a managed object • IT security people wust work with the networking staff – To ensure that appropriate security is being applied to supervisory protocols Copyright Pearson Prentice-Hall
8-26: TCP / IP Denetim Uygulamaları • TCP / IP denetim Protokolleri – TCP / IP birçok denetleme protokolleri • ARP, ICMP, DNS, DHCP, LDAP, RIP, OSPF, BGP, SNMP, etc. • Birçok saldırının hedefleri – SNMP gibi • GET mesajları yönetilen bir nesneden bilgi almak için • SET mesajları yönetilen bir nesneyi konfigürasyonunu değiştirmek için • IT güvenlik personelleri ağ personeli ile birlikte çalışmalıdır – Bunu garanti etmek için denetim protokolleri için uygun güvenlik uygulanmalıdır Copyright Pearson Prentice-Hall