我需要一些关于 C 程序的帮助 - 它是一个反向 shell(https://github.com/arturgontijo/remoteShell/blob/master/reverseShell.c) + 提出一些参数来直接传递 IP 和 PORT,因为它工作得非常好它很稳定(不能用 TAB 自动完成内容的问题我并不在乎)但我真正关心的是,如果我在目标机器上按下,这东西会坏掉CTRL+C程序只是自行退出。现在我用这个例子来阻止CTRL+C调用:
/* Signal Handler for SIGINT */
void sigintHandler(int sig_num)
{
/* Reset handler to catch SIGINT next time.
Refer http://en.cppreference.com/w/c/program/signal */
signal(SIGINT, sigintHandler);
printf("\n Cannot be terminated using Ctrl+C \n");
fflush(stdout);
}
signal(SIGINT, sigintHandler);
我在网上找到了这个例子并将它放在我的循环中,但仍然来自客户端按下ctrl+C中断程序。我想知道dup2()
是负责那个还是什么,因为在简单的 C 程序上这实际上工作得很好。