TopGit
Đánh giá repo GitHub

XNTSV: Công cụ xem cấu trúc hệ thống Windows

horsicq/xntsv
XTopGit review image for horsicq/xntsv
Review by Topgit.dev for horsicq/xntsv, with GitHub repository stats and README context.
Nhận định nhanh

XNTSV là công cụ Windows miễn phí dùng để xem cấu trúc hệ thống như PEB, TEB, PEB_LDR_DATA và EPROCESS với đầy đủ chi tiết từng trường dữ liệu. Nên dùng nếu bạn làm reverse engineering trên tiến trình Windows hoặc phát triển phần mềm bảo vệ và cần biết chính xác cách các cấu trúc chưa được tài liệu hóa đầy đủ này được sắp xếp trên Windows 7 đến Windows 11. Nên bỏ qua nếu mục tiêu của bạn là Windows XP hoặc 2000 — bản hiện tại đã ngừng hỗ trợ hai hệ điều hành này — hoặc nếu bạn cần xuất dữ liệu dạng script thay vì thao tác qua giao diện đồ họa.

Sao
★ 467
Fork
⑂ 70
Ngôn ngữ
QMake
Giấy phép
MIT
Chủ đề
Developer Tools
Cập nhật
Aug 2026
Trang chủ
GitHub

XNTSV là gì?

XNTSV là chương trình desktop trên Windows do horsicq phát triển, hiển thị các cấu trúc hệ thống nội bộ mà Windows tạo ra trong quá trình khởi tạo tiến trình, chẳng hạn như PEB, TEB, PEB_LDR_DATA và EPROCESS. Microsoft không tài liệu hóa đầy đủ các cấu trúc này và cách sắp xếp trường dữ liệu của chúng thay đổi theo từng phiên bản Windows, nên XNTSV đọc trực tiếp giá trị thực tế trên hệ thống thay vì dựa vào một bảng tham chiếu cố định. Công cụ này hướng đến người nghiên cứu Windows internals và người làm công cụ chống can thiệp, chống dịch ngược phần mềm.

Tính năng chính

  • Hiển thị đầy đủ chi tiết từng trường dữ liệu của PEB, TEB, PEB_LDR_DATA, LDR_DATA_TABLE_ENTRY, RTL_USER_PROCESS_PARAMETERS, EPROCESS và các cấu trúc khác được tạo ra khi Windows khởi tạo một tiến trình.
  • Cho phép bạn tự thêm hoặc chỉnh sửa định nghĩa cấu trúc trong file structs/ARCH/custom.json thay vì phải chờ bản cập nhật chính thức.
  • Đọc được cấu trúc ở chế độ kernel-mode, miễn là bạn ký driver bằng chứng chỉ hợp lệ hoặc chế độ test-signing của Windows.
  • Theo dõi sự khác biệt về cấu trúc giữa từng phiên bản Windows cụ thể, thay vì giả định một cách sắp xếp cố định cho tất cả.
  • Là mã nguồn mở theo giấy phép MIT, kèm hướng dẫn build trong docs/BUILD.md nếu bạn muốn tự biên dịch từ mã nguồn.
  • Có file changelog.txt trong repo để bạn xem những gì đã thay đổi giữa các bản phát hành trước khi nâng cấp.
Số sao GitHub của repo này thay đổi thế nào theo thời gian. Nguồn: star-history.com.Xem lịch sử sao

Ai được lợi từ XNTSV?

  • Người phân tích ngược file thực thi Windows cần biết chính xác cách bố trí byte của PEB, TEB hoặc EPROCESS trên đúng bản Windows họ đang nhắm tới, thay vì đoán mò từ tài liệu cũ.
  • Người phát triển phần mềm bảo vệ hoặc mã chống can thiệp cần đọc trực tiếp cấu trúc tiến trình chưa được tài liệu hóa, đúng như README của dự án mô tả.
  • Người phát triển driver ở kernel-mode muốn kiểm tra EPROCESS và các cấu trúc liên quan bằng một driver đã ký ở chế độ test.
  • Bất kỳ ai đang duy trì công cụ nội bộ cho phiên bản Windows mà XNTSV chưa có sẵn cấu trúc, có thể tự định nghĩa trường dữ liệu còn thiếu trong custom.json.

Bắt đầu với XNTSV

Tải bản phát hành từ trang GitHub Releases của dự án — đây là nơi chứa file thực thi Windows đã biên dịch sẵn. README dẫn tới một file riêng là docs/RUN.md để hướng dẫn chạy chương trình, và docs/BUILD.md nếu bạn muốn tự biên dịch từ mã nguồn QMake, nhưng nội dung cụ thể của hai file này không nằm trong README, nên các bước dòng lệnh chi tiết chưa được tài liệu hóa rõ ràng ở đây — bạn cần mở các tài liệu đó trên GitHub trước khi chạy.

Điểm mạnh

  • Bao quát đúng những cấu trúc (PEB, TEB, PEB_LDR_DATA, LDR_DATA_TABLE_ENTRY, RTL_USER_PROCESS_PARAMETERS, EPROCESS) thường gặp nhất khi làm reverse engineering trên Windows, gom hết vào một chỗ thay vì phải lục tìm rải rác trên các diễn đàn.
  • Cơ chế chỉnh sửa custom.json nghĩa là bạn không bị bó buộc vào đúng những cấu trúc mà người bảo trì dự án đã đưa sẵn — bạn có thể tự vá thêm một trường dữ liệu.
  • Giấy phép MIT nên bạn có thể đưa vào quy trình reverse engineering hoặc phần mềm bảo vệ thương mại mà không vướng ràng buộc bản quyền.
  • Hỗ trợ kernel-mode giúp nó vượt ra ngoài các cấu trúc user-mode như PEB/TEB để chạm tới EPROCESS, phần mà hầu hết công cụ giao diện nhẹ khác bỏ qua.

Hỗ trợ hệ điều hành hiện tại

  • Bản hiện tại không hỗ trợ Windows 2000, XP hay Vista — README hướng người dùng tới một bản XNTSV cũ hơn cho các hệ điều hành này, nên nếu bạn đang duy trì công cụ cho hệ thống XP đời cũ thì bản này không giúp được gì.
  • Xem cấu trúc ở kernel-mode đòi hỏi driver đã ký — bằng chứng chỉ driver hợp lệ hoặc chế độ test-signing của Windows — đây là bước thiết lập thêm mà hầu hết người dùng bỏ qua trên máy sạch.
  • README gọi tài liệu Windows cho các cấu trúc này là không chính thức và nói rằng chúng thay đổi theo từng phiên bản, nghĩa là định nghĩa cấu trúc của XNTSV có thể chậm cập nhật so với một bản Windows vừa ra mắt, cho tới khi ai đó cập nhật lại.
  • Đây là ứng dụng desktop chỉ dành cho Windows, dùng QMake để build, và README không nhắc gì tới Linux, macOS hay chế độ dòng lệnh có thể viết script, nên nó không phù hợp để đưa vào một pipeline tự động.

Công cụ thay thế cho Windows Internals

WinDbg với các lệnh mở rộng !peb / !teb — debugger chính thức của Microsoft đã hiển thị các cấu trúc này ngay trong phiên debug, không cần công cụ giao diện riêng.Process Hacker / System Informer — công cụ xem tiến trình Windows phạm vi rộng hơn, hiển thị một phần cấu trúc nội bộ tương tự cùng các tính năng quản lý tiến trình mà XNTSV không có.x64dbg — debugger Windows đa năng cho phép kiểm tra bộ nhớ PEB/TEB thủ công ngay trong lúc bạn debug tiến trình, thay vì dùng một trình xem cấu trúc độc lập.

Câu hỏi thường gặp

XNTSV hỗ trợ những phiên bản Windows nào?

XNTSV hiện hỗ trợ Windows 7, Windows 7 SP1, Windows 8, Windows 8.1, Windows Server 2016, 2019 và 2022, cùng tất cả các bản build của Windows 10 và Windows 11 build 22000, theo README của dự án.

XNTSV có xem được cấu trúc ở kernel mode không?

XNTSV hỗ trợ xem cấu trúc ở kernel-mode, nhưng README yêu cầu bạn phải ký driver bằng chứng chỉ driver hợp lệ hoặc dùng chứng chỉ test-signing trước khi nó có thể tải lên.

Làm sao để thêm cấu trúc hệ thống tùy chỉnh vào XNTSV?

Bạn có thể tự định nghĩa cấu trúc riêng bằng cách chỉnh sửa file custom.json trong thư mục structs/ARCH của dự án, thay vì phải chờ một bản cập nhật chính thức để thêm chúng.

Giấy phép của XNTSV là gì?

XNTSV được phát hành theo giấy phép MIT, theo thông tin trên repo GitHub của dự án.

XNTSV có hỗ trợ các phiên bản Windows cũ như XP không?

XNTSV không hỗ trợ Windows 2000, XP hay Vista ở phiên bản hiện tại — README khuyên bạn dùng một bản phát hành XNTSV cũ hơn nếu cần cấu trúc cho các hệ thống này.

Tải XNTSV ở đâu?

Các bản build của XNTSV được đăng trên trang GitHub Releases tại github.com/horsicq/xntsv/releases, kèm tài liệu riêng để hướng dẫn chạy và build từ mã nguồn.

Vấn đề XNTSV giải quyết

Windows không công bố tài liệu chính thức cho các cấu trúc như PEB, TEB hay EPROCESS, và cách sắp xếp trường dữ liệu của chúng thay đổi theo từng phiên bản, từng bản build — nên người nghiên cứu tiến trình Windows hoặc phải tự dò offset của từng cấu trúc cho mỗi phiên bản Windows, hoặc phải tin vào một tài liệu bên thứ ba vốn đã lỗi thời ngay khi có bản Windows mới. XNTSV giải quyết vấn đề này bằng cách đọc trực tiếp cấu trúc từ hệ thống đang chạy, đồng thời cho phép bạn tự chỉnh sửa định nghĩa cấu trúc trong file structs/ARCH/custom.json khi gặp trường dữ liệu hoặc phiên bản mới mà chưa ai kịp cập nhật tài liệu.

Nên dùng khi nào — và khi nào nên bỏ qua

Nên thử XNTSV nếu bạn làm reverse engineering tiến trình Windows, gia cố phần mềm chống can thiệp, hoặc phát triển driver, và cần thấy các trường dữ liệu PEB/TEB/EPROCESS đúng như cách Windows sắp xếp trên bản build bạn đang nhắm tới — miễn là bạn không ngại dùng một công cụ giao diện đồ họa chỉ chạy trên Windows. Nên bỏ qua nếu bạn dùng Windows XP trở về trước, cần xuất dữ liệu cấu trúc tự động cho một pipeline CI, hoặc chỉ cần vài trường dữ liệu mà WinDbg đã hiển thị sẵn bằng lệnh `!peb` — trường hợp đó thì không đáng để cài thêm công cụ này.

Repo liên quan

Nguồn & ghi công

Thông tin và nội dung README lấy từ repo GitHub horsicq/xntsv (github.com/horsicq/xntsv).

Dữ liệu GitHub · đồng bộ lần cuối 6 thg 8, 2026Đánh giá bởi Henry
Về TopGit