Pendeteksian Celah Keamanan SSL TLS Menggunakan Android

PENDETEKSIAN CELAH KEAMANAN SSL/TLS MENGGUNAKAN
ANDROID
SKRIPSI

ERWIN H SITORUS
101402091

PROGRAM STUDI TEKNOLOGI INFORMASI
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
2016

Universitas Sumatera Utara

PENDETEKSIAN CELAH KEAMANAN SSL/TLS MENGGUNAKAN
ANDROID
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah
Sarjana Teknologi Informasi

ERWIN H SITORUS

101402091

PROGRAM STUDI TEKNOLOGI INFORMASI
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
2016

Universitas Sumatera Utara

ii

PERSETUJUAN

Judul

: PENDETEKSIAN CELAH KEAMANAN SSL/TLS
MENGGUNAKAN ANDROID

Kategori


: SKRIPSI

Nama

: ERWIN H SITORUS

Nomor Induk Mahasiswa

: 101402091

Program Studi

: S1 TEKNOLOGI INFORMASI

Departemen

: TEKNOLOGI INFORMASI

Fakultas


: ILMU KOMPUTER DAN TEKNOLOGI
INFORMASI
UNIVERSITAS SUMATERA UTARA

Komisi Pembimbing :

Pembimbing 2

Pembimbing 1

Romi Fadillah Rahmat, B.Comp.Sc M.Sc

Dani Gunawan, ST, MT

NIP. 19860303 201012 1 004

NIP. 19820915 201212 1 002

Diketahui/disetujui oleh
Program Studi S1 Teknologi Informasi

Ketua,

Muhammad Anggia Muchtar, ST., MM.IT
NIP. 19800110 200801 1 010

Universitas Sumatera Utara

iii

PERNYATAAN

PENDETEKSIAN CELAH KEAMANAN SSL/TLS
MENGGUNAKAN ANDROID

SKRIPSI

Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa
kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya.

Medan, 28 Februari 2016


Erwin H Sitorus
101402091

Universitas Sumatera Utara

iv

UCAPAN TERIMA KASIH

Puji dan syukur penulis sampaikah kehadirat Tuhan Yang Maha Esa yang telah
memberikan rahmat serta restu-Nya sehingga penulis dapat menyelesaikan skripsi ini
sebagai syarat untuk memperoleh gelar Sarjana Teknologi Informasi.
Pertama, penulis ingin mengucapkan terima kasih kepada Bapak Dani Gunawan, ST
,MT selaku pembimbing pertama dan Bapak Romi Fadillah Rahmat, B.Comp.Sc.
M.Sc selaku pembimbing kedua yang telah membimbing penulis dalam penelitian
serta penulisan skripsi ini. Tanpa inspirasi serta motivasi yang diberikan dari kedua
pembimbing, tentunya penulis tidak akan dapat menyelesaikan skripsi ini. Penulis
juga mengucapkan terima kasih kepada Bapak Dedy Arisandi, ST. M.Kom sebagai
dosen pembanding pertama dan Bapak Ainul Hizriadi, ST.M.Kom sebagai dosen

pembanding kedua yang telah memberikan masukan serta kritik yang bermanfaat
dalam penulisan skripsi ini. Ucapan terima kasih juga ditjukan kepada semua dosen
serta semua pegawai pada program studi S1 Teknologi Informasi, yang telah
membantu serta membimbing penulis selama proses perkuliahan.
Penulis tentunya tidak lupa berterima kasih kepada kedua orang tua penulis, Bapak
penulis H. Sitorus, serta S. Napitupulu yang telah membesarkan penulis dengan sabar
dan penuh cinta. Penulis juga berterima kasih kepada seluruh anggota keluarga penulis
yang namanya tidak dapat disebutkan satu satu.
Terima kasih juga penulis ucapkan kepada seluruh teman-teman angkatan 2010 yang
telah bersama-sama penulis melewati perkuliahan pada program studi S1 Teknologi
Informasi, serta teman-teman mahasiswa Teknologi Informasi lainnya. Secara khusus,
penulis juga mengucapkan terima kasih kepada Cynthia A Sembiring yang selalu
memotivasi dan memberikan perhatiannya kepada penulis.

Universitas Sumatera Utara

v

ABSTRAK


Kejahatan semakin marak dikarenakan perkembangan teknologi smartphone yang
bukan lagi hanya sekadar alat untuk komunikasi. Aplikasi web dan aplikasi android
masih sering diserang untuk mendapatkan informasi rahasia seperti pencurian
sejumlah akun diinternet, foto pribadi, hingga data sensitif lain seperti SMS dan
nomor kontak. Resiko ini terjadi karena adanya kesalahan dari teknologi yang
digunakan aplikasi web atau aplikasi mobile untuk memberikan layanan komunikasi
data yang aman (SSL/TLS). Salah satu jenis kelemahan yang dieksploitasi para
cracker seperti heartbleed. Untuk membantu para pengakses dan pengguna aplikasi
untuk mengetahui keamanan layanan dan kelemahan SSL/TLS adalah dengan
menggunakan aplikasi pendeteksi celah keamanan. Metode yang digunakan dalam
aplikasi ini adalah blackbox testing untuk mendeteksi celah keamanan pada aplikasi
web dan aplikasi android. Aplikasi ini mendeteksi celah keamanan SSL/TLS yang
bersifat OpenSource (OpenSSL) seperti: heartbleed, logjam dan CVE 2015-1793 dan
aplikasi ini juga dapat melakukan verifikasi layanan SSL yang digunakan aplikasi
web.
KEYWORD : SSL, OpenSSL, Heartbleed, logjam, CVE 2015-1793, Kelemahan

Universitas Sumatera Utara

vi


SSL/TLS VULNERABILITY DETECTOR USING ANDROID
ABSTRACT

Increasing of crime cause smartphone technology which not only used for
communication. Web application and android application is often attacked for obtain
confidental information such as account bank number, personal photos, or sensitive
data such as SMS (Short Message service) and contact number. This risk occur cause
there are errors from the technology which are used by web application or mobile
application to provide security data communication service. One type of vulnerability
which exploited by cracker is heartbleed. To assist user for find out security service
and vulnerability of SSL/TLS using application of security detection. The Blackbox
testing method is used in this application for detection of security vulnerable in web
application and android application. This Application detect SSL/TLS vulnerability
which is open source such as heartbleed, logjam and CVE 2015-1793 and this
application also can verify SSL provider which is used by web application
Keyword : SSL, OpenSSL, HeartBleed, Logjam, CVE 2015-1793, Vulnerability

Universitas Sumatera Utara


vii

DAFTAR ISI

PERSETUJUAN

ii

PERNYATAAN

iii

UCAPAN TERIMA KASIH

iv

ABSTRAK

v


ABSTRACT

vi

DAFTAR ISI

vii

DAFTAR TABEL

x

DAFTAR GAMBAR

xi

BAB I PENDAHULUAN

1


1.1 Latar Belakang

1

1.2 Rumusan Masalah

4

1.3 Batasan Masalah

4

1.4 Tujuan Penelitian

4

1.5 Manfaat Penelitian

5

1.6 Metodologi Penelitian

5

1.7 Sistematika Penulisan

5

BAB II LANDASAN TEORI

7

2.1 Keamanan Informasi

7

2.2 Celah Keamanan / Vulnerability

8

2.2.1 Celah Keamanan Aplikasi Web
2.2.2 Celah Keamanan Pada Aplikasi Mobile

2.3 Aplikasi dan Keamanan Aplikasi

9
10

11

2.3.1 Aplikasi Web

12

2.3.2 Aplikasi mobile

12

Universitas Sumatera Utara

viii

2.3.3 Keamanan Aplikasi

13

2.4 SSL/TLS dan OpenSSL

13

2.4.1 SSL/TLS

13

2.4.2 OpenSSL

17

2.5 Socket

18

2.6 Android

19

2.7 Kelemahan Pada SSL/TLS

21

2.7.1 Heartbleed Bug (Heartbleed Vulnerability )

21

2.7.2 Logjam

22

2.7.3 CVE 2015-1793

22

2.8 Pengujian Aplikasi

23

2.8.1 White-Box Testing

23

2.8.2 Black-Box Testing

23

2.8.3 Gray-Box testing

24

2.9 Penelitian Terdahulu

24

BAB III ANALISIS DAN PERANCANGAN SISTEM

27

3.1 Identifikasi Masalah

27

3.2 Analisis Sistem

28

3.2.1 Scan Device

29

3.2.2 Scan URL

29

3.3 Proses Menguji Celah Kelemahan Aplikasi Web dan Aplikasi Mobile

36

3.3.1 Proses menguji serangan Heartbleed

36

3.3.2 Proses memverifikasi teknologi SSL server

40

3.3.3 Proses mengecek kelemahan terkait OpenSSL pada os android device dan
aplikasi mobile

41

3.4 Perancangan Sistem

42

3.4.1 Fungsi utama

42

Universitas Sumatera Utara

ix

3.4.2 Batasan -batasan

43

3.4.3 Data yang digunakan

43

3.4.4 Analisis pengguna

43

3.5 Perancangan User Interface

43

3.5.1 Rancangan halaman utama

44

3.5.2 Rancangan halaman Scan Url

44

3.5.3 Rancangan halaman Scan Device dan Application

45

3.5.2 Rancangan halaman tutorial aplikasi

47

BAB 4 IMPLEMENTASI DAN PENGUJIAN SISTEM

48

4.1 Implementasi Sistem

48

4.1.1 Spesifikasi perangkat keras dan perangkat lunak yang digunakan

48

4.1.2 Implementasi Black-Box testing

49

4.2 Pengujian Sistem

51

4.3 Pengujian Sistem Secara Menyeluruh dan Hasil Blackbox testing

52

4.3.1 Hasil Black-box Testing

53

4.3.2 Hasil pengujian aplikasi web terhadap Heartbleed dan Validasi SSL

56

4.3.3 Hasil pengujian aplikasi Mobile terhadap Kelemahan OpenSSl

58

BAB 5 KESIMPULAN DAN SARAN

60

5.1 Kesimpulan

60

5.2 Saran

61

DAFTAR PUSTAKA

62

Universitas Sumatera Utara

x

DAFTAR TABEL

Tabel 2.1 Penelitian Terdahulu

26

Tabel 4.1 sampel alamat website

52

Tabel 4.2 sampel aplikasi android

53

Tabel 4.3 hasil pengujian terhadap aplikasi Website

54

Tabel 4.4 hasil pengujian terhadap aplikasi browser

54

Tabel 4.5 sampel hasil pengujian terhadap aplikasi android

54

Universitas Sumatera Utara

xi

DAFTAR GAMBAR

Gambar 2.1

21

Gambar 2.2

21

Gambar 3.1 Arsitektur Umum Aplikasi

28

Gambar 3.2 Proses Handshake URL Web site

31

Gambar 3.3 Proses Penyerangan

32

Gambar 3.4 Proses Validasi SSL

33

Gambar 3.5 Proses Pengumpulan Informasi

34

Gambar 3.6 Proses identifikasi kelemahan

35

Gambar 3.7 Proses Identifikasi Kelemahan device

36

Gambar 3.8 Proses testing Heartbleed

37

Gambar 3.9 flowchart validasi SSL

40

Gambar 3.10 Proses Scan device

41

Gambar 3.11 Rancangan Halaman Utama

44

Gambar 3.12 Rancangan Halaman Scan URL

45

Gambar 3.13 Rancangan Halaman Scan device

46

Gambar 3.14 Rancangan Halaman Tutorial

47

Gambar 4.1 Halaman Utama

49

Gambar 4.2 Halaman Scan URL

50

Gambar 4.3 Halaman Scan Device

51

Gambar 4.4 hasil testing heartbleed

57

Gambar 4.5 hasil testing tidak heartbleed

57

Gambar 4.6 hasil testing device

58

Universitas Sumatera Utara