Mass FTP Scanner

Terkadang kita ingin melakukan pengumpulan informasi dari beberapa server sekaligus. Tentunya ada berbagai tools yang memudahkan kita melakukan hal tersebut. Namun bagaimana tools itu bekerja?

Misalnya, kita ingin melihat file dan folder pada FTP Server yang mengizinkan kita untuk login secara anonymous.

Untuk melakukan itu, maka kita membutuhkan sebuah module bernama ftplib. Pada module ini ada beberapa method yang memungkinkan kita melakukan tugas tersebut, yaitu:

  • FTP, ini merupakan method untuk memulai berkomunikasi dengan FTP Server yang menjadi target kita.
  • login, ini merupakan method untuk login ke FTP Server secara anonymous
  • retrlines, ini merupakan method untuk menampilkan file dan folder pada FTP Server di layar kita.

Adapun beberapa module pendukung untuk meningkatkan efisiensi dari scipt yang kita buat adalah:

  • Module Threading, ini merupakan module untuk melakukan pekerjaan scan secara paralel serta melakukan sinkronisasi.
  • Module Queue, ini merupakan module untuk melakukan antrian terhadap thread.

Agar script ini berjalan maka membutuhkan data-data dari FTP Server yang menjadi target kita, berikut ini adalah 15 buah FTP Server yang men-share file dan folder bagi anonymous:

Screen Shot 2016-02-22 at 6.34.27 AM

Data-data FTP Server tersebut akan diterima oleh script kita melalui file bernama ftpsites.

Adapun script yang kita buat adalah sebagai berikut:

Screen Shot 2016-02-22 at 6.37.33 AM

Sedangkan hasil dari script tersebut apabila dijalankan adalah sebagai berikut (hanya menampilkan hasil dua buah FTP Server dari total 15 buah yang kita berikan pada script):

Screen Shot 2016-02-22 at 6.39.57 AM

# code snippet for mass ftp scanner