khối". Hai dòng tiếp theo cho vòng lặp sẽ được thực hiện lặp đi lặp lại như một phần của vòng lặp cho mỗi mảnh cá nhân trong danh sách "listoffragments" của chúng tôi. Lần đầu tiên thông qua các vòng lặp biến "PKT" sẽ bao gồm các gói tin bị phân mảnh đầu tiên trong "listoffragment". Lần thứ hai thông qua vòng lặp nó sẽ chứa các gói tin bị phân mảnh thứ hai trong "listoffragments". Điều này sẽ lặp lại cho mỗi gói tin trong "listofpackets". Vì vậy, đối với mỗi đoạn trong "listoffragments" chúng tôi sẽ thực hiện hai dòng tiếp theo này. Việc đầu tiên, "buffer.seek (PKT [IP] .frag * 8)" đặt con trỏ sẽ được sử dụng để ghi dữ liệu trong bộ đệm với giá trị được chứa trong vị trí lĩnh vực scapy mảnh của gói hiện nhân tám. Để chuyển đổi một số vị trí scapy đoạn chúng ta nhân 8 vì mỗi người trong các mảnh vỡ sẽ chứa 8 byte (64 bit). (Kozierok, 2005) Bây giờ các con trỏ được thiết lập, các dòng tiếp theo sẽ viết payload của đoạn vào bộ đệm tại các vị trí đã được chỉ định bởi các phương pháp tìm kiếm. Một khi chúng ta đã làm điều đó cho tất cả các mảnh vỡ, chúng tôi chỉ đơn giản là truy xuất nội dung của bộ đệm với các phương thức getValue () và trả lại rằng từ chức năng của chúng tôi. (Python Software Foundation, 2012)
đang được dịch, vui lòng đợi..
