Sunday, May 10, 2015

General Control & Application Control (Audit Sistem Informasi Midterm#2 of 2)


General Control
General Control/ IT General Control(ITGC) adalah kebijakan dan prosedur yang berhubungan dengan aplikasi sistem informasi dan mendukung fungsi dari application control dengan cara membantu menjamin keberlangsungan sistem informasi yang ada.
Tujuannya untuk menjamin pengembangan dan implementasi aplikasi secara tepat, serta menjamin integritas dari program, data files dan operasi komputer.
Bentuk ITGC yang sering digunakan :
  1. IT Organization Structure
  2. Logical access controls over system, applications, and data.
  3. System development life cycle controls.
  4. Program change management controls.
  5. Data center physical security controls.
  6. System and data backup and recovery controls.
  7. Computer operation controls.
Struktur Organisasi IT
CIO bertanggungjawab atas IT dan merancang serta memelihara IT, IT resource, IT metric dan menetukan IT mana yang akan dikejar. Berikut struktur yang dibawahi oleh CIO
  1. Operation unit : Help desk, tellecomunication network admin web operation, change controller, librarian, data entry personnel, end user
  2. Technical support unit : data center, information center, network/LAN admin, Web admin, user training
  3. Data unit : database admin (DBAs), Data admin
  4. System and app development unit : System aanalyst, programmer, tester
Data storage and security
Keamanan data harus dijaga ketika data ada di tempatnya, saat sedang dikirim, dan saat disimpan. Bentuk pengamanan data antara lain :
  1. Pelatihan penggunaan email dan internet
  2. Larangan pemasangan aplikasi selain yang telah ada di komputer
  3. Aplikasi dijaga dalam program libraries
  4. Penggunaan software yang menghapus file tertentu secara otomatis (misal antivirus)
  5. Back up data, backup diletakkan di fasilitas yang jauh dari tempat operasional
  6. Electronic vaulting, backup dikirim secara elektronik sehingga tidak memerlukan pengiriman secara fisik
System development and maintenance
Yang berperan dalam system development :
  1. Systems proffesional : system analyst, database designer dan programmer yang merancang dan membangun sistem
  2. End user : manajer dan personil operasional
  3. Stakeholder
Pemeliharaan sistem dilakukan dengan membuat perubahan pada logika program untuk mengakomodasi perubahan kebutuhan user seiring berjalannya waktu.
Yang melakukan pengembangan sistem dan pemeliharaan sistem perlu dipisahkan untuk menghindari :
  1. Dokumentasi yang kurang cukup
  2. Program fraud, yaitu mengubah program module untuk tujuan perbuatan ilegal
Segregation of incompatible IT functions
Untuk mendukung pengendalian IT, perlu ada pemisahan wewenang yang berhubungan dengan IT dalam struktur organisasi. Pemisahan ini antara lain :
  1. Pemisahan pengembangan sistem dengan aktivitas operasi
  2. Pemisahan administrasi database dari fungsi lainnya
Logical access control over system, application and data
Logical access control digunakan untuk menjamin bahwa akses ke OS, data dan program/aplikasi dibatasi hanya kepada pengguna yang berwenang. Bentuk logical access control dapat berupa :
  1. User id dan password
  2. Access control list
  3. Token device
Logical access control biasa dibutuhkan untuk melakukan remote access control baik dari pihak internal maupun eksterna. Remote acceass control dapat berupa
  1. Dedicated Lines
  2. Automatic dial-back.
  3. Secure sockets layer (SSL):
  4. Multifactor authentication:
  5. Virtual private networks (VPN)
Application development
Pengendalian umum dalam pengembangan sistem :
  1. Dokumentasi syarat pengguna sistem dan pengukuran atas pencapaian dari syarat-syarat tersebut
  2. Penggunaan proses formal dalam menjamin bahwa syarat dari pengguna tercermin dalam rancangan dan pengembangan dari sistem.
  3. Pengujian atas aplikasi dan antarmuka oleh pengguna
  4. Merencanakan pemeliharan aplikasi.
  5. Peengendalian atas proses perubahan atas aplikasi,.
  6. Untuk pengembangan menggunakan outsource, harus ada penilaian atas kelangsungan usaha vendor.
System development life cycle
  1. System planning, set IT policy, approve plan monitor and oversight, and asess impact of IT
  2. System analysis; menunjukkan kekurangan sistem lama, mengajukan permintaan rancangan sistem baru, melakukan feasibility studies
  3. Testing, menguji kualitas dari sistem
    Testing terdiri atas kegiatan : (a) merencang rencana pengujian, (b) mengumpulkan atau membuat skenario pengujian, (c) melaksanakan pengujian (d) mengumpulkan dan mengevaluasi feedback dan (e) melaporkan hasil
    Pengujian dapat dilakukan melalui dua phase, unit/performance testing dan system testing. Unit performance dilakukan untuk menemukan bug dalam aplikasi, system testing dilakukan untuk menemukan bug yang muncul saat aplikasi berkomunikasi dengan program lain dalam sistem.
  4. Conversion, proses penutupan sistem lama dan migrasi data ke sistem baru. Untuk mengurang error saat migrasi dapat menggunakan : hash total, record count, visual inspection.
  5. Implementation, memulai sistem baru, pendekatan dalam implementasi :
    1. Bigbang/cutover, langsung pindah ke sistem baru, sistem lama tidak dipakai lagi
    2. Phased, di implementasikan bertahap dalam beberapa fase
    3. Pilot, melakukan implementasi menggunakan versi pengujian dan dijalankan sampai dilakukan implementasi penuh.
    4. Parallel, sistem lama dan baru dijalankan bersamaan dalam periode tertentu
  6. Documentation, mencatat spesifikasi, fitur keamanan, proses backup dan pencegahan fraud
Review auditor internal tehadap aktivitas SDLC, auditor haruslah memeriksa pengendalian yang berhubungan dengan :
  1. User approval, but the efficient one.
  2. Authorization procedures for program changes and new code development.
  3. Pengujian software dan quality control.
  4. Kemampuan staf proyek
Refinement/change management
Refinement terhadap aplikasi dapat dilakukan menggunakan patch. Patch adalah software yang dirancang untuk memperbaiki permasalahan dalam program atau untuk memperbaru program atau data pendukungnya. Perubahan atas aplikasi haruslah disetujui ioleh manajemen, sesuai standar pengembangan dan di tes di lingkungan "sandbox".
Dalam melakukan refinement perusahaan perlu mempertimbangkan untuk mengevaluasi investasinya pada IT, antara lain :
  1. Cost and benefit dari investasi IT baik berwujud maupun tidak
  2. Melakukan feasibility studi yg terdiri dari : scheduling, operational, technical dan economic
  3. Mempetimbangkan melakukan outsource
Data Center Physical Security Control
Dalam melakukan pengamanan data center hal-hal yang perlu diperhatikan :
  1. Lokasi , mempengaruhi kemungkinan rusaknya bangunan dan adanya bencana alam
  2. Konstruksi bangunan
  3. Physical access, seperti adanya batasan akses atas ruangan menggunakan security code, fingerprint atau keycard
  4. Air conditioning, mencegah rusaknya HW dalam kondisi suhu yang terlalu tinggi, atau risiko kerusakan karena listrik statis saat kelembaban turun.
  5. Fire suppression, adanya alarm kebakaran di tempat tertentu, pemadam api (fire extingusher)di lokasi.
  6. Fault tolerance, dapat menggunakan redundant arrays of indepent disk (RAID yaitu menyimpan data yang sama di beebrapa tempat penyimpanan di lokasi yang sama) dan UPS.
Metode dalam pemrosesan data dapat berupa :
  1. Centralized, semua data diakses dari satu server di pusat organisasi
  2. Decentralized
  3. Distributed, data didistribusi di beberapa server yang saling berhubungan dalam jaringan
Prosedur audit terhadap physical security control:
  1. Menguji konstruksi fisik
  2. Menguji sistem deteksi kebakaran
  3. Menguji access control
  4. Menguji RAID
System and Data Backup and Recovery control
Perlu adanya Disaster Recovery Plan (DRP), DRP memiliki 4 fitur :
  1. Identifikasi aplikasi penting
  2. Menciptakan tim DRP
  3. Menyediakan tempat backup
  4. Specify backup and off-site storage procedures
Jenis-jenis off-site facility :
  1. Hot site, fully stocked with HW needed, but not have org.'s data.
  2. Cold site, empty space with no computer but is set up and ready for data center.
  3. Warm site, a site partway between hot site and cold site
  4. Reciprocal aggrement, persetujuan antar beberapa organisasi membagi sumber daya saat terjadi kegagalan sistem
Operating System Control
Ruang Lingkup Pengendalian OS antara lain :
  1. Controlling access privilege, pengendalian berupa privilege/hak khusus yang menentukan directories, file, aplikasi dll yang dapat diakses oleh seseorang, tergantung dari jabatannya.
  2. Password control, pengendalian berupa password untuk akses, password yan baik haruslah diubah secara rutin, panjang dan menggunakan kombinasi huruf dan angka
  3. Virus Control, pengendalian terhadap malware seperti virus, worm, logic bomb, back door dan trojan horse, dapat menggunakan software antivirus, pembatasan akses internet dan pemasangan aplikasi tambahan.
  4. System Audit Trail Control,
    audit trail adalah jejak-jeka transaksi yang berhubungan dengan bukti audit, systemaudit trail adalah catatan/log yang merekam aktifitas signifikan dalam tingkatan sistem, aplikasi maupun pengguna. Terdapat dua jenis pengawasan audit log : (1) log of individual keystroke dan (2) event oriented logs . pengendaliannya dapat berupa : pengawsan aktifitas user, waktu log-on dan log off, upaya log on yg gagal, akses terhadap file atau aplikasi tertentu.
Internal auditing and vulnerability management
Terdapat 6 indikator lemahnya manajemen terhadap kerentanan sistem
  1. Tingginya jumlah insiden keamanan
  2. Ketidakmampuan mengidentifikasi kerentanan IT secara sistematis
  3. Ketidakmampuan untuk menilai risiko yang berhubungan dengan kerentanan sistem dan memprioritaskan mitigasi risiko ersebut
  4. Hubungan antara manajemen IT dan pengamanan IT yang kurang harmonis
  5. Kurangnya manajemen atas aset
  6. Kurangnya konfigurasi proses manajemen terintegrasi dengan upaya mitigasi atas risiko keamanan.
Cara meningkatkan manajemen kerentanan sistem
  1. Meminta dukungan manajemen senior
  2. Inventarisir seluruh aset IT dan kerentanan yang ada pada aset tersebut
  3. Memprioritaskan mitigasi atas risiko
  4. Mengurangi kerentanan sistem dengan menyajikan proyek yang direncanakan kepada manajemen IT
  5. Secara terus menerus memutakhirkan penemuan aset, uji atas kerentanan dan proses remediasi
  6. Menggunakan manajemen patch secara otomatis dan alat penemu kerentanan sistem.
Malicious software (malware), adalah software yang dirancang untuk mendapatkan akses ke komputer pengguna dengan tujuan mengendalikan atau merusak sistem atau mencuri data. Dapat berupa :
  1. Virus, kode yang menempelkan dirinya ke media penyimpanan, dokumen atau executable files dan menyebar ketika file tersebut dibagikan ke orang lain
  2. Worms, dapat mereplikasi dirinya sendiri dan mengganggu jaringan/komputer; tidak menempel kepada program/kode yang telah ada menyebar melalu mengirimkan self copies (kage bunshin?) ke komputer lain melalui jaringan. Worms digunakan untuk membuka lubang di keamanan jaringan dan melakukan DdoS yang dapat menganggu bandwith jaringan.
  3. Trojan horses, menyembunyikan dirinya menggunakan social engineering, seakan-akan program berguna (contohnya di web tertentu ada tombol download palsu, atau lewat email yg menipu), sekali terpasang di komputer dapat memasang software berbahaya lain yang berguna bagi penulis program seperti :
    1. banker programs; mencuri data rekening
    2. backdoor/trapdoor; bypass otentikasi normal untuk remote access, dapat juga berupa worm
    3. root kits : alat yang terpadang pada "root" / level admin/superuser
    4. trojan proxies : menggunakan komputer yang terinfeksi sebagai perantara untuk mengirim spam
    5. piggyback; membolehkan user yang tidak berwenang untuk memasuki jaringan
    6. logic bomb : malware yang dormant, baru aktif apabila ada variabel khusus( aksi, tanggal, ukuran) untuk menghancurkan data, misalnya apabila klik save maka semua data hilang/tanggal tertentu semua data dihapus.
Other malware
  1. box nets: program chat untuk mengirim perintah secara bersamaan kepada semua sistem atau mengupload malware
  2. spamtools : mengumpulkan alamat email untuk mengirim spam
  3. keylogger : menyimpan "keystroke" untuk mencuri password saat user sedang mengetikkan passwordnya
  4. dialer : perangkat lunak yang mampu menghubungkan sebuah komputer ke Internet guna mengirimkan informasi yang didapat oleh keylogger, spyware atau malware lain ke seseorang sehingga menguntungkan penyedia jasa internet karena biaya internet menjadi besar.
other external threats
  1. hacker, orang yang berusaha mengakses sistem tanpa otorisasi, kalau ada maksud kriminal disebut cracker (biskuit)
  2. Phishing/spoofing, website yang terlihat identik dengan yg resmi
  3. Pharming, melakukan redirect url ke situs hacker
  4. Evil twin, saudara kembar yg jahat, jaringan wifi dioperasikan palsu seakan-akan jaringan legitimate.
  5. Identity theft, judul film , berpura-pura menggunakan data identitas seseorang secara ilegal.
  6. Warddriving software, berkeliling ke berbagai ke tempat untuk mencari, mengekplorasi, bahkan mungkin juga mengekplotasi jaringan wireless yang ditemukan.
Internal threat
  1. Asynchronous attack; melemahkan sistem dengan mengubah parameter yang melemahkan keamanan saat shutdown komputer
  2. Data diddling; secara sengaja memanipulasi data
  3. Data hiding; menyembunyikan data dengan manipulasi nama file/ekstensi
  4. Backdoor/trapdoor
  5. Rounding down and salami technique
Server/mainframe malware
  1. Serangan hacker, banyak dilakukan pada server yang tersedia untuk umum
  2. Network sniffer, orang yang mengendus mendeteksi nomer kartu kredit melalui paket data yang dikirim pada jaringan.
Protecting system from malware and computer crime
  1. Menggunakan sandbox, ya semacam virtual OS, OS inside an OS, VMWare dkk, yang terpisah dari sistem asli sehingga aktifitas pada sandbox tidak mempengaruhi sistem.
  2. Menggunakan antivirus dan memutakhirkan software antivirus
  3. Hanya membolehkan mengunduh dari lokasi yang terpercaya
  4. Informasi sensitif hanya bisa diakses secara offline
  5. Menggunakan id dan password
Application Control
Aplication control adalah sistem pengendalian intern komputer yang berkaitan dengan pekerjaan atau kegiatan tertentu yang telah ditentukan.
Tujuan pengendalian aplikasi :
  1. Input data akurat, lengkap, terotorisasi dan benar
  2. Data diproses sebagaimana mestinya dalam periode waktu yang tepat
  3. Data disimpan secara tepat dan lengkap
  4. Output yang dihasilkan akurat dan lengkap
  5. Adanya catatan mengenai pemrosesan data dari input sampai menjadi output
Jenis-jenis pengendalian aplikasi :
  1. Input Control
  2. Processing Control
  3. Output Control
  4. Integrity Control
  5. Management Trail
Input Control
Pengendalian input didesain untuk menjamin bahwa transaksi valid, akurat dan lengkap.
Classes of input control :
  • Source document control
    Menggunakan dokumen sumber yang prenumbered dan berurutan serta secara periodik melakukan audit atas dokumen sumber
  • Data coding control
    mengecek integritas kode data(nomor rek pelanggan, kode persediaan dan bagan akun standar) yang digunakan dalam pemrosesan.
    • Batch control, rekonsiliasi output yang dihasilkan dengan input yang dimasukkan dalam sistem
    • Hash total, penjumlahan dari record data nonfinansial untuk menguji adanya perubahan atas data.
  • Validation control
    digunakan untuk mendeteksi kesalahan dalam data transaksi sebelum diproses. Terdapat tiga level dalam input validation control :
    • Field interrogation; memeriksa karakteristik data dalam field
      • Missing data checks
      • Numeric-alphabetic data check
      • Zero value checks
      • Limit checks
      • Range checks
      • Validity checks
      • Check digit
    • Record interrogation; validasi seluruh record dengan memeriksa hubungan antar nilai field
      • Reasonableness checks; cek nilai field apakah wajar
      • Sign checks; cek jumlah record apakah positif atau negatif
      • Sequence checks; cek apakah recordnya sudah sequntial/urut, tidak acak
    • File interrogation; memastika file yang diproses dalam sistem benar
      • Internal label checks; verifikasi apkah file yang akan diproses sesuai dengan program
      • Version checks; verifikasi versi dari file yang akan diproses sudah sesuai
      • An expiration date check; mencegah penghapusan file sebelum daluwarsa
  • Input error correction
    ketika error terdeteksi dalam batch, harus segera dikoreksi dan record disubmit ulang untuk diproses ulang. Ada 3 teknik mengatasi error:
    • Correct immediately; sistem menghentikan prosedur entri data sampai user melakukan koreksi atas kesalahan
    • Create an error file; saat error ditemukan, error diberi tanda untuk mencega pemrosesan dan dipisahkan dari batch
    • Reject the batch; kesalahan yang menyebabkan batch secara total menjadi keliru, maka seluruh batch harus ditolak sampai dikoreksi dan disubmit ulang
  • Generalized data input systems
    teknik yang secara sentralisasi dilakukan untuk mengelola data yang diinput di seluruh sistem pemrosesan dalam organisasi. Terdiri dari 5 komponen utama :
    • Generalized validation module (GVM)
    • Validated data file
    • Error file
    • Error report
    • Transaction log
Bentuk Input Control
  • Manual input control
  • Electronic input control
    • Field check; melakukan cek atas kelengkapan pengisian field
    • Format check; cek format pengisian field apakah sesuai
    • Drop down menus; menus drop down untuk menyeragamkan pengisian data
    • Edit check; uji data dalam field secara otomatis
      • Control total: pengendalian atas terjadinya perubahan dari jumlah hash total
      • Range test: hanya membolehkan entri data dalam range tertentu
      • Numerical test: mencegah adanya entri alfabet dalam field
      • Limit check; entri data diatas batasan tertentu dicegah atau membutuhkan persetujuan
      • Check digit; mengecek kebenaran penjumlahan dengan menambah angka tertentu dalam nilai field
      • Record count; menghitung jumlah record
      • Historical comparison; mengukur selisih dengan record lama
      • Overflow checking; membatasi panjang field untuk mencegah angka melebihi dari maksimum yang diperbolehkan
    • Inquiry log; mengawasi akses ke record
    • Automated inputs; otomatisasi dapat mengurangi error dan meningkatkan kecepatan input, termasuk :
      • Optical character recognition
      • Scanner
      • RFID
      • Barcode
      • Magnetic ink character
Processing Control
Dibagi menjadi 3 kategori:
  1. Run-to-run control; pengendalian atas batch yang diproses yang melalui beberapa program untuk memastikan bahwa seluruh batch diproses secara lengkap dan benar.
  2. Operator intervention control; pengendalian atas intervensi program yang secara manual dilakukan oleh operator karena ada potensi human error didalamnya
  3. Audit trail control, contoh audit trail:
    1. Transaction logs
    2. Log of automatic transaction
    3. Listing of automatic transaction
    4. Unique transaction identifieers
    5. Error listing
Output Control
Output control adalah pengendalian yang memastikan bahwa output dari sistem tidak hilang, salah arah, rusak dan privasi tidak dilanggar.
Dapat berupa:
  1. Error listing; saat terjadi kesalahan maka ada laporannya
  2. Reference documents; saat sistem mengalami gangguan, ada log mengenai memory saat terjadi gangguan
  3. Spooling control; spool adalah alokasi memory sementara untuk output
  4. Working document; bukti asli (cek, invoice dsb) terjaga dengan baik, untuk membandingkan antara input dengan output
  5. Report control; laporan yang dihasilkan akurat, sederhana, tepat waktu dan berarti serta data yang didistribusikan aman
  6. Exception reporting; menyoroti data yang tidak biasa, agar dapat mengetahui sumber error yg terjadi
Pengujian atas Application Control
  1. Black box approach(around the computer).
    Auditor tidak menguji logika internal dari aplikasi, pemahaman atas aplikasi dilakukan dengan analisis flowchart dan wawancara dengan personel.
    Hanya menguji input yang dimasukkan dan melakukan verifikasi atas output yang dihasilkan.
  2. White box approach (through the computer)
    Auditor menguji logika internal dari aplikasi, beberapa teknik uji pengendaliannya antara lain :
    1. Authenticity test, verifikasi apakah sesorang/program yang berusaha mengakses sistem,otentik atau tidak
    2. Accuracy test, memastikan bahwa sistem hanya memroses data yang memenuhi kriteria tertentu (misal range test, field test, limit test)
    3. Completeness test, identifikasi adanya data yang hilang dalam batch
    4. Redundancy test, memastikan bahwa aplikasi hanya memroses tiap record sekali
    5. Access test, memastrtikan bahwa aplikasi dapat mencegah pengguna untuk mengakses data yang tidak sesuai kewenangannya
    6. Audit trail test, memastikan aplikasi menciptakan audit trail yang cukup
    7. Rounding error test/salami test, verifikasi kebenaran pembulatan yang dilakukan program

 

Computer Assisted Audit Techniques (CAAT)Tools untuk menguji pengendalian
  1. Test Data method, digunakan untuk menguji integritas aplikasi dengan memproses input data yang disiapkan khusus untuk menguji aplikasi yang sedang direview, hasil dari tes dibandingkan dengan ekspektasi output yang diharapkan untuk mendapat evaluasi yang objektif atas logika aplikasi dan keefektifan pengendalian. Tahapannya
    1. Creating test data, auditor menyiapkan data transaksi yang valid maupun tidak untuk menguji input error, logical process dan irregularity.
    2. Base Case System Evaluation (BCSE), dilakukan dengan memproses seluruh jenis transaksi secara berulang sampai didapatkan hasil; yang konsisten dan valid.
    3. Tracing, teknik menguji aplikasi dengan mengikuti alur logika aplikasi.
    Keunggulan : (1) menyediakan auditor bukti eksplisit mengenai fungsi aplikasi (2) tidak mengganggu operasi perusahaan (3) tidak banyak membutuhkan keahlian komputer yang tinggi dari pihak auditor
    Kelemahan : (1) auditor mendapatkan aplikasi untuk diuji dari personel perusahaan, sehingga ada kemungkinan diberikan versi yang berbeda dari yang digunakan (2) hanya menyediakan informasi integritas aplikasi di satu waktu tersebut (3) biaya tinggi.
  2. The Integrated Test Facility, teknik otomasi untuk menguji logika aplikasi dan pengendalian saat operasi normal sedang berjalan
    Keuntungan : (1) mendukung dilakukannya waskat atas pengendalian; (2) dapat menguji aplikasi secara ekonomis tanpa mengganggu operasional.
    Kelemahan : ada potensi merusak data perusahaan.
  3. Parallel simulation, dilakukan dengan menulis program yang mensimulasikan fitur kunci atau proses aplikasi yang sedang direview. Tahapannya :
    1. Auditor harus memahami aplikasi yang akan dir eview
    2. Auditor mengidentifikasi proses dan pengendalian dalam aplikasi yang penting untuk disimulasi
    3. Auditor membuat simulasi menggunakan 4GL atau GAS
    4. Auditor menjalankan program simulasi menggunakan data-data yang telah dipilih untuk menghasilkan output
    5. Auditor mengevaluasi dan merekonsiliasi hasil simulasi dengan hasil apabila menggunakan aplikasi aslinya.

10 comments:

  1. Thank you for the resume Jepop :D

    ReplyDelete
  2. Kodomohh.. Kodomohh.. Teman baikkuhhhh

    ReplyDelete
  3. makasih kakk... sangat membantu adek tingkat :)

    ReplyDelete
  4. untuk kepeerluar skripsi saya bingung nih kak :( tentang pengendalian umum sama aplikasi tp ga ada teori yg pas :((

    ReplyDelete
    Replies
    1. coba dicek di buku information technology auditing and assurance karangan hall singleton

      Delete