Development of a static analysis tool to find security vulnerabilities in java applications
Java uygulamalarında güvenliğe ilişkin zayıflıkların bulunmasına yönelik bir statik analizinin geliştirilmesi
- Tez No: 266623
- Danışmanlar: YRD. DOÇ. DR. TUĞKAN TUĞLULAR
- Tez Türü: Yüksek Lisans
- Konular: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol, Computer Engineering and Computer Science and Control
- Anahtar Kelimeler: Belirtilmemiş.
- Yıl: 2010
- Dil: İngilizce
- Üniversite: İzmir Yüksek Teknoloji Enstitüsü
- Enstitü: Mühendislik ve Fen Bilimleri Enstitüsü
- Ana Bilim Dalı: Bilgisayar Mühendisliği Ana Bilim Dalı
- Bilim Dalı: Belirtilmemiş.
- Sayfa Sayısı: 86
Özet
Bu tez java uygulamalarinda bulunan güvenlik sınırlamaları saptanmasına yönelik statik analiz araçlarını geliştirmeyi amaçlamaktadır. Bu amaçla, java kaynaklı kodlarla ilgili varolan açıkların ortadan kaldırılmasına katkıda bulunacaktır.FindBugs, Jlint, PMD, Checkstyle ve ESC/Java2 yaygın olarak kullanılan statik analiz araçlarıdır. Bu çalışmada, Possible bugs (olası hatalar), Dead code (kullanılmayan kod), Suboptimal code (yetersiz kod), Overcomplicated expressions (karmaşık ifadeler) ve Duplicate code (ikinci kod) gibi hataların saptanmasına yönelik geliştirilmiş olan PMD statik analiz aracının kullanımı amaçlanmaktadır. Buna karşılık PMD'nin faults possible unexpected exception (olası beklenmeyen kural dışı durum), length may be less than zero(yapı boyutu sıfırdan küçük olabilir), division by zero (sıfıra bölünme), stream not closed on all paths (I/O için açılan katarın kapatılmaması) gibi açıkları bulamadığı saptanmıştır.Bazı hatalı kodları saptamasının yanında PMD'nin bulmaya çalıştığı hataların çoğu, biçimsel hatalara dayanmaktadır. Örnek olarak, try catch yapısındaki boş catch bloğunu gösterebilmektedir. PMD, programlama stiline bağlı olarak birçok algılayıcı kural içermektedir ve bu kuralları isteğe göre seçebilme özelliğine sahiptir. PMD'nin ana yapısı korunarak taşma zayıflıkları için yeni kurallar geliştirilmiştir.
Özet (Çeviri)
The scope of this thesis is to enhance a static analysis tool in order to find security limitations in java applications. This will contribute to the removal of some of the existing limitations related with the lack of java source codes.The generally used tools for a static analysis are FindBugs, Jlint, PMD, ESC/Java2, Checkstyle. In this study, it is aimed to utilize PMD static analysis tool which already has been developed to find defects Possible bugs (empty try/catch/finally/switch statements), Dead code (unused local variables, parameters and private methods), Suboptimal code (wasteful String/StringBuffer usage), Overcomplicated expressions (unnecessary if statements for loops that could be while loops), Duplicate code (copied/pasted code means copied/pasted bugs). On the other hand, faults possible unexpected exception, length may be less than zero, division by zero, stream not closed on all paths and should be a static inner class cases were not implemented by PMD static analysis tool.PMD performs syntactic checks and dataflow analysis on program source code. In addition to some detection of clearly erroneous code, many of the ?bugs? PMD looks for are stylistic conventions whose violation might be suspicious under some circumstances. For example, having a try statement with an empty catch block might indicate that the caught error is incorrectly discarded. Because PMD includes many detectors for bugs that depend on programming style, PMD includes support for selecting which detectors or groups of detectors should be run. While PMD?s main structure was conserved, boundary overflow vulnerability rules have been implemented to PMD.
Benzer Tezler
- Yazılım güvenliği test ve değerlendirme aracı geliştirilmesi
Development of software security testing and evaluation
GÜNCEL SARIMAN
Doktora
Türkçe
2015
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolSüleyman Demirel ÜniversitesiBilgisayar Mühendisliği Ana Bilim Dalı
DOÇ. DR. ECİR UĞUR KÜÇÜKSİLLE
- The impact of static analysis tools on software quality, productivity and cost
Statik analiz araçlarının yazılım kalitesine, üretkenliğe ve maliyet üzerine etkisi
MEHMET YILDIZ
Yüksek Lisans
İngilizce
2019
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolDoğuş ÜniversitesiBilgisayar Mühendisliği Ana Bilim Dalı
DR. ÖĞR. ÜYESİ YASEMİN KARAGÜL
- Tarihi kentsel peyzaj yaklaşımı ile doğal ve tarihi çevre değişiminin ölçümü için bir model önerisi: İstanbul Boğaziçi sit alanı örneği
A model proposal for the measurement of natural and historical environment change with the historic urban landscape approach: The case of Istanbul Bosporus site
AYŞEN BALİN KOYUNOĞLU
Doktora
Türkçe
2023
Şehircilik ve Bölge Planlamaİstanbul Teknik ÜniversitesiŞehir ve Bölge Planlama Ana Bilim Dalı
PROF. DR. NURAN ZEREN GÜLERSOY
- Banking structure and bank firm affiliation: The case of Turkey
Banka yapılanmaları ve banka firma ilişkileri: Türkiye örneği
CEM BAYÜLGEN
- Sincap kafesli asenkron makinenin rotor alan yönlendirmeli kontrolü
Rotor field-orientation control of a squirrel cage induction machine
SAFFET ALTAY
Yüksek Lisans
Türkçe
1995
Elektrik ve Elektronik Mühendisliğiİstanbul Teknik ÜniversitesiPROF.DR. M. EMİN TACER