Kriptologi-Proteksi-Data-PPT-2007

advertisement
KRIPTOLOGI dan
PROTEKSI DATA
Asep Budiman K. MT
1
Ilmu dan Seni Keamanan Informasi




Dimulai dari coba-coba. Merupakan sebuah seni.
Mulai diformalkan dalam bentuk ilmu.
Tidak bisa selamanya mengandalkan kepada cobacoba saja. Harus menggabungkan keduanya.
Catatan: Ilmu komputer (computer science) pun
muncul melalui jalur ini
2
Contoh Ilmu Security




Kriptografi (cryptography)
 Enkripsi & dekripsi: DES, AES, RSA, ECC
 Berbasis matematika
Protokol dan jaringan (network & protocols)
 SSL, SET
Sistem dan aplikasi (system & applications)
Management, policy & procedures
3
Pengamanan data

Steganografi
membuat seolah-olah pesan rahasia tidak ada atau
tidak nampak

Kriptografi
merupakan ilmu dan seni untuk menjaga pesan
agar aman
4
Ada Pesan apakah di text ini ?
sentuhan lembayung menyapa hari
untaian mutiara pagi menyejukan hati
kuncup bunga mekar menebar aroma kehidupan
anginpun membawa sebentuk kata
bumi kau telah membangunkanku dari tidur yang lelap
usapan udaramu hangat menerpa wajahku
mentari menghangatkan dunia
indah …..potret suasana fajar yang menghibur hati
belaian kasih Tuhan sang pencipta alam fanamu
5
Istilah-istilah
“Crypto” berarti “secret” (rahasia)
 “graphy” berarti “writing” (tulisan)
 para pelaku atau praktisi kriptografi disebut
cryptographers
 algoritma kriptografi disebut cipher
 pesan yang tersembunyi disebut ciphertext
 pesan dalam bentuk aslinya disebut plaintext

6
Istilah-istilah
enkripsi (encryption) :Proses yang dilakukan
untuk mengamankan sebuah pesan
 dekripsi (decryption) :untuk mengubah
ciphertext menjadi plaintext

7
Tujuan kriptografi





Confidentiality
Integrity
Availability
Ketiga di atas sering disingkat menjadi CIA
Ada tambahkan lain
 Non-repudiation
 Authentication
 Access Control
 Accountability.
8
Confidentiality / Privacy



Kerahasiaan data. Data hanya boleh diakses oleh orang yang
berwenang
 Data-data pribadi
 Data-data bisnis; daftar gaji, data nasabah
 Sangat sensitif dalam e-commerce dan healthcare
Serangan: penyadapan
(teknis dengan sniffer / logger, man in the middle attack; nonteknis dengan social engineering)
Proteksi: enkripsi
9
Integrity



Informasi tidak boleh berubah (tampered, altered, modified)
oleh pihak yang tidak berhak
Serangan
 Pengubahan data oleh orang yang tidak berhak, spoofing
 Virus yang mengubah berkas
Proteksi:
 Message Authentication Code (MAC), digital signature /
certificate, hash functions, logging
10
Availability



Informasi harus tersedia ketika dibutuhkan
Serangan
 Meniadakan layanan (Denial of Service / DoS attack) atau
menghambat layanan (server dibuat lambat)
Proteksi
 Backup, redundancy, DRC, BCP, firewall
11
Non-repudiation

Tidak dapat menyangkal (telah melakukan transaksi)
 Menggunakan digital signature
 Logging
12
Authentication


Meyakinkan keaslian data, sumber data, orang yang
mengakses data, server yang digunakan
 what you have (identity card)
 what you know (password, PIN)
 what you are (biometric identity)
Serangan: identitas palsu, terminal palsu, situs gadungan
13
Access Control

Mekanisme untuk mengatur siapa boleh melakukan apa
 Membutuhkan adanya klasifikasi data:
public, private, confidential, (top)secret
 Role-based access
14
Accountability



Dapat dipertanggung-jawabkan
Melalui mekanisme logging dan audit
Adanya kebijakan dan prosedur (policy & procedures)
15
Komponen kriptografi
16
Conventional cryptography



Disebut juga secret-key or symmetric-key encryption,
Satu kunci digunakan untuk enkripsi dan deskripsi.
Contoh : Data Encryption Standard (DES)
17
DES: Data Encryption Standard
18
Tipe Enkripsi
19
Simetris vs Asimetris


Simetris
untuk melakukan enkripsi dan deskripsi
menggunakan kunci yang sama
Asimetris
untuk melakukan enkripsi dan deskripsi
menggunakan kunci yang berbeda
20
Conventional encryption
21
Contoh Conventional Encryption

Caesar’s Cipher
Menggunakan kunci Caesar bernilai 3
 Plain : ABCDEFGHIKLMNOPQRSTUVWXYZ
Geser 3 hurup keatas, sehingga menjadi :
chiper : DEFGHIKLMNOPQRSTUVWXYZABC
Artinya adalah :
D=A, E = B, C = E dan seterusnya
Contoh : enkripsi kata SUKABUMI, maka hasil dari enkripsi
adalah WYODEYQM

22
Public key cryptography
23
Public key cryptography




Diperkenalkan oleh Diffie-Hellman
Merupakan skema asymmetric
Menggunakan sepasang kunci untuk enkripsi yaitu
public key
Untuk dekripsi data menggunakan private atau
secret key
 public
key = hanya bisa enkripsi
 public key + private key = bisa deskripsi
 private key = ?
24
Contoh Public key cryptography




Elgamal (named for its inventor, Taher Elgamal),
RSA (named for its inventors, Ron Rivest, Adi Shamir, and
Leonard Adleman),
Diffie-Hellman (named, you guessed it, for its inventors),
DSA, the Digital Signature Algorithm (invented by David
Kravitz).
25
26
Enkripsi dengan PGP
27
Deskripsi dengan PGP
28
Digital signatures
29
Hash Function
30
Digital certificates
3 hal utama pada digital
certificate :
• public key.
• Certificate information.
(“Identity” informasi tentang
• satu atau lebihdigital
signatures.
31
PGP Certificate
32
Algoritma Blowfish Encipher
void Blowfish_encipher(blf_ctx *bc,
unsigned long *xl, unsigned long *xr)
{
unsigned long Xl;
unsigned long Xr;
unsigned long temp;
short
i;
Xl = *xl;
Xr = *xr;
for (i = 0; i < N; ++i)
{ Xl = Xl ^ bc->P[i];
Xr = F(bc, Xl) ^ Xr;
temp = Xl;
Xl = Xr;
Xr = temp;
}
temp = Xl;
Xl = Xr;
Xr = temp;
Xr = Xr ^ bc->P[N];
Xl = Xl ^ bc->P[N + 1];
*xl = Xl;
*xr = Xr;
}
33
Algoritma Blowfish dechiper
void Blowfish_decipher(blf_ctx *bc, unsigned long *xl, unsigned long *xr)
{ unsigned long Xl;
unsigned long Xr;
unsigned long temp;
short
i;
Xl = *xl;
Xr = *xr;
for (i = N + 1; i > 1; --i)
{ Xl = Xl ^ bc->P[i];
Xr = F(bc, Xl) ^ Xr;
/* Exchange Xl and Xr */
temp = Xl;
Xl = Xr;
Xr = temp;
}
/* Exchange Xl and Xr */
temp = Xl;
Xl = Xr;
Xr = temp;
Xr = Xr ^ bc->P[1];
Xl = Xl ^ bc->P[0];
*xl = Xl;
*xr = Xr; }
34
Pembuatan private key
void blf_key (blf_ctx *c, unsigned
char *k, int len)
{
InitializeBlowfish (c, k, len); }
35
Inisialisasi blowfish
short InitializeBlowfish(blf_ctx *bc, unsigned char key[], int
keybytes)
{ short i; short j; short k;
unsigned long data;
unsigned long datal;
unsigned long datar;
/* initialise p & s-boxes without file read */
for (i = 0; i < N+2; i++)
{ bc->P[i] = bfp[i]; }
for (i = 0; i < 256; i++)
{
bc->S[0][i] = ks0[i];
bc->S[1][i] = ks1[i];
bc->S[2][i] = ks2[i];
bc->S[3][i] = ks3[i]; }
36
j = 0;
for (i = 0; i < N + 2; ++i)
{ data = 0x00000000;
for (k = 0; k < 4; ++k)
{data = (data << 8) | key[j];
j = j + 1;
if (j >= keybytes)
{ j = 0; } }
bc->P[i] = bc->P[i] ^ data; }
datal = 0x00000000;
datar = 0x00000000;
for (i = 0; i < N + 2; i += 2)
{ Blowfish_encipher(bc, &datal, &datar);
bc->P[i] = datal;
bc->P[i + 1] = datar; }
for (i = 0; i < 4; ++i)
{ for (j = 0; j < 256; j += 2)
{ Blowfish_encipher(bc, &datal, &datar);
bc->S[i][j] = datal;
bc->S[i][j + 1] = datar; } }
return 0;}
37
System UNIX  ROT13
Sisi pengirim
C = ROT13(M)
 Sisi penerima
M = ROT13(ROT13(M))

38
ROT13 dalam bahasa perl
While (<>) {
#read a line into $
for ($i=0; $i < length($_) ; $i++) {
$ch=substr($_,$i,1);
if ((ord($ch)>=97) and (ord($ch)<=122)) {
$newch = &rot13($ch); # rotate it
printf (“%c”, $newch);
} else {
print $ch;
}
}
}
Sub rot13 {
local ($ch) = @_;
$asch = ord($ch) -97;
$rotasch= $asch + 13;
$rotasch = $rotasch % 26;
$rotasch = $rotasch + 97;
return($rotasch);
}
39
protokol komunikasi



Servis di Internet : protokol TCP atau UDP.
Setiap servis dijalankan dengan menggunakan port
yang berbeda,
misalnya:
 SMTP,
untuk mengirim dan menerima e-mail, TCP, port 25
 DNS, untuk domain, UDP dan TCP, port 53
 HTTP, web server, TCP, port 80
 POP3, untuk mengambil e-mail, TCP, port 110
40
Protokol SSL
1
Client Hello / Connection Request
Daftar algoritma / cipher suite
Pemilihan cipher suite
2
Sertifikat Digital Server
Encrypted secret / key / nonce
Client
Decrypted secret
3
Server
Sertifikat Digital Client
Encrypted secret / key / nonce
Decrypted secret
4
Kunci simteris disepakati
Transfer data dengan enkripsi kunci simetris
41
System Security: Secure Email
Isi email tidak dirahasiakan.
Diinginkan terjaganya integritas
dan non-repudiation
Keduanya disatukan dan dikirimkan
From: Budi
Subject: Kiriman
From: Budi
Subject: Kiriman
Kiriman
datang
Senin
pagi
Kiriman
datang
Senin
pagi
hash
af005c0810eeca2d5
ohx76@#
Enkripsi (dg kunci privat pengirim)
ohx76@#
42
Mengapa keamanan harus dimonitor ?



Ditemukannya lubang keamanan (security hole)
yang baru.
Kesalahan konfigurasi.
Penambahan perangkat baru
43
Sumber lubang keamanan
Salah Disain
 Implementasi kurang baik
 Salah konfigurasi
 Salah menggunakan program atau sistem

44
Topologi Lubang Keamanan
Network
sniffed,
attacked
ISP
Holes
Internet
Network
sniffed, attacked
Users
Network
sniffed,
attacked,
flooded
1.
2.
3.
System (OS)
Network
Applications + db
Web Site
Trojan horse
Userid, Password,
PIN, credit card #
www.bank.co.id
- Applications
(database,
Web server)
hacked
-OS hacked
45
Penguji keamanan sistem


sistem yang berbasis UNIX, tools :
 Cops
 Tripwire
 Satan/Saint
 SBScan: localhost security scanner
sistem yang berbasis Windows NT:
 Ballista yang dapat diperoleh dari:
<http://www.secnet.com>
46
Penggunaan sistem pemantau jaringan

Contoh program network monitoring / management :
 Etherboy (Windows), Etherman (Unix)
 HP Openview (Windows)
 Packetboy (Windows), Packetman (Unix)
 SNMP Collector (Windows)
 Webboy (Windows)
47
Teknologi Informasi


Teknologi yang terkait dengan pembuatan, pengolahan, distribusi,
penyimpanan dari informasi
Menghasilkan produk dan layanan yang sudah kita gunakan sehari-hari
sebagai “manusia moderen”
 Mesin ATM di bank
 Telepon, handphone, SMS
 Games, PlayStation, on-line games
 P2P applications
48
Mengamankan Sistem
Informasi



Melalui layer “transport”, dapat digunakan “Secure
Socket Layer” (SSL)  untuk server web.
Secara fisik sistem diamankan dengan “firewall”
yang memisahkan sistem anda dengan Internet.
Teknik enkripsi dapat dilakukan di tingkat aplikasi
49
ANATOMY OF A HACK
The Objective
Target address range, name
space acquisition, and
information gathering are
essential to a surgical attack.
The key here is not to miss any
details.
Bulk target assessment and
identification of listening services
focuses the attacker's attention
on the most promising avenues
of entry
The Methodology
Footprinting
Scanning
More intrusive probing now
begins as attackers begin
identifying valid user accounts or
poorly protected resource
shares.
Enumeration
Enough data has been gathered
at this point to make an informed
attempt to access the target
Gaining access
If only user-level access was
obtained in the last step, the
attacker will now seek to gain
complete control of the system
Escalating
privilege
The information-gathering
proccess begins again to identify
mechanisms to gain access to
trusted systems.
Pilfering
Once total ownership of the
target is sesured, hiding this fact
from system administrators
becomes paramount, lest they
quickly end the romp.
Covering
tracksCreating
back doors
Trap doors will be laid in various
parts of the system to ensure
that priveleged access is easily
regained at the whim of the
intruder
Creating back
doors
If an attacker is unsuccessful in
gaining access, they may use
readily available exploit code to
disable a target as a last resort.
Denial of Service
The Techniques
source: hacking exposed
The Tools
Open source search
whois
Web interce to whois
ARIN whois
DNS zone transfer
USENet, search engines, Edgar
Any UNIX client
http://www.networksolutions.com/whois
http://www.arin.net/whois
dig, nslookup ls -d, Sam Spade
Ping sweep
TCP/UDP port
OS Detection
fping, icmpenum WS_Ping ProPack
nmap, SuperScan, fscan
Nmap, queso, siphon
List user accounts
List file shares
Identify applications
null sessions, DumpACL, sid2user,
OnSite Admin
showmount, NAT, Legion
banner grabbing with telnet or netcat,
rpcinfo
Password eavesdropping
File share brute forcing
Password file grab
Buffer overflows
tcpdump, L0phtcrack readsmb
NAT, legion
tftp, pwdump2 (NT)
ttdb, bind, IIS .HTR/ISM.DLL
Password cracking
Known exploits
john, L0phtcrack
lc_messages, getadmin, sechole
Evaluate trusts
Search for cleartext passwords
rhosts, LSA Secrets
user data, configuration files, Registry
Clear logs
Hide tools
zap Event Log GUI,
rootkits, file streaming
Create rouge user accounts
Schedule batch jobs
Infect startup files
Plant remotecontrol services
Install monitoring mechanisms
Replace apps with Trojans
members of wheel, Administrators
cron, AT
rc, Startup folder, Registry keys
netcat, remote.exe, VNC, BO2K
keystroke loggers, add acct. to secadmin
mail aliases
login, fpnwclnt.dll
SYN flood
ICMP techniques
Identical src/dst SYN requests
Overlapping fragment/offset
bugs
Out of bounds TCP options
(OOB)
DDoS
synk4
ping of death, smurf
land, latierra
teardrop, bonk, newtear
supernuke.exe
trinoo/TFN/stcheldraht
50
Penggunaan Enkripsi untuk meningkatkan
Keamanan
Contoh servis yang menggunakan plain
text antara lain:





akses jarak jauh dengan menggunakan telnet dan rlogin
transfer file dengan menggunakan FTP
akses email melalui POP3 dan IMAP4
pengiriman email melalui SMTP
akses web melalui HTTP
51
Membatasi akses
melalui Kontrol Akses



membatasi domain atau nomor IP yang dapat
mengakses;
menggunakan pasangan userid & password;
mengenkripsi data sehingga hanya dapat dibuka
(dekripsi) oleh orang yang memiliki kunci pembuka.
52
Pelaku di bidang Security





Information bandit
 Sekarang masih dipotretkan sebagai jagoan
 Akan tetapi akan berkurang
 the disappearance act of information bandits
Information security professionals
 Masih kurang
 Lebih menyenangkan
Keduanya menggunakan tools yang sama
Perbedaannya sangat tipis: itikad & pandangan
Jangan bercita-cita menjadi bandit!
53
Penutup


Jadilah seorang security professional dan bukan menjadi
seorang bandit
Jadilah Polisi cyber dan menjadi penjahat cyber.
54
Sumber Bacaan
1.
2.
3.
4.
5.
6.
7.
8.
Richard H. Baker, “Network Security: how to plan for it and achieve it,”McGraw-Hill
International, 1995.
Steven M. Bellovin, “Security Problems in TCP/IP Protocol Suite,”Computer
Communication Review, Vol. 19, No. 2, pp. 32-48, 1989.
Tim Berners-Lee, “Weaving the Web: the past, present and future of the world
wide web by its inventor,” Texere, 2000.
Dan Brown, “The Da Vinci Code,” Doubleday, 2003.
Lawrie Brown, “Lecture Notes for Use with Network and Internetwork Security by
William Stallings,” on-line document. <http://www1.shore.net/~ws/SecurityNotes/index.html>
Silvana Castano, Mariagrazia Fugini, Giancarlo Martella, dan Pierangela
Samarati, “Database Security,” Addison-Wesley, 1995.
Whitfield Diffie, and Martin E. Hellman, “New Directions in Cryptography,” IEEE
Transactions on Information Theory, IT-22, 6, 1976, pp. 644-654.
Bruce Schneier, “Applied Cryptography: Protocols, Algorithms, and Source Code
in C,” second edition, John Wiley & Sons, Inc., 1996.
55
Email :
asep.budiman.k@gmail.com
dinar_09@yahoo.co.id
Terima Kasih
56
Download