Mitigasi Malware di Web Server dan Cara Membersihkannya

Malware selalu menjadi hal yang merepotkan. Umumnya pembuat malware tidak membuat malware untuk sekedar ajang pamer layaknya defacement. Malware dibuat demi tujuan yang lebih besar dan masif, dan biasanya tidak berjalan secara sendiri-sendiri melainkan menjadi sebuah network atau perkumpulan.

Discovery

Disuatu pagi tiba-tiba salah satu website yang kami kelola menunjukkan tampilan yang aneh.

Awal Permasalahan Malware

Awal Permasalahan Malware

Melihat pesan error seperti ini tentunya yang langsung terpikir adalah memeriksa source code-nya, ada yang tidak beres. Setelah diperisa ternyata benar script-nya telah disisipi oleh malware.

Sisipan malware untuk men-trigger sesuatu

Sisipan malware untuk men-trigger sesuatu

Sisipan malware

Sisipan malware di file index.php milik WordPress

Di tahap ini kita bisa meningkatkan asumsi kita terkait dampak lainnya, bagaimana jika yang telah disisipi tidak hanya file index.php ini saja? untuk memastikannya maka perlu dilakukan pencarian lebih dalam.

Mencari potongan string dalam satu atau lebih dokumen dapat menggunakan perintah berikut:

grep -rnw . -e '@include "'

Mencari script yang terinfeksi

Mencari script yang terinfeksi

Dari hasil pencarian kita menemukan dua script yang telah terinfeksi, yakni index.php dan wp-settings.php.

Recovery

Untuk membersihkannya kita perlu membuka script tersebut dengan vim atau nano, kemudian menghapus secara manual bagian yang terinfeksi tersebut. Opsi lain yang bisa diusahakan adalah dengan cara mengupload ulang script tersebut dari versi aslinya, misalnya dari repository atau sumber lainnya.

Cleaning

Sampai sini kita sudah melakukan memperbaiki script yang terdampak oleh infeksi malware. Membersihkan malware dari server tidak cukup hanya dengan menghapus file-file yang terdampak saja, namun pembersihan dilakukan sampai ke akar atau induknya.

Tahapan selanjutnya adalah memastikan kejadian yang sama tidak terulang kembali. Dari sudut pandang hacker, saat malware yang dibuat sudah berhasil masuk dan dieksekusi kedalam sebuah sistem, hacker umumnya akan membuat jalur pintas alternatif untuk memudahkan akses kembali di kemudian hari.

Dari hasil discovery sebelumnya kita bisa mencoba memahami apa yang dilakukan potongan code tersebut. Malware umumnya disisipkan dalam bentuk yang sukar untuk dibaca atau pahami. Itulah sebabnya hampir semua malware yang disisipkan kedalam script tertanam dalam bentuk obfuscated atau setidaknya dalam bentuk base64encode. Dalam kasus ini kami mendapatkan sisipan dalam bentuk base64encode, sehingga cukup mudah untuk di-decode.

Tool untuk decode tersedia cukup banyak secara online, salah satunya malwaredecoder.com. Berikutnya cukup paste potongan malware pada tool tersebut kemudian kita aman mendapatkan target dari yang dijalankan oleh malware.

 

Hasil decode

Hasil decode

Dari tool tersebut kami mendapat bahwa yang dieksekusi adalah .2980a2fe.ico. Setiap script index.php dijalankan maka secara otomatis induk malware ini juga akan dieksekusi. Selanjutnya adalah mencari induk ini yang sudah tersebar didalam server.

find . -type f -name ".*.ico"

Yang menarik adalah nama yang digunakan induk ini cukup random sehingga tidak bisa mencarinya hanya berpatokan nama, pencarian perlu dilakukan menggunakan regex. Kemudian induk tersebut menggunakan karakter dot/titik (.) sebagai prefix namanya, dimana ini merupakan hidden file untuk sistem linux.

Mencari induk malware

Mencari induk malware

Dari hasil pencarian kami mendapati beberapa induk yang tersebar ke beberapa directory. Yang perlu dilakukan adalah menghapusnya, bisa dilakukan secara manual satu persatu atau bisa menggunakan command.

find . -type f -name ".*.ico" -exec rm -rf {} \;

Namun perlu diantisipasi bahwa menghapus sekaligus menggunakan command berpotensi menghapus file yang sebetulnya merupakan file asli sistem dan bukan malware. Ada baiknya untuk meninjau daftarnya terlebih dahulu baru kemudian dapat mulai dihapus.

Bonus

Selama menggunakan web engine tersedia di internet tentunya potensi sepertinya akan tetap ada. Misalnya WordPress, dengan tingkat flexibilitas yang cukup tinggi semua orang bisa menginstall plugin dari berbagai sumber. Jalur masuk malware paling banyak berasal dari plugin dan theme WordPress.

Kita sebagai pengelola web server mungkin dapat “sedikit” memberikan kontrol terhadap akses terhadap file system. Kita bisa mengunci directory tertentu yang berisi script inti dari aplikasi web, sehingga dapat menghindari sisipan malware dari sumber manapun.

chattr [-R] +i path/to/dir/or/file

Command diatas membuat directory atau file tidak dapat dirubah, adapun jika ingin dirubah kembali cukup mengganti karakter + menjadi -

chattr [-R] -i path/to/dir/or/file

Selengkapnya dapat membaca artikel saya lainnya tentang rekomendasi keamanan untuk web server.

Code Inception: Kemudahan Upgrade Versi PHP di PhpStorm

Upgrade selalu menjadi mimpi buruk bagi seorang developer, tidak lepas juga bagi seorang web engineer. Performance dan security menjadi dua aspek yang sangat dipertimbangkan.

Perubahan antar versi di PHP secara teknis dapat diketahui, apa saja fitur-fitur baru dan apa saja fitur-fitur yang sudah deprecated. Namun jika harus memeriksa satu persatu tentu tidak akan mudah. Bagi yang menggunakan PhpStorm masih bisa bernafas jika ada keharusan upgrade.

Memilih versi PHP

Memilih versi PHP

Memilih versi PHP sangatlah mudah, namun masalah kompatibilitas selalu membayangi. class dan function yang awalnya berjalan normal bisa jadi tiba-tiba menjadi error. Maka merupakan hal yang wajib untuk memeriksa setiap baris code berkaitan dengan perubahan versi PHP yang sudah diganti. PhpStorm menyediakan fasilitas inspection untuk mencari class atau function yang tidak kompatibel lagi dengan versi PHP yang dipilih.

Inspect code

Inspect code

Analisa

Analisa

Sampai tahap ini kita bisa memilih scope mana yang akan dianalisa, apakah keseluruhan project, directory tertentu, atau kita bisa membuat secara custom. Bagi project yang menggunakan library pihak ketiga yang cukup banyak sebaiknya bisa custom directory agar spesifik memeriksa code inti saja, tidak perlu menganalisa library yang dikembangkan oleh pihak lain.

Hasil analisa

Hasil analisa

Secara teknis banyak hal yang bisa dilakukan menggunakan fitur code inception di PhpStorm, karena hasil analisanya mencakup banyak aspek. Tapi dalam tulisan kali ini saya ingin fokus ke masalah kompatibilitas. Pada gambar pemilihan versi PHP dampaknya ditunjukkan oleh gambar diatas, pada bagian Type compatibility terdapat beberapa file yang mengalami masalah, baik dari masalah class maupun function.

Dari sana kita bisa mulai berangkat untuk fokus memperbaiki script-script yang terdampak.

Akun Instagram Baru SaldoPayPal.id ke LRsoft

Somehow, akun instagram SaldoPayPal.id kena suspend dari pihak Instagram (IG). Menelisik ke laman pusat bantuan IG, akun SaldoPayPal.id terindikasi bertindak mengatasnamakan seseorang atau organisasi. Tidak perlu berpikir lama, yang dimaksud disana sudah pasti dan tidak lain adalah PayPal.

 

SaldoPayPal.id di Instagram

SaldoPayPal.id di Instagram

Sebetulnya sejak dulu sudah wanti-wanti akan dapat masalah seperti ini karena masalah brand. Bagian dalam domain yang digunakan mengandung kata brand lain, sehingga cukup mudah untuk mendapat celah masalah.

IG saat ini salah satu dari media yang kami gunakan untuk promosi dan update seputar balance PayPal. Selain IG, kami menggunakan WhatsApp (WA) Status untuk update. Namun kendala utama selama menggunakan WA adalah, agar audience dapat melihat update dari WA Status kita perlu menyimpan kontaknya dari dua arah. Jika hanya salah satu maka WA Status tidak dapat terlihat.

IG memiliki fitur serupa dengan WA Status, yakni IG Story. Berbeda dengan WA Status, IG Story tidak mensyaratkan untuk SaldoPayPal.id dan audience nya saling terhubung satu sama lain, cukup dengan following maka audience bisa mendapatkan Story dari kami.

 

Instagram LRsoft

Instagram LRsoft

Demi melanjutkan eksistensi, kita coba pendekatan yang berbeda. Kali ini kami buat akun IG baru untuk perusahaan induknya, LRsoft Corp. Nantinya untuk update seputar balance akan kita post melalui IG Story.

Selamat Ulang Tahun Ke-8 LRsoft

Pandemi Covid-19 masih berlangsung, dan sepertinya akan tetap sejalan dengan kehidupan kita saat ini. Namun, semua orang mulai terbiasa menggunakan protokol kesehatan untuk kegiatan sehari-hari.

Saat ini saya masih menjalani aktivitas di dunia akademik, juga menjalankan startup lainnya bersama tim yang sama, PesanSayur.id (PS). Diawal beroperasinya PS disupport oleh LRsoft, mulai dari tim sampai teknologinya, sampai bisa menjadi startup seperti sekarang ini.

PesanSayur.id X Tropic

PesanSayur.id X Tropic

Seiring berjalannya operasional beberapa tawaran datang silih berganti, mulai dari tawaran untuk membuka cabang sampai tawaran untuk akuisisi. Terakhir adalah proses akuisisi dari Tropic yang kita harapkan dapat meningkatkan berbagai hal di PS sendiri.

Semoga dengan rampungnya proses akuisisi ini LRsoft dapat kembali mengibarkan sayapnya, seperti pada masa-masa awal dulu.

Dump dan Backup MySQL ke S3 DigitalOcean Spaces

Alur untuk backup otomatis database langsung ke S3 services, salah satunya ke DigitalOcean (DO) Spaces

Integrasi s3cmd

Download sesuai platform dari https://s3tools.org/s3cmd kemudian jalankan comman untuk konfigurasi :

s3cmd --configure

Lengkapi credentials sehingga dapat terhubung dengan S3 service

s3cmd lists

s3cmd lists

Script untuk Dump and Push

Buat sebuah file dengan nama do.sh berisi perintah berikut (sesuaikan variabel)

#!/bin/bash
DB_HOST={{db_name}}
DB_NAME={{db_name}}
DB_USER={{db_user}}
DB_PASS={{db_pass}}
S3_PATH=path/to/app/
FILE_NAME=mysql-$(date +%Y%m%d-%H_%M_%S)
echo "dump db..."
mysqldump -h $DB_HOST -u $DB_USER -p$DB_PASS $DB_NAME > $FILE_NAME.sql
echo "compress..."
tar -czvf $FILE_NAME.tar.gz $FILE_NAME.sql
echo "put to s3..."
s3cmd put $FILE_NAME.tar.gz s3://$S3_PATH
echo "clean up..."
rm -f $FILE_NAME*
view raw do.sh hosted with ❤ by GitHub

Atur Penjadwalan

Buka crontab mode edit dan tambahkan command berikut (waktu bisa disesuaikan) :

0 0 * * * /bin/sh ~/do.sh

Domain Local Apache di Windows Environment

Apache Web Server

Apache Web Server

Sebelumnya saya pernah menulis tentang bagaimana membuat custom local domain untuk apache pada macOS, kali ini saya akan share konfigurasi yang sama namun pada OS berbasis Windows. Secara umum alurnya tidak jauh berbeda, bahkan software-software yang digunakan pun masih tetap sama.

Kembali mengingatkan bahwa dalam konfigurasi ini kita ingin membuat lingkungan pengembangan aplikasi web kita menjadi lebih sederhana dan terstruktur, misalnya dari alamat local yang awalnya

http://localhost/project-A/subproject-A1/child-project-A11

cukup menjadi http://a11.local atau http://sub1.project-a1.local

Contoh domain diatas menggunakan .local, sebetulnya tidak ada keharusan untuk menggunakan domain tersebut karena sifatnya yang memang lokal kita bisa menggunakan domain yang kita inginkan, misalnya .dev, .private, .test, dan lain sebagainya. Bahkan kita bisa menggunakan public domain (TLD) yang sudah ada, misalnya .com, .net, .org, dan lain sebagainya.

Namun menggunakan TLD tidak disarankan, karena nanti dapat menyebabkan conflict dengan public domain yang sesungguhnya.

Project Structures

Saat kita memiliki beberapa project alangkah baiknya kita memiliki satu root folder yang berisi semua project didalamnya, kemudian berjenjang ke sub-folder sebagai representasi sub-aplikasi, dan seterusnya. Contohnya gambar dibawah adalah struktur project yang saat ini saya gunakan.

Saya menempatkan root folder langsung dibawah C:\, dengan begitu begitu saya perlu masuk kedalam folder tersebut melalui mode terminal (CLI) akan lebih mudah dijangkau. Dari struktur folder diatas umumnya saya membentuk domain lokal sesuai project

  • unram.local –> C:\Sites\unram
  • e-pay.unram.local –> C:\Sites\unram\e-pay
  • form.if.unram.local –> C:\Sites\unram\if\form
  • dan seterusnya

Hal ini juga untuk memudahkan dalam mengingat project ketika sudah di-deploy ke stage production

  • unram.local –> unram.ac.id
  • e-pay.unram.local –> e-pay.unram.ac.id
  • form.if.unram.local –> form.if.unram.ac.id
  • dan seterusnya

Web Development Tools

XAMPP adalah web development stack yang sudah familiar bagi pengguna Windows, dalam tulisan ini tools yang akan digunakan adalah software tersebut. Dengan menggunakan software ini kebutuhan software lainnya untuk web server dapat terpenuhi, diantaranya Apache, MySQL, dan PHP.

XAMPP Main

XAMPP Main

Apache Config

Mulai dari Apache, secara default XAMPP mengarahkan root folder untuk aplikasi-aplikasi web yang berjalan dibawah localhost ke C:\xampp\htdocs. Secara teknis kita tetap bisa menggunakan folder ini, namun sedikit lebih panjang ketika kita perlu akses melalui terminal, untuk itu kita perlu arahkan ke root folder yang telah dijelaskan diatas yakni C:\Sites.

Untuk mengarahkan root folder apache ke C:\Sites kita bisa merubah konfigurasi yang ada pada file httpd.conf. Untuk membuka file tersebut dari halaman main XAMPP pada bagian apache klik Config –> Apache (httpd.conf).

Setelah itu mestinya akan terbuka notepad yang berisi file httpd.conf

Yang perlu dilakukan selanjutnya adalah mencari baris yang berisi text

DocumentRoot "C:/xampp/htdocs"
<Directory "C:/xampp/htdocs">

Kemudian menggantinya dengan 

DocumentRoot "C:/Sites"
<Directory "C:/Sites">

Selanjutnya simpan (ctrl+s) dan tutup Notepad. Untuk memastikan tidak ada yg salah kita perlu stop apache dan start kembali. Jika pada kolom PID(s) dan Port(s) nya muncul angka berarti tidak ada masalah, konfigurasi sudah sesuai.

Apache Virtual Hosts

Dalam tulisan ini misalnya saya ingin membuat vhost untuk domain form.if.unram.local maka sebelumnya saya harus memiliki folder di C:\Sites\unram\if\form. Selanjutnya kita perlu menambahkan host baru pada konfigurasi apache, file yang perlu dibuka adalah C:\xampp\apache\conf\extra\httpd-vhosts.conf.

Pada baris paling akhir tambahkan text berikut

<VirtualHost *:80>
    ServerAdmin zaf@elektro08.com
    DocumentRoot "C:/Sites/unram/if/form"
    ServerName form.if.unram.local
    ErrorLog "logs/form.if.unram.local-error.log"
    CustomLog "logs/form.if.unram.local-access.log" common
</VirtualHost>

Konfigurasi diatas adalah untuk satu host yakni form.if.unram.local, jika ingin menambahkan host lainnya tinggal menambahkan konfigurasi yang sama seperti cara diatas, namun path dan name nya perlu disesuaikan. Jangan lupa setiap melakukan perubahan terhadap konfigurasi apache perlu distop dan distart kembali.

OS Hosts

Terakhir adalah melakukan konfigurasi pada internal DNS pada OS yang digunakan. Domain http://localhost akan selalu mengarah ke 127.0.0.1, custom domain http://form.if.unram.local tidak otomatis mendapatkan IP melainkan kita perlu memetakan domain tersebut menjadi domain local, yakni ke 127.0.0.1 juga.

Untuk memudahkan pengelolaan kita bisa menggunakan software Hosts File Editor.

Jika sudah diisi terakhir adalah tinggal mencoba akses domain local tersebut

Logging Report PHP pada Web Server Apache ke Telegram

Sistem atau aplikasi yang baik adalah yang memiliki tingkat error yang minim, bahkan jika memungkinkan tidak terdapat error sekecil apapun. Namun seperti yang dikatakan banyak orang, tidak ada sistem yang sempurna, yang ada hanya bagaimana meminimalisir error tersebut.

Log membantu developer untuk melakukan identifikasi jika ada hal yang tidak sesuai antara design dengan output, sehingga proses perbaikan dapat dilakukan dengan cepat.

Sistem log sangat penting, baik pada development stage maupun di production. Saat masih berada pada development stage kita umumnya mengembangkan dan memantau log pada saat yang bersamaan. Hal yang berbeda terjadi pada production stage, dimana kita tidak memantau lagi log yang dihasilkan. Salah satu opsi yang bisa dimanfaatkan untuk monitoring log di server adalah dengan menggunakan Telegram.

Kita biasanya lebih peka terhadap notifikasi yang masuk pada aplikasi chat seperti telegram.

Apache Log Telegram Notif

Apache Log Telegram Notif

Untuk mewujudkan alur diatas setidaknya ada beberapa tools dan script yang perlu dikonfigurasi.

Simple Event Correlator

Jika menggunakan basis sistem operasi Ubuntu, kita bisa langsung install Simple Event Correlator (SEC) dari repository Ubuntu.

sudo apt install sec

Konfigurasi Script

Berikutnya kita perlu membuat konfigurasi untuk sec dan simpan dalam direktori yang diinginkan

type=Single
ptype=RegExp
pattern=\[php7\:
desc=$0
action=shellcmd /path/to/dir/tg-send.sh "$0"
view raw php7err.conf hosted with ❤ by GitHub

Selanjutnya kita perlu membuat script untuk mengirim pesan ke Telegram menggunakan Telegram API, tapi sebelumnya kita perlu melakukan integrasi melalui BotFather yang telah disediakan telegram untuk mendapatkan Chat ID dan Token

#!/bin/bash
CHAT_ID={{channel-id}}
TOKEN={{telegram-token}}
curl -s "https://api.telegram.org/bot$TOKEN/sendMessage?chat_id=$CHAT_ID" --data-urlencode "text=[domain.com] $1"
view raw tg-send.sh hosted with ❤ by GitHub

Agar script dapat dieksekusi kita perlu merubah permission -nya

chmod +x tg-send.sh

Untuk memastikan semua sudah terkonfigurasi dengan baik, kita bisa coba kirim notif ke Telegram dengan perintah berikut

./tg-send.sh "tes pesan notif"

Jika notif pesan berhasil masuk ke Telegram, selanjutnya kita bisa menjalankan sec dengan menentukan config dan path ke apache log di web server. Untuk memudahkan eksekusi kita bisa membuat script agar mudah untuk dijalankan.

#!/bin/bash
sec -conf=/path/to/dir/php7err.conf -input=/path/to/apache2/error.log -detach
view raw run.sh hosted with ❤ by GitHub

Kita perlu merubah permission -nya lagi agar dapat dijalankan

chmod +x run.sh

Terakhir tinggal menjalankan script -nya

./run.sh

Tanda Tangan Elektronik dan Digital

Berada dalam masa pandemic seperti saat ini tidak dipungkiri telah merubah beberapa aktivitas, terutama di lingkungan akademik. Untuk keperluan administrasi, proses penandatanganan dokumen yang sebelumnya umum dilakukan menggunakan pena saat ini tidak memungkinkan lagi. Hal tersebut membuat proses administrasi menjadi cukup terganggu.

Secara umum permasalahan tersebut dapat diselesaikan dengan mengganti tanda tangan peda menjadi bentuk digital. Teknik yang banyak digunakan adalah menggunakan tanda tangan elektronik dan tanda tangan digital.

Kedua teknik tersebut masing-masing memiliki kekurangan dan kelebihan. Namun tujuan yang ingin dicapai adalah tetap sama, yakni menghadirkan kemudahan dan keamanan dalam menandatangani dokumen.

Tanda Tangan Elektronik

Tanda Tangan Elektronik memiliki pendekatan yang lebih visual dan cenderung mudah untuk digunakan. Dalam keseharian, jenis tanda tangan ini berupa hasil dari scan tanda tangan pena yang tertera pada suatu permukaan.

Contoh Tanda Tangan

Tanda Tangan

Masalah utama jenis tanda tangan ini adalah terletak pada proses otentikasinya. Siapapun dapat menggunakan tanda tangan yang sama pada sebuah dokumen, dengan begitu akan sulit untuk membuktikan keaslian dari suatu dokumen.

Pada tanda tangan elektronik, tambahan otentikasi tanda tangan dapat dicapai dengan menambahkan pengamanan berupa kode QR untuk setiap tanda tangan. Kode QR bersifat unik, berbeda antara tanda tangan satu dengan yang lainnya, untuk setiap dokumen.

Contoh Tanda Tangan + QR

Tanda Tangan + QR

Tanda tangan elektronik dengan QR memerlukan suatu pusat data yang akan digunakan untuk melakukan otentikasi terhadap setiap tanda tangan yang dibuat.

Scan Tanda Tangan Elektronik

Scan Tanda Tangan Elektronik

Dalam versi sederhana proses otentikasi sebuah tanda tangan elektronik yang memiliki QR umumnya menggunakan halaman web, beberapa lainnya menyediakan aplikasi mobile atau sejenisnya.

 

Tanda Tangan Digital

Tidak seperti tanda tangan elektronik tanda tangan digital cenderung tidak terlihat secara kasat mata, meskipun dalam beberapa keperluan pengguna dapat menyertakan keterangan bahwa dokumen yang tersebut telah ditanda tangani oleh seseorang. Tanda tangan digital umumnya digunakan untuk menandatangani dokumen dalam bentuk digital, salah satunya format PDF.

Proses Menandatangani

Dalam implementasinya proses menandatangani dokumen secara digital memerlukan sebuah kunci asimetris, berupa private dan public key. Umumnya untuk versi free kita bisa membuat custom Digital ID pada Adobe Acrobat secara langsung, setelah membuat Digital ID nantinya kita akan mendapatkan file dengan extension .pfx.

Adobe - Buat Digital ID Baru

Adobe – Buat Digital ID Baru

Versi free memang free, namun terdapat beberapa masalah pada keamanan terutama pada saat distribusi key yang nantinya akan digunakan untuk memvalidasi keaslian dokumen PDF.

Adobe - Validasi Digital ID

Adobe – Validasi Digital ID

Cara lainnya yang bisa digunakan adalah menggunakan layanan berbayar langsung dari root atau intermediate CA. Di indonesia kominfo sendiri telah menyediakan layanan untuk keperluan ini melalui PSrE, namun sejauh yang saya telusuri dari daftar yang tersedia hanya 2 penyelenggara yang terdaftar dari instansi negara. Sehingga baru ASN dari instansi terkait yang bisa menggunakan layanan tanda tangan digital tersebut, sisanya dan publik bisa menggunakan layanan dari penyelenggara non instansi negara lainnya.

Penyelenggara PSrE

Penyelenggara PSrE

Beberapa tahun yang lalu saat peluncuran awal-awal kominfo sempat membuka layanan sertifikat digital untuk umum. Caranya cukup mudah hanya mendaftar di website yang telah ditentukan, kemudian untuk proses verifikasi masyarakat cukup datang ke booth-booth terdekat untuk dicek data dan KTP. Setelah semua diverifikasi pengguna akan dikirimkan sertifikatnya langsung melalui email.

Namun saya cari-cari kembali layanan tersebut tidak ditemukan lagi…

Proses Validasi

Umumnya proses validasi tanda tangan digital tidak dapat dilakukan secara manual, namun memerlukan aplikasi pendukung. Paling umum bisa dilakukan menggunakan aplikasi Adobe Acrobat, jika membuat Digital ID secara manual maka perlu berbagi public key lagi ke orang yang akan diberikan dokumen PDF agar dapat melakukan validasi.

Jika setifikat digital kita sudah terdaftar di root atau intermediate CA maka validasi dapat dilakukan secara otomatis, tanpa perlu bertukar public key antar pengguna.

Penyedia layanan tanda tangan digital yang terdaftar di kominfo juga banyak yang telah menyediakan validasi tanda tangan digital secara online. Caranya cukup upload dokumen PDF ke layanan yang telah disediakan maka nanti akan muncul status tanda tangan digitalnya.

Validasi Self Signed PDF

Validasi Self Signed PDF

Pada gambar diatas dokumen yang saya upload adalah PDF yang telah ditandatangai dengan Digital ID hasil dari membuat baru dari Adobe Acrobat. Disana tertera tulisan “sertifikat tidak dipercaya” dan “self signed“. Jika sertifikat digital kita telah terdaftar di root atau intermediate CA maka kurang lebih tampilannya akan seperti gambar dibawah.

Validasi Signed PDF

Validasi Signed PDF

Katanya

Katanya tinggal di kampung itu nyaman …

Katanya juga tinggal di kampung itu damai …

Mereka bilang orang kampung itu punya toleransi tinggi …

 

Mari mampir di kampung tempat saya berada saat ini …

Sesungguhnya citra di media sosial dapat dimanipulasi …

Saya pastikan semua pandangan anda tentang hidup di kampung itu akan berubah …

Menelusuri Template dan Plugin yang Digunakan pada Mesin WordPress

Hampir sebagian besar website yang online di internet saat ini adalah menggunakan mesin WordPress (WP), termasuk blog saya ini. Ketika kita mengetahui bahwa engine yang digunakan dalam suatu web adalah WP dan menurut kita tampilan atau fitur-fiturnya cukup menarik, tidak jarang kita menjadi penasaran. Template atau plugin apa saja yang digunakan. Tidak heran mengapa WP lebih banyak diminati dibandingkan dengan Blogger. WP merupakan CMS independen yang dapat dengan leluasa diinstall dimanapun dan kapanpun, free tentunya.

WordPress Logo

Selain free, WP juga punya banyak koleksi template dan plugin. Untuk template dan plugin cukup banyak yang memiliki versi premium (berbayar), selain itu komunitas pengembangan template dan plugin WP cukup luas sehingga pengguna cenderung mudah untuk memanfaarkan template dan plugin yang telah dikembangkan komunitas diluar template dan plugin yang telah tersedia di koleksi WP.

Untuk mencari informasi terkait template atau plugin yang digunakan pada suatu mesin WP, saya biasanya melakukan beberapa hal dibawah ini. Namun tidak semua hal mendapatkan hasil, beberapa juga tidak mendapatkan hasil sama sekali karena dari developernya sudah cukup baik dalam menutupi atribut-atribut apa saja yang digunakannya dalam websitenya.

Informasi Footer

Langkah pertama kali yang saya lakukan adalah mencoba melihat informasi yang ada pada footer. Umumnya bagi pengguna WP awal keterangan footer akan tetap dibiarkan default, cenderung tidak diperhatikan untuk dirubah.

Informasi yang ada pada footer WP biasanya berisi keterangan copyright dan template yang digunakan.

Footer spi.unram.ac.id

Footer spi.unram.ac.id

 

Footer pasca.unram.ac.id

Footer pasca.unram.ac.id

 

Footer hi.unram.ac.id

Footer hi.unram.ac.id

View Source (Style CSS)

Jika dengan melihat bagian footer WP tidak membuahkan hasil, langkah selanjutnya adalah mencari informasi pada file Style CSS. Secara garis besar, struktur template WP mewajibkan template untuk memiliki setidaknya file style.css atau style.min.css. Meskipun beberapa template yang sudah advance sering melakukan kostumisasi pada struktur styling-nya.

View source fkip.unram.ac.id

View source fkip.unram.ac.id

File style.css juga berisi meta description untuk template yang bersangkutan.

Style CSS fkip.unram.ac.id

Style CSS fkip.unram.ac.id

Class Element

Jika pada style.css maish belum membuahkan hasil, langkah terakhir yang tidak ada salahnya untuk dicoba adalah dengan mencari berdasarkan class element nya. Umumnya template memiliki format penamaan class yang unik, seringkali berbeda satu sama lain.

Saat tidak memiliki informasi apapun terkait info template yang digunakan, kata kunci yang bisa digunakan untuk pencarian di mesin pencari adalah nama class element nya.

Class HTML unram.ac.id

Class HTML unram.ac.id

 

Search class HTML

Search class HTML