Python ID April 2014 Meetup

It has been announced! The Python ID April meetup here. While, you can also check the python.org events calendar. See you!

events

Posted in Uncategorized | Tagged , , | Leave a comment

PRNG vs TRNG

Saya kembali membaca buku kriptografi. Padahal buku teks kriptografi Bruce Schneier yang terkenal saja, belum selesai dibaca -_- . Buku kali ini adalah Crypto 101.

Di tengah-tengah membaca buku tentang one time pad, pikiran saya terbang akan PRNG vs TRNG. Pseudo vs Random Number Generator.

Dalam buku Crypto 101, pada bagian one time pad dijelaskan dua hal yang perlu dipastikan untuk mengatakan bahwa one time pad itu aman:

  • Harus terdiri dari data yang benar-benar random (truly)
  • Hanya digunakan sekali (sesuai dengan namanya)

Ada yang mau membantu mencerahkan saya?

Posted in Uncategorized | Tagged , , , | Leave a comment

Python dan Social Engineering

Saat mendengarkan kata-kata ‘social engineering’, entah mengapa otak saya langsung mengasosiasikan dengan ‘Social Engineering Toolkit (SET)’. Apakah otak saya sudah sedemikian teracuni dengan Python?

Bagi yang masih asing dengan kata-kata social engineering, social engineering adalah rekayasa manusia. Dalam konteks keamanan informasi, social engineering menyerang kelemahan manusia, bukan menyerang kerentanan sistem (komputer/jaringan/aplikasi).

Kok bisa Python berkaitan dengan social engineering? Saya juga masih belum tahu. Baiklah saya clone dulu, dan mulai lihat/baca isi di dalam SET ini. Berikut ini adalah URL github SET https://github.com/trustedsec/social-engineer-toolkit.

Posted in Uncategorized | Tagged , , , | Leave a comment

Foto Bersama Kopi Darat Python ID Februari 2014

Bertemu, berbagi, dan bersenang-senang ;-)

Kopi darat Python ID Februari 2014

Kopi darat Python ID Februari 2014

Kopi darat Python ID Februari 2014

Kopi darat Python ID Februari 2014

Temukan perbedaan dari kedua gambar ini.

Posted in Uncategorized | Tagged , , , , , , , , | Leave a comment

Secure Coding Guide from Apple

Jiyah. Tulisannya jadi berbahasa Inggris. Bagaimana kalau ditulis dalam Bahasa Indonesia? Panduan Menulis Kode Aman dari Apple.

Belum lama ini Apple baru saja merilis Secure Coding Guide. Dokumen ini bisa diakses dalam format HTML atau PDF.

Saya mengetahui dari salah seorang rekan saya, yang menulis hal ini pada status di Facebook. Maklum saya bukan pembaca setia hackernews atau reddit. Saya butuh melakukan diet informasi. Ada saran?

Panduan ini menjelaskan macam-macam dari security vulnerabilities. Singkat, padat namun jelas. Di bagian awal dokumen ini, dijelaskan apa itu hackers, crackers, script kiddies. Nah bagian ini yang paling saya suka:

Most attackers are not highly skilled, but take advantage of published exploit code and known techniques to do their damage

Biarpun ditulis oleh Apple, panduan ini tidak spesifik untuk aplikasi Apple. Dari dokumen ini saya jadi tahu ada materi dari David Wheeler tentang bagaimana membuat secure software. Hebatnya, David Wheeler sudah menulis/mengajar materi ini sejak tahun 2004. Lalu, bagaimana mendesain aplikasi web yang aman, dalam dokumen ini disebutkan OWASP.

Posted in Uncategorized | Tagged , , , | Leave a comment

Membandingkan 2 File di Python

Saya ingin membandingkan 2 file. Saya butuh jawaban TRUE/FALSE dari operasi perbandingan ini. Awalnya, saya berpikir untuk melakukan perbandingan layaknya membandingkan 2 string saja. Saya coba. Ternyata hasilnya tetap FALSE biarpun dua file yang saya bandingkan ini sama.

Sigh.

Hingga kemudian saya menemukan modul filecmp. Dokumentasi filecmp dapat dilihat di situs python.org.

Sekarang saya cukup memanggil dua path file yang ingin saya bandingkan.

#!/usr/bin/python

import filecmp

filecmp.cmp('/tmp/1.txt', '/tmp/2.txt')

Voila!

Posted in Uncategorized | Tagged , , , | Leave a comment

Kopdar Python dalam Kalender PyCon

feb2014-calendar

Kopdar Python Indonesia Februari 2014 kembali dimuat dalam kalendar PyCon. Tak harus mahir untuk hadir dalam kopdar ini. Jadi, jika tertarik dan ada waktu luang, mengapa tak coba datang? ;-)

Posted in Uncategorized | Tagged , , , , | Leave a comment

Hydra Python Script

To crack passwords, I have a lot of dictionaries. I use hydra to perform dictionary attack. Since these dictionaries aren’t in a single file, I should execute hydra one-by-one to perform dictionary attack using my collection of dictionaries.

I created a python script to automate this task, so I don’t have to enter one-by-one for each dictionary file. I would need os module to access the dictionary file and also subprocess module to execute hydra.

import os
from subprocess import call

First, create a function to get the full path of the dictionaries location

def listdir_fullpath(d):
    return [os.path.join(d, f) for f in os.listdir(d)]

Then create the main function

def main():
    wordlists = listdir_fullpath("/home/za/tools/wordlist")
    for wordlist in wordlists:
        print 'in progress using %s wordlist' % wordlist
        call(['hydra', '-l', 'admin', '-P', wordlist, '192.168.0.1', 'mssql', '-v', '-t', '128'])

    print 'done'

And as usual, the boilerplate

if __name__ == '__main__':
    main()

For improvements:

  • create a separate function to execute hydra
  • use argparse module to put the variables
Posted in Uncategorized | Tagged , , , | Leave a comment

Scientific Number with Python

When performing penetration testing project, we will meet numbers. Many numbers. So many numbers. Either numbers as time or numbers as combination. You may crack passwords but how much time you need to crack it? It may take only minutes but it may only take years.

This one might be difficult. We must count how many zeros to know how big is this number.

1000000

Our brain process faster if we divide every kilos from numbers

1.000.000

So we could conclude that this is one million. If the number is small, we could easily put the dots in every kilos.

Let’s start with a bigger number. If you see this combination, can you conclude how big is this number?

887669887897899887987988999875556333322

You might try to divide every kilos of it, but you better don’t. Let Python solves it.

a = 887669887897899887987988999875556333322

print '%e' % a
8.876699e+38

Voila!

If you haven’t understand what scientific number is, this is the simple example:

z = 1000000

print '%e' % z
1.000000e+06

You may omit zeros after the dot.

Posted in Uncategorized | Tagged , , | Leave a comment

Kopi Darat Python Indonesia Februari 2014

Komunitas Python Indonesia akan kembali mengadakan kopi darat Februari 2014. Sampai jumpa! Tiada kesan tanpa kehadiran mu. ;-)

Posted in Uncategorized | Tagged , , , , | Leave a comment