[ Bài 1.1.4 ] Metasploit : Mixins và Plugins


[ Bài 1.1.4 ] Metasploit : Mixins và Plugins



Tiếp cận nhanh chút với Ruby :

  • Mỗi lớp chỉ có một lớp cha
  • Một lớp có thể bao gồm nhiều Mô-đun
  • Các mô-đun có thể thêm các phương thức ( methods ) mới
  • Các mô-đun có thể quá tải ( overload ) các methods cũ
  • Các mô đun Metasploit kế thừa từ Msf::Module và gồm có các mixin để thêm các tính năng.

Metasploit Mixins

  Mixins khá đơn giản, lý do tại sao :


  • Mixins bao hàm một lớp vào lớp khác 
  • Điều này vừa khác và vừa giống như thừa kế
  • Mixins có thể ghi đè các phương thức của lớp

Mixins có thể thêm các tính năng mới và cho phép các mô-đun có 'hương vị' khác nhau.

  • Giao thức cụ thể (HTTP, SMB)
  • Hành vi cụ thể (brute force)
  • connect() được triển khai bởi TCP mixin
  • connect() sau đó bị quá tải bởi FTP, SMB và khác

Mixins có thể thay đổi hành vi.

  • Quá tải mixin Scanner chạy ()
  • Thay đổi máy quét run () cho run_host ()run_range ()
  • Gọi song song dựa trên THREADS
  • bruteforce mixin cũng tương tự
Metasploit Plugins 

Plugin hoạt động trực tiếp với API.

  • Nó thao túng toàn bộ framework
  • Plugin móc vào các sự kiện của hệ thống con (subsystem)
  • Tự động hóa các thao tác 

Plugin chỉ hoạt động trong msfconsole.

  • Plugin được dùng có thể thêm các lệnh console mới
  • Mở rộng thêm chức năng của framework

Ví dụ :
class MyParent
def woof
puts “woof!”
end
end

class MyClass > MyParent
end

object = MyClass.new
object.woof() => “woof!”

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

module MyMixin
def woof
puts “hijacked the woof method!”
end
end

class MyBetterClass > MyClass
include MyMixin
end

OK ! DONE

[" Các bài viết liên quan đến Metasploit mà thuộc phần cấu trúc tổng thể của nó thì tớ chỉ dịch cho các cậu, nếu tớ hiểu thì tớ giải thích vì nó thuộc phần của các "đê vờ lớp" rồi. Mà tớ thì lại không chuyên về phần này đồng thới tớ cũng không chuyên Anh ^-^ "]
Một số mẹo nhỏ
Trương Hướng @truonghuong

Xin chào mọi người! Là mình đây, người viết những hồi kí về những chuyến đi của chính mình và hy vọng sẽ gặp được những người cùng chung sở thích với mình trên blog này!