我目前正在解决exploit-exercises.com上的星云挑战,其中一项挑战依赖于由cron 运行的脚本。
这是由另一个用户 (flag03) 运行的,我登录的用户 (level03) 没有运行crontab -u flag03
查看作业的权限。
提示清楚地表明脚本是由 cron 运行的。此外,它是/home/flag03
目录中唯一的脚本,因此我们可能会进一步调查。
然而,如果这是真实世界,我不会知道这个脚本是由 cron 运行的。
因此,问题是,我如何从非特权用户的角度检测正在运行的任务?
我尝试了以下方法:
while true; do ps au | grep <scriptname> | grep -v grep; done;
Run Code Online (Sandbox Code Playgroud)
这使我能够看到运行了很长时间的进程,而不是那些几乎立即退出的进程。它还假定我知道脚本的名称。
具体环境是Ubuntu。我不能使用 apt-get,但我可以访问 gcc。
有任何想法吗?