Tôi hiện đang làm việc thông qua các thử thách Tinh vân trên mining-exercises.com và một trong những thử thách dựa trên kịch bản được điều hành bởi cron.
Điều này được điều hành bởi một người dùng khác (flag03) và người dùng mà tôi đăng nhập là (level03) không có đặc quyền để chạy crontab -u flag03
để xem công việc.
Gợi ý rõ ràng cho thấy kịch bản được chạy bởi cron. Ngoài ra, nó là tập lệnh duy nhất trong /home/flag03
thư mục, vì vậy chúng tôi có thể sẽ điều tra thêm.
Tuy nhiên, nếu đây là thế giới thực, tôi sẽ không biết rằng kịch bản này đang được điều hành bởi cron.
Vì vậy, câu hỏi là, làm thế nào tôi phát hiện ra rằng nhiệm vụ đang được chạy từ quan điểm của một người dùng không có đặc quyền?
Tôi đã thử như sau:
while true; do ps au | grep <scriptname> | grep -v grep; done;
Điều này cho phép tôi thấy các quá trình chạy trong một khoảng thời gian đáng kể, nhưng không phải là các quá trình thoát ra gần như ngay lập tức. Nó cũng cho rằng tôi biết tên của kịch bản.
Môi trường cụ thể là Ubuntu. Tôi không thể sử dụng apt-get, nhưng tôi có quyền truy cập vào gcc.
Có ý kiến gì không?
/var/log/
? Tìm kiếm thông điệp tường trình về các nhiệm vụ cron.