proxychains vẫn còn sau khi bạn gỡ tiền tố
Theo dõi một lớp bọc proxy được nạp bất ngờ qua kế thừa LD_PRELOAD và phân biệt các lần khởi chạy tiến trình sau này với thư viện đã được nạp.
Bạn gỡ proxychains khỏi một lệnh, chạy lại và vẫn thấy thông báo khởi động của lớp bọc. Hãy kiểm tra môi trường khởi chạy trước khi tìm cài đặt trong ứng dụng.
Trên Linux, LD_PRELOAD yêu cầu trình liên kết động nạp các đối tượng chia sẻ được chỉ định trước các thư viện thông thường. Các lớp bọc proxy có thể dùng cơ chế đó để chặn các lệnh gọi mạng được hỗ trợ. Nếu ai đó đã xuất biến trong shell, các chương trình con về sau có thể kế thừa nó ngay cả khi dòng lệnh của chúng không có tiền tố lớp bọc.
Kiểm tra chỉ đọc đầu tiên trong shell đó là:
printf '%s\n' "$LD_PRELOAD"
Tìm thư viện lớp bọc proxy, nhưng vẫn giữ khả năng biến còn liệt kê các thư viện khác được nạp có chủ đích. Gỡ mọi mục một cách mù quáng có thể làm hỏng công cụ khác.
Đổi trình khởi chạy, rồi khởi chạy lại chương trình
Gỡ phần nạp trước proxy do sơ suất khỏi môi trường khởi chạy chương trình bị ảnh hưởng. Nếu tệp khởi động hoặc trình khởi chạy xuất nó, hãy sửa cả nguồn đó. Với các lần khởi chạy Bash, hãy theo thứ tự các tệp khởi động. Con mới của một shell sạch là trường hợp khác với con của terminal hoặc IDE cũ vẫn giữ biến.
Bỏ đặt một biến môi trường không gỡ thư viện khỏi tiến trình đã khởi chạy với nó. Vì vậy ứng dụng đang chạy có thể giữ lớp bọc cho đến khi được khởi động lại theo đường khởi chạy đã sửa.
Nếu biến không có, hãy xem các nguồn nạp trước khác đã cấu hình như /etc/ld.so.preload và trình khởi chạy thực tế. Cơ chế này có giới hạn: tệp thực thi tĩnh, lệnh gọi hệ thống trực tiếp và các hạn chế thực thi an toàn có thể hành xử khác. Với sudo, thứ tự lớp bọc quan trọng. Nạp trước được kế thừa giải thích việc chặn bất ngờ; đó không phải bằng chứng rằng mọi loại lưu lượng mạng đều dùng proxy.