/* * * loginject.c - System Log Injector * By: Tal0n 06-22-04 * * Features: * Inject a message into any common priority/facility * Spoofing of argv[0] to not show name of program in log file * Fast, uses very low cpu, and can be used as root or as normal user * */ #include #include #include int main(int argc, char *argv[]) { if(argc == 1) { printf("\nLogInject, by Tal0n 06-22-04\n"); printf("\nUsage: %s <\"message\">", argv[0]); printf("\nType \"%s levels\" for list of log levels\n\n", argv[0]); return 0; } if(strcmp(argv[1], "levels") == 0) { printf("\nLogInject, by Tal0n 06-22-04\n"); printf("\nPriorities:"); printf("\n\t\tp0 - LOG_EMERG"); printf("\n\t\tp1 - LOG_ALERT"); printf("\n\t\tp2 - LOG_CRIT"); printf("\n\t\tp3 - LOG_ERR"); printf("\n\t\tp4 - LOG_WARNING"); printf("\n\t\tp5 - LOG_NOTICE"); printf("\n\t\tp6 - LOG_INFO"); printf("\n\t\tp7 - LOG_DEBUG"); printf("\n"); printf("\nFacilities:"); printf("\n\t\tf0 - LOG_KERN"); printf("\n\t\tf1 - LOG_USER"); printf("\n\t\tf2 - LOG_MAIL"); printf("\n\t\tf3 - LOG_DAEMON"); printf("\n\t\tf4 - LOG_AUTH"); printf("\n\t\tf5 - LOG_SYSLOG"); printf("\n\t\tf6 - LOG_LPR"); printf("\n\t\tf7 - LOG_NEWS"); printf("\n\t\tf8 - LOG_UUCP"); printf("\n\t\tf9 - LOG_CRON"); printf("\n\t\tf10 - LOG_AUTHPRIV"); printf("\n\t\tf11 - LOG_FTP"); printf("\n\n"); return 0; } strcpy(argv[0], "??"); printf("\nLogInject, by Tal0n 06-22-04\n"); printf("\nInjecting message into system log(s)...\n"); if(strcmp(argv[1], "p0") == 0) { syslog(LOG_EMERG, "%s", argv[2]); printf("\nDone.\n\n"); return 0; } if(strcmp(argv[1], "p1") == 0) { syslog(LOG_ALERT, "%s", argv[2]); printf("\nDone.\n\n"); return 0; } if(strcmp(argv[1], "p2") == 0) { syslog(LOG_CRIT, "%s", argv[2]); printf("\nDone.\n\n"); return 0; } if(strcmp(argv[1], "p3") == 0) { syslog(LOG_ERR, "%s", argv[2]); printf("\nDone.\n\n"); return 0; } if(strcmp(argv[1], "p4") == 0) { syslog(LOG_WARNING, "%s", argv[2]); printf("\nDone.\n\n"); return 0; } if(strcmp(argv[1], "p5") == 0) { syslog(LOG_NOTICE, "%s", argv[2]); printf("\nDone.\n\n"); return 0; } if(strcmp(argv[1], "p6") == 0) { syslog(LOG_INFO, "%s", argv[2]); printf("\nDone.\n\n"); return 0; } if(strcmp(argv[1], "p7") == 0) { syslog(LOG_DEBUG, "%s", argv[2]); printf("\nDone.\n\n"); return 0; } if(strcmp(argv[1], "f0") == 0) { syslog(LOG_KERN, "%s", argv[2]); printf("\nDone.\n\n"); return 0; } if(strcmp(argv[1], "f1") == 0) { syslog(LOG_USER, "%s", argv[2]); printf("\nDone.\n\n"); return 0; } if(strcmp(argv[1], "f2") == 0) { syslog(LOG_MAIL, "%s", argv[2]); printf("\nDone.\n\n"); return 0; } if(strcmp(argv[1], "f3") == 0) { syslog(LOG_DAEMON, "%s", argv[2]); printf("\nDone.\n\n"); return 0; } if(strcmp(argv[1], "f4") == 0) { syslog(LOG_AUTH, "%s", argv[2]); printf("\nDone.\n\n"); return 0; } if(strcmp(argv[1], "f5") == 0) { syslog(LOG_SYSLOG, "%s", argv[2]); printf("\nDone.\n\n"); return 0; } if(strcmp(argv[1], "f6") == 0) { syslog(LOG_LPR, "%s", argv[2]); printf("\nDone.\n\n"); return 0; } if(strcmp(argv[1], "f7") == 0) { syslog(LOG_NEWS, "%s", argv[2]); printf("\nDone.\n\n"); return 0; } if(strcmp(argv[1], "f8") == 0) { syslog(LOG_UUCP, "%s", argv[2]); printf("\nDone.\n\n"); return 0; } if(strcmp(argv[1], "f9") == 0) { syslog(LOG_CRON, "%s", argv[2]); printf("\nDone.\n\n"); return 0; } if(strcmp(argv[1], "f10") == 0) { syslog(LOG_AUTHPRIV, "%s", argv[2]); printf("\nDone.\n\n"); return 0; } if(strcmp(argv[1], "f11") == 0) { syslog(LOG_FTP, "%s", argv[2]); printf("\nDone.\n\n"); return 0; } return 0; } LogInject is a good tool to inject system log messages into log files. _________________________________________________________________ Tired of spam? Get advanced junk mail protection with MSN 8. http://join.msn.com/?page=features/junkmail