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: Güvenlik sistemleri, Java, Statik analiz, Security systems, Java, Static analysis
- 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ı: Belirtilmemiş.
Ö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
- Interregional Relations: Perspectives on the Summit of South American-Arab Countries 'New' patterns of engagement
Bölgelerarasi ilişkiler: Güney Amerika - Arap Ülkeleri zirvesindeki“Yeni”angajman yapısı perspektifleri
MARSHA MARİE HALL
Yüksek Lisans
İngilizce
2015
Uluslararası İlişkilerOrta Doğu Teknik ÜniversitesiOrtadoğu Araştırmaları Ana Bilim Dalı
PROF. DR. MELİHA BENLİ ALTUNIŞIK
DOÇ. DR. DERYA GÖÇER AKDER
- A reservoir engineering study for field development - An application to real field data
Saha geliştirmede bir rezervuar mühendisliği çalışması - Gerçek saha verileri ile uygulama
HARUN KIRMACI
Yüksek Lisans
İngilizce
2014
Mühendislik Bilimleriİstanbul Teknik ÜniversitesiPetrol ve Doğal Gaz Mühendisliği Ana Bilim Dalı
PROF. DR. MUSTAFA ONUR
- 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
- Design and modelling of urban development areas with reference to historical settlements: case of Korça
Tarihi yerleşme ögeleri referanslı şehir gelişme alanların tasarımı ve modellenmesı: Korça örneği
EGIN ZEKA
Doktora
İngilizce
2020
Şehircilik ve Bölge Planlamaİstanbul Teknik ÜniversitesiŞehir ve Bölge Planlama Ana Bilim Dalı
DOÇ. DR. MEHMET ALİ YÜZER