Thứ Ba, 13 tháng 1, 2015

HƯỚNG DẪN TỰ TẠO WORDLIST BRUTEFORE – WORDLIST FOR HASHCAT

HƯỚNG DẪN TỰ TẠO WORDLIST BRUTEFORE – WORDLIST FOR HASHCAT

HƯỚNG DẪN TỰ TẠO WORDLIST BRUTEFORE – WORDLIST FOR HASHCAT

Bạn nào đã đọc bài này thì giờ mình xin vào thẳng vấn đề http://codevl.tv/hackingsecurity/tutorial/dictionary-attack-va-brute-force-attack-vietnamese-password-dict
Ở bài trước mình nợ các bạn một cách tạo wordlist. Giờ mình xin trình bày. Bài viết này mình chỉ viết tại Codevl.net bạn nào có copy ghi nguồn để cái link coi như cảm ơn mình vì công gõ phím cho bạn copy nhé.
wordlist for hashcat
Nói sơ lại về password, nó sẽ là một câu cực ngắn có ý nghĩa gì đó với người đặt. Vậy nó là 1 câu thì nó phải được ghép từ các từ lại với nhau, hoặc đơn giản là số điện thoại di động, số điện thoại bàn, ngày tháng năm sinh.
Vậy, để tổng hợp 1 password mình chỉ cần ghép 1 từ(2 chuỗi) lại với nhau, lần lượ liên tiếp ta sẽ có pass từ đơn giản đến phức tạp và từ ngắn đến dài.
Cụ thể, để tổng hợp số điện thoại di động ở việt nam. mình xin xác định có loại sim 10 số và 11 số, nhưng cấu trúc là gồm phần đầu số (090,0169,.v.v) có thể là 3 hay 4 chữ số và phần còn lại là 1 số có 7 chữ số.
Vậy mình sẽ tao ra 2 file. 1 file chứa các đầu số, 1 file chứa các số từ 0000000 đến 9999999, rồi sau đó ghép từng đầu số với từng số bên kia, ta sẽ có một tổ hợp pass là số di động ở việt nam. Quá dễ phải k0. Bạn đã hình dung ra chưa
Đoạn code c++ sau đây sẽ thực hiện việc tổ hợp nói trên.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
void Creatlibary(){
  string Fir;
  string Sec;
   fstream fileOut;
    fileOut.open("D:Outbru.txt", ios::out|ios::app);
   fstream fileFir;
    fileFir.open("D:Firbru.txt", ios::in);
    for(;;){
     getline(fileFir, Fir);
     if (!fileFir) break;
     fstream fileSec;
      fileSec.open("D:Secbru.txt", ios::in);
      for(;;){
       getline(fileSec, Sec);
      if (!fileSec) break;
      fileOut << Fir+Sec << endl;     
      }
    fileSec.close();     
    
  fileFir.close();
  fileOut.close();   
}           
int main (void)
{
  Creatlibary();
  cout << "Hoan tat !!!" <<endl;
    return 0;
}

Ví dụ: File Firbru.txt chứa đầu số, Secbru.txt chứa dãy các số 7 chữ số. File Outbru.txt là kết quả nhận đc.
Tiếp theo, sau khi bạn tạo ra các file Outbru.txt khác nhau, bạn muốn nối chúng lại nhưng trình soạn thảo trên OS k0 cho phép làm việc này. Code sau lại giải quyết cho bạn.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
void Creatlibary(){
  string Fir;
  string Sec;
   fstream fileOut;
    fileOut.open("D:Phone.txt", ios::out|ios::app);
   fstream fileFir;
    fileFir.open("D:Namsinh.txt", ios::in);
    for(;;){
     getline(fileFir, Fir);
     if (!fileFir) break;
      fileOut << Fir << endl;           
    
  fileFir.close();
  fileOut.close();   
}           
int main (void)
{
  Creatlibary();
  cout << "Hoan tat !!!" <<endl;
    return 0;
}
Ví dụ: Nó sẽ chép nội dung của file Namsinh.txt và cuối file Phone.txt
Vậy, để tạo 1 pass dạng  Lequynh1995 bạn cần có 3 thành phần, Le , quynh, 1995
Vậy bạn sẽ chạy code tổ hợp 2 lần, tổ hợp lần 1 để ghép ra chữ Lequynh, lần 2 để ghép ra Lequynh1995.
Sau khi chốt vấn đề, vậy bạn cần chạy tổ hợp cho cái j. Cái gì đó ở ngay sau đây.
Mình đã lọc ra họ, họ đệm, tên, tên đệm, ngày tháng năm sinh. Vậy vấn đề là bạn dùng 2 code c++ của mình ở trên và 1 chút kéo léo trong suy nghĩ để tạo ra wordlist riêng.
Riêng vấn đề tạo pass này mình không sp cho bất cứ câu hỏi liên quan nào, nó quá nhạy cảm đối với hàng ngàn người sử dụng internet.
Ghi rõ nguồn Codevl Blog's khi copy lại bài viết này, cảm ơn.

Không có nhận xét nào: