CSS Affix Plugin (Css Tingkat Lanjutan)

Pernah berkunjung ke sebuah alamat website, terus ketika scroll halaman ada bagian komponen atau elemen web yang ke tutup, tapi ada elemen yang tetep ke bawa-bawa ngikut keatas ikut ke bawah ikut sampai pada posisi tertentu. Nah yang element yang ikut-ikut itu istilahnya dalam web disebut affix.

endang-affix

Apa itu affix plugin? affix plugin yaitu plugin yang berfungsi untuk mengunci(locked) element pada area tertentu pada halaman web.

Bootstrap 3 sudah menyiapkan plugin affix ini. Apa itu bootstrap, anda bisa cari info di google. Kurang lebih seperti ini.

Bootstrap is the most popular HTML, CSS, and JavaScript framework for developing responsive, mobile-first websites.

Bootstrap adalah framework HTML, CSS dan Javascript yang sangat populer untuk membangun website yang responsive baik itu di PC atau di Mobile Smartphone.

Untuk contoh pemakaiannya cuplikan penggunaan affix adalah sebagai berikut.

<nav class="navbar navbar-inverse" data-spy="affix" data-offset-top="197">

untuk menu horizontal

dan

<ul class="nav nav-pills nav-stacked" data-spy="affix" data-offset-top="205">

untuk menu vertical.

semoga bermanfaat. wassalam.

 

 

Media tv nasional itu objective kah sekarang ?

boring

Televisi Objective Kah ?

Media tv itu sekarang objective kah? itu yang ada dalam pikiran sekarang.

Sebuah televisi yang dimana menggunakan frekuensi publik yang seharusnya netral, tapi sudah dijadikan media iklan kampanye yang partainya itu-itu saja, sebenarnya enek, tapi apa boleh buat bukan yang punya.

Rindu dimana media itu bersih dari iklan kampanye, yang baca pasti banyak yang setuju. pertanyaannya adakah aturan yang mengatur tentang iklan kampanye partai di televisi. yang dimana iklannya itu-itu saja (terlihat tidak netral, yang katanya netral) dan terus di iklan tiap beberapa menit bayangkan beberapa menit, kaya yang maksa ingin menang.

Masyarakat sudah pintar

Masyarakat di tayangkan iklan kampanye dengan isi membagi-bagikan makanan atau barang-barang lain, apa itu pencitraan saja atau tidak saya tidak tahu. Kalau ikhlas seharusnya setiap kebaikan itu di sembunyikan. Kalau ingin dilihat itu namanya di riya , sombong seperti ada udang di balik batu. Ada sesuatu imbalan timbal balik yang di harapkan. Masyarakat sekarang beda dengan dulu sudah mulai pintar dengan adanya akses internet.

Harapanya Kedepan untuk media tv

Mudah-mudahan media televisi sadar kalau memang netral ya harus netral. kalau bisa jangan ada iklan kampanye. masyarakat sudah sabar dengan lama iklan-iklan produk, sekarang ditambah dengan iklan kampanye, bahkan di tayangan di waktu kartun anak-anak yang dimana ga akan ngerti politik. Sebelum kesan per televisian jadi ajang kampanye kepentingan partai politik semata lebih baik iklan kampanye di hentikan saja.

Televisi nasional adalah frekuensi publik milik publik bukan pribadi. Jangan manfaatkan kebiasaan masyarakat menonton tv yang sudah lama berjalan dan jadi kebiasaan di salah gunakan. Gunakan media lain seperti youtube atau internet untuk kampanye, dimana masa yang suka boleh nonton berkali-kali sesukanya. kalau di televisi kan, jadinya merasa di paksa nonton.

Pemirsa sebenarnya ingin nonton yang di tuju hiburan dst, iklan produk bisa di terima, tapi untuk kampanya kayanya tidak.

maaf apabila ada yang salah dan terimakasih. wassalam.

CARA KERJA LOCAL FILE INCLUSION

LFI berasal dari input pengguna yang tidak bersih. LFI sangat umum di situs web yang menjalankan php.

Berikut adalah contoh kode-php yang rentan terhadap LFI. Seperti yang bisa dilihat, kita hanya memasukkan parameter-url ke fungsi-kebutuhan tanpa filter. Jadi pengguna bisa menambahkan path ke file apa pun.

Dalam contoh ini pengguna bisa memasukkan karakter apapun dan mengambil file C:/xampp/apache/conf/extra/httpd-vhosts.conf.

http://example.com/page=C:/xampp/apache/conf/extra/httpd-vhosts.conf

Local File Inclusion

BYPASS FILE BER-EKSTENSI PHP

Pada beberapa kasus, kita tidak bisa menampilkan beberapa file karena penulisan script pada servernya. Berikut ini contoh tampilannya:

$file = $_GET[‘page’];
require($file . “.php”);

PHP ditambahkan ke nama file, ini berarti kita tidak akan dapat menemukan file yang kita cari. Semisal kita ingin melihat file .htaccess, tidak akan bisa karena file /dir/dir/.htaccess.php tidak ada.

Local File Inclusion

Namun, jika kita menambahkan nullbyte ke akhir string-serangan, .php tidak akan terbaca. Jadi saya menambahkan %00 ke akhir string serangan.

http://example.com/page=../../../../../../etc/passwd%00

Teknik ini biasanya disebut teknik nullbyte karena %00 adalah nullbyte. Teknik ini hanya berfungsi dalam versi PHP di bawah 5.3.

Cara lain untuk mengatasi masalah ini adalah dengan menambahkan tanda tanya pada string serangan. Dengan cara ini, barang-barang setelah ditafsirkan sebagai parameter dan karenanya dikecualikan. Berikut ini sebuah contoh:

http://example.com/page=../../../../../../etc/passwd?

BYPASS PHP-EXECUTION

Jadi, jika kita menemukan LFI, kita dapat dengan mudah membaca file .txt tetapi tidak dengan .php. Itu karena file tersebut dieksekusi oleh server web, karena akhir file mereka mengatakan bahwa itu berisi kode PHP. Kita dapat mem-bypass dengan menggunakan filter-php bawaan.

http://example.com/index.php?page=php://filter/convert.base64-encode/resource=index

Local File Inclusion

Di sini saya menggunakan filter-php untuk mengonversikan isi dari sebuah file PHP menjadi base64. Sekarang kita hanya perlu men-decode-nya. Simpan teks base64 ke dalam file dan kemudian jalankan: base64 -d namafile.php

TRICKS & CHEATSHEET

Ada juga beberapa trik dan hal lain yang membantu saya saat melakukan LFI.

LINUX

Jika kita membaca file langsung di browser, maka output file akan sulit dibaca. Cara mengatasinya adalah dengan men-download file tersebut dari terminal. Tetapi itu tidak akan berhasil jika ada login yang memblokirnya. Jadi solusinya adalah:

Ini adalah tata letak default dari file-file penting.
https://wiki.apache.org/httpd/DistrosDefaultLayout

“Di Linux, /proc menyertakan direktori untuk setiap proses yang berjalan, termasuk proses kernel, di direktori bernama / proc / PID, di mana PID adalah nomor proses. Setiap direktori berisi informasi tentang satu proses, termasuk: /proc/PID/cmdline, perintah yang awalnya memulai proses. “

https://en.wikipedia.org/wiki/Procfs
https://blog.netspi.com/directory-traversal-file-inclusion-proc-file-system/

/proc/sched_debug
/proc/mounts
/proc/net/arp
/proc/net/route
/proc/net/tcp
/proc/net/udp
/proc/net/fib_trie
/proc/version
/proc/self/environ

 

WINDOWS

File yang saya gunakan pada screenshot diatas bisa didapatkan di github.com/abaykan/Labs.

REFERENSI

sumber https://abaykan.com;

PHP LFI – Local File Inclusion

Local File Inclusion merupakan salah satu tehnik vulnerabilities dari PHP.

Apa itu vulnerability ? Vulnerability adalah sesuatu yang bertalian dengan sistem komputer yang memungkinkan seseorang mengoperasikan dan menjalankannya dengan benar, atau memungkinkan pihak tak berwenang (bisa hacker) mengambil alih. Ada banyak tipe vulnerability. Ada miskonfigurasi dalam setup service, atau flaw programming service. ( sumber blackapril.tripod.com)

contoh kode php yang bisa menjadi celah keamanan adalah seperti berikut.

<?php
include $_GET[“page”];
?>

maksud dari kode diatas adalah php akan memanggil dan memproses file yang di include hasil dikirim melalui variabel GET page ($_GET[“page”] adalah variabel berisi sebuah file ekstensi php).

misal alamat yang memanggil url

index.php?page=page1.php

selain page1.php, bisa di ganti dengan page2.php atau dengan file-file lain yang ada di local.

Contoh kode diatas tidak memiliki filter untuk file-file yang boleh di include yang seharusnya ada filter.

jika saya coba ubah url menjadi

index.php?page=../../upload.php

maka web akan mengakses halaman upload.php yang dimana posisi upload diluar direktori web site atau direktori project.

apabila url diganti menjadi berikut

index.php?page=php://filter/convert.base64-encode/resource=index.php

maka halaman web akan menampilkan isi kode index.php dalam bentuk encrypt base 64.

PD9waHAKCmluY2x1ZGUgJF9HRVRbInBhZ2UiXTs=

untuk melihat isi script coba buka alamat

https://www.base64decode.org/

atau dengan tools hackbar (kalau belum terinstal anda bisa instal di browser firefox atau chrome).

endang-hackbar-base64-decode

bahayanya apabila cara ini digunakan untuk melihat file untuk login ke database. Contoh di bawah hasil dari decode base64, bisa dilihat user password untuk koneksi ke mysql.

<?php
mysql_connect(‘localhost’,’root’,’123456′);
mysql_select_db(‘endangcahyapermana’);

untuk mendecode kode diatas dan melihat kode asli file. Bahayanya LFI adalah apabila setting php.ini untuk

allow_url_include = On (default off)

endang-allow-url-include

sekarang kita coba pake php://input, di percobaan sebelumnya pake php://filter.

penggunaan php://input akan di proses dengan menggunaan bantuan alat addons hackbar dari browser.

 

Semoga bermanfaat. wassalam.

 

 

 

 

Memahami Index di Database

Apa itu index ? index adalah pointer ke suatu data dalam sebuah database. Index dapat membuat pencarian menjadi lebih cepat dan efficient.

Index dalam sebuah tabel bisa di ibaratkan seperti index dalam buku, memiliki fungsi yang sama yaitu untuk mempermudah dalam pencarian dalam sebuah informasi rinci.

Pada prakteknya tidak semua kolom dapat di jadikan index, tapi hanya pada kolom tertentu yang akan digunakan untuk pencarian misal kolom nama_lengkap dalam sebuah tabel penduduk.

endang-understanding-indexes

Contoh diatas yang menjadi index adalah kolom Last. Kolom last akan di index dan diurutkan. apabila ada penambahan data maka no urut index akan di update secara otomatis.

 

semoga bermanfaat, wassalam.

Keys, Candidate Key dan Primary Key

Ada beberapa Istilah key dalam database yaitu keys, candidate key dan primary key.

key is an attribute or collection of attributes that can be used to uniquely identify a row in a relation.

key adalah sebuah atribut atau kumpulan atribut yang bisa digunakan untuk mengidentifikasi sebuah baris atau row data.

endang-keys

dari contoh tabel di atas yang bisa menjadi key yaitu

  • id
  • email
  • (id, email)
  • (id, name)

 

a candidate key is a minimal collection of attributes that is a key.

candidate key adalah kumpulan minimal atribut dari key. syaratnya harus minimal, minimal maksudnya adalah yang tidak perlu jangan di masukan dalam candidate keys.

Contoh tabel kursus.

endang-candidate-keys

kolom student :  tidak unik data bisa terulang.
kolom student + course : unik.
kolom student + course + credit status : unik tapi bukan minimal, karena credit status tidak usah di masukan.

primary key when defining a relation, we typically choose one of the candidate keys as the primary key.

primary key adalah salah satu / pilihan dari candidate key.

student (id, name, address)

contoh di atas adalah id karena unik, dan penulisan biasanya di garis bawahi.

Sumber youtube – David G. Sullivan, Ph.D.

Semoga bermanfaat wassalam.

Membuat chart dengan zingchart

zingchart

Chart atau lebih dikenal dengan grafik adalah simbol yang merepresentasikan data. simbol bisa berbentuk bar, pie, line dan sebagainya.

Dalam sebuah pembuatan web sebuah sistem seperti penjualan statistik dan sebagainya, biasanya tidak terpisah dengan permintaan laporan berupa grafik chart dengan tujuan untuk mempermudah pembacaan, dibandingkan melihat angka-angka secara langsung.

Dalam pemrograman webbase ada salah satu tools library dari bahasa pemrograman javascript untuk membuat grafik chart yaitu zingchart. zingchart ini tidak terkait dengan library yang sudah ada, alias independent. untuk penjelasa lebih lengkap dan detail sampai dengan cara penggunaanya adapun caranya bisa di lihat dan di pelajari di web resminya langsung.

https://www.zingchart.com/

cari link downloadnya di alamat tersebut.

semoga bermanfaat wassalam.

Google Map Membuat Marker

Baik untuk belajar google map untuk membuat marker atau tanda sebuah lokasi dalam peta adalah seperti contoh kode sederhana berikut ini.

var map;
    function initMap() {
        var opts = { 'center': new google.maps.LatLng(0.573352847556387, 123.01800082297996), 'zoom': 12, 'mapTypeId': google.maps.MapTypeId.ROADMAP }
        map = new google.maps.Map(document.getElementById('map'), opts);

                var marker = new google.maps.Marker({
            position: {lat: 0.573352847556387, lng:  123.01800082297996},
            map: map,
            title: 'ALIYANDINI TANGOI'
        });
            }
    google.maps.event.addDomListener(window, 'load', init_map);


Cukup mudah caranya. semoga bermanfaat. wassalam.