it-swarm-id.com

Bagaimana cara mempelajari pengujian penetrasi di rumah?

Saya tertarik untuk mempelajari etis peretasan atau pengujian penetrasi untuk menuju karier ke arah itu.

Saya memiliki pengetahuan yang kuat tentang linux dan unix, teori dan praktik komputer dasar dan pengetahuan pemrograman dasar (array, metode, loop).

Saya telah melihat gruyere dan webgoat, namun saya merasa ini terlalu canggih untuk saya. Mereka meminta untuk memecahkan suatu masalah tanpa cukup menjelaskan masalah tersebut, mengapa bisa digunakan untuk menyerang dan memberi contoh.

Apakah ada kursus atau program interaktif, gratis, yang bisa saya lakukan dari rumah sehingga saya bisa mengajari diri saya informasi ini?

Bonus akan memberikan pelajaran pemrograman yang berguna di bidang ini, misalnya mengajarkan JavaScript untuk menunjukkan serangan dan manipulasi cookie.

48
Cyrus

Opsi gratis sedikit, tetapi ada banyak video dan tutorial tentang vektor serangan khusus atau produk/alat. Mereka TIDAK akan membuat Anda menjadi Penetration Tester, tetapi mereka adalah sumber belajar gratis.

Beberapa opsi yang layak untuk memulai Anda:

Untuk latihan, ada sejumlah sumber daya:

  • Metasploitable VM (dan VM sengaja rentan lainnya)
  • DVWA
  • Mutillidae
  • WebGoat
  • Vulnhub
  • hack.me

Lakukan pencarian di situs ini untuk orang lain yang menawarkan pendapat tentang sumber belajar gratis. Tapi, satu-satunya cara untuk belajar adalah membuat tangan Anda kotor.

Terus kerjakan, dan terus ajukan pertanyaan!

51
schroeder

Selain tautan ke alat, aplikasi praktik rentan, dll., Standar Eksekusi Pengujian Penetrasi bertujuan untuk menjadi standar definitif tentang cara pendekatan pengujian: - http://www.pentest-standard.org/index.php/Main_Page

8
Rory Alsop

Anda dapat meletakkan ini di mesin virtual menggunakan VM Player dan bermain-main.

Damn Vulnerable Linux ( http://sourceforge.jp/projects/sfnet_virtualhacking/downloads/os/dvl/DVL_1.5_Infectious_Disease.iso/ )

De-Ice/Hackerdemia ( http://forums.heorot.net/ )

Untuk belajar saya akan melihat berbagai metodologi pengujian penetrasi seperti Open-Source Security Testing Metodologi Manual (http://isecom.securenetltd.com/osstmm.en.2.1.pdf). Ini biasanya memberikan daftar hal yang perlu diperiksa. Anda kemudian dapat mengambil daftar periksa ini dan mencari berbagai tutorial di web tentang cara mengalahkan berbagai teknologi.

Salah satu buku yang lebih baik yang saya baca baru-baru ini adalah Writing Security Tools and Exploits ( http://www.Amazon.com/Writing-Security-Tools-Exploits-Foster/dp/159749997/ref=sr_1_1?ie = UTF8 & qid = 1328592753 & sr = 8-1 ). Ini mencakup Majelis dasar, membuat shellcode, kiat untuk menemukan dan menulis buffer overflows, format string, heap attack, dan banyak lagi. Buku ini sedikit ketinggalan zaman dan tidak mencakup hal-hal seperti ASLR dan NX, tetapi memberikan dasar yang kuat dengan banyak contoh dengan penjelasan yang bagus.

6
Dylan

Keamanan Informasi adalah bidang yang sangat luas, terdiri dari berbagai sub-bidang: keamanan infrastruktur, keamanan aplikasi, keamanan jaringan dan sebagainya. Dari pertanyaan Anda, saya yakin bidang yang Anda minati adalah Keamanan Aplikasi Web - WebGoat dan Gruyeres adalah dua aplikasi rentan yang didedikasikan untuk mengajarkan kerentanan paling umum dalam Keamanan Aplikasi Web. Ini adalah satu-satunya subjek yang mereka sebutkan dan jelaskan.

Menurut pendapat jujur ​​saya, cara terbaik untuk memulai dalam keamanan aplikasi web, adalah membaca OWASP top 1 daftar dan penjelasan, dan kemudian terus menguji aplikasi web untuk kerentanan (tentu saja hanya terhadap mesin QA Anda sendiri atau dengan persetujuan tertulis dari administrator). Seperti yang disebutkan, seri Fundstone (sekarang McAfee) Hacme sangat baik, tersedia dalam banyak bahasa (jadi Anda mungkin menemukan bahasa yang Anda kenal) dan disertai dengan tutorial terperinci tentang cara memanipulasi dan menghancurkan aplikasi Hacme.

Untuk daftar aplikasi rentan dan mesin virtual yang lebih lengkap, Anda mungkin ingin mencoba Pasar Aplikasi Rentan

Cara luar biasa lain untuk belajar, meskipun agak lama, adalah untuk lulus Lab Keamanan MSDN yang gratis dan mengajarkan berbagai mata pelajaran:

  • Kit Pemula Pengembang: Buffer Overflows
  • Kit Pemula Pengembang: Analisis Kode
  • Kit Pemula Pengembang: Pertahanan Kompiler
  • Kit Pemula Pengembang: Pengujian Fuzz
  • Starter Kit Pengembang: Tinjauan Kode Keamanan Kit Starter Pengembang: Kerentanan Injeksi SQL

Semoga berhasil!

5
Boaz Tirosh

Sebagian besar saran di sini menunjuk pada beberapa sumber daya dan gagasan hebat. Saya sarankan menggunakan VirtualBox untuk lingkungan pengujian VM Anda. Juga, jika Anda memiliki dana cadangan, dapatkan TechNet Berlangganan sehingga Anda dapat membangun banyak kotak uji. Saya percaya CERT atau organisasi lain juga mengeluarkan beberapa gambar berbasis Windows VM yang dapat Anda unduh, tetapi saya tidak ingat pasti siapa yang melakukannya atau di mana menemukan mereka.

Sementara saya lebih suka dan merekomendasikan VirtualBox untuk menjalankan VM, perlu dicatat bahwa pengujian bekerja paling baik ketika semua VM Anda berjalan pada platform virtualisasi yang sama. Jadi, jika Anda ingin meretas sistem yang berjalan di VMWare Player, Anda juga harus memiliki sistem serangan di VMWare Player.

3
Iszi

Untuk menambahkan sedikit ke jawaban (+1) schroeder yang luar biasa.

http://exploit-exercises.com menarik; beberapa mesin virtual dengan tantangan untuk meningkat entah bagaimana. Nebula mengajarkan cara meningkatkan dari akun normal ke root di lingkungan yang cacat - banyak solusi adalah trik standar (tidak percaya variabel lingkungan atau menjalankan eval pada input pengguna atau membuat asumsi bahwa yang dapat dieksekusi akan dijalankan seperti yang disarankan).

Protobintang/fusi lebih maju (mis., Buffer overflows).

Juga merekomendasikan membaca WAHH (tidak gratis; tetapi murah) dan Pemrograman Aman di Linux/Unix .

2
dr jimbob

Saya belum membaca semua jawaban, tetapi untuk mempelajari tentang pengujian penetrasi dan melakukan ini secara gratis, Anda dapat mencoba serangkaian tutorial ini oleh irongeek.com di sini: http://www.irongeek.com/i .php? halaman = video/aplikasi web-pena-pengujian-tutorial-dengan-mutillidae

Ini adalah petunjuk untuk mengunduh aplikasi web yang secara sengaja rentan disebut mutillidae yang dapat Anda gunakan untuk berlatih menguji pena. Aplikasi, mutillidae, memiliki petunjuk yang dapat Anda aktifkan untuk dipelajari. Jika Anda memiliki beberapa jenis server LAMP, Anda cukup memasukkan folder ke folder www server Anda dan mengaksesnya di alamat loopback lokal Anda, 127.0.0.1. Anda juga harus membuat beberapa tabel database di server MySQL sehingga alat uji-pen ini mungkin lebih canggih untuk Anda saat ini. Mempopulasikan tabel tidaklah sulit. Juga tidak menciptakan database yang diperlukan. : D

Ini bagus untuk dijalankan di mesin virtual yang menjalankan Kali Linux atau Ubuntu. Terutama, jika mesin Anda memiliki cukup RAM dan daya CPU.

Anda dapat mempelajari segala macam hal dari ini seperti SQL Injection, Cross Site Scripting, dan jenis serangan lain yang dapat Anda pelajari sendiri untuk dapat bertahan melawan melalui praktik pengkodean yang aman, dll.

1
user_loser

Unduh berbagai PHP aplikasi pada periode awal. Host mereka di server lokal Anda dan kemudian coba temukan kerentanannya dengan menggunakan 2 metodologi berbeda yang Anda suka

  1. Metodologi pengujian OWASP - https://www.owasp.org/images/5/56/OWASP_Testing_Guide_v3.pdf 2.WATC - http://projects.webappsec.org/f/ WASC-TC-v1_0.pdf

Jika Anda tidak memiliki banyak pengetahuan tentang pentesting manual, jalankan acunetix dan nessus terhadap aplikasi Anda yang dihosting di localhost, lihat hasil yang dihasilkan oleh mereka dan kemudian coba untuk mengeksploitasinya secara manual menggunakan BURP suite. Itu akan memberi Anda dorongan dan kepercayaan diri.

Kemudian pilih salah satu dari metodologi ini.

Setelah Anda ahli dalam metodologi ini, cobalah membuat daftar periksa pengujian Anda sendiri dan menambahkan kotak uji baru setiap kali Anda menemukannya.

Setelah Anda melakukan semua ini, pergi untuk program karunia bug.

BUGCROWD adalah program karunia bug yang sangat terkenal dan di sini Anda dapat menemukan daftar vendor yang dapat Anda lakukan pentest. https://bugcrowd.com/list-of-bug-bounty-programs

Beginilah seharusnya seluruh proses berjalan.

1
FrOgY

Anda ingin memulai dari dasar? Lompat ke 0:57

Hampir semua eksploitasi ada karena kita mengeksploitasi arsitektur Von Neumann. Kapan saja Anda bisa memperlakukan data sebagai kode, Anda memiliki vektor serangan. Tidak masalah apa arsitekturnya, apa platformnya, apa tumpukan teknologinya ... aplikasi web modern melintasi berbagai konteks: HTML/Javascript di browser. (Serang vektor!)

Eksploitasi berarti Anda mendapatkan target untuk mengeksekusi kode Anda. Itulah poin di balik injeksi SQL, XSS, shellcodes - tentang semuanya! Jika Anda ingin belajar menjadi pentester ... dapatkan "toolkit Sumber Terbuka Pentester." (Ada versi gratis yang dapat diperoleh secara legal.)

Kuliah-kuliah Defcon tersedia secara bebas, dan mereka adalah beberapa kelas keseluruhan terbaik yang pernah saya ikuti. Tetapi lebih dari segalanya: Anda harus membuat tangan Anda kotor. Anda menyebutkan webgoat. Apakah Anda menginstal Tamperdata di firefox? Apakah Anda menginstal wireshark? Peretasan adalah tentang memiliki alat sebanyak mungkin untuk mengumpulkan data sehingga Anda tahu apa yang terjadi. Video ini banyak berbicara tentang pemantauan ... semuanya ...

https://www.youtube.com/watch?v=Jwot7S6NmLE

0
avgvstvs

Saya ingin menambahkan dua sen ke panci. Saya pikir meninjau beberapa video keamanan Tom Scott di Computerphile dan salurannya sendiri adalah cara yang bagus untuk memulai. Mereka secara teknis terdengar dan menjelaskan konsep-konsep dengan cara yang sangat jelas. Setelah itu, biarkan rasa ingin tahu membimbing Anda.

Coba instal nmap dan lihat apa yang bisa Anda ketahui, katakanlah server Amazon. Mencari hal-hal di SQL Injection. Bagaimana dengan freestart SHA-1 atau MD5? Berapa harganya? Pertanyaan seperti ini dapat membimbing Anda lebih dalam ke bidang keamanan informasi.

Ingatlah hal ini untuk: Anda perlu mengetahui hal-hal yang Anda coba lindungi atau retas; misalnya, Anda harus tahu TCP untuk meretas jaringan dan juga JS untuk situs web.


Jawaban Jeff menawarkan beberapa wawasan, meskipun dengan cara menyamping. Coba atur server Amazon AWS Anda sendiri dan lakukan dengan menggunakan beberapa jenis alat, misalnya.

Anda juga dapat menguji keterampilan Anda sebagai peretas (secara hukum) di situs web asli dan mendapatkan sedikit adonan pada program karunia bug keamanan. Hackerone menawarkan direktori program tersebut.

0

Pertama-tama Anda harus mempertimbangkan jenis atau bidang pentesting mana yang ingin Anda mulai. Misalnya Anda dapat mulai mencari kerentanan di web (OWASP, CTF's), Anda dapat mulai mencari port terbuka dan menganalisis layanan mana yang berjalan (mencari informasi tentang eksploitasi untuk versi saat ini), dll.

Saya merekomendasikan yang pertama. Pertama karena paling mudah dipahami, kedua karena paling umum menemukan kerentanan dalam web kode yang buruk daripada dalam suatu sistem, dan ketiga karena ada banyak materi tentang subjek dan tantangan gratis di mana Anda dapat menguji pengetahuan Anda (KKP)

0
eez0

Meskipun saya bukan ahli, saya menghabiskan cukup banyak waktu dengan Hacme Bank Foundstone (hanya berpikir itu akan baik untuk menambahkan yang ini juga).

0
Lex