cybersecurity · beginner · ~15 min · safe pentest lab
Distinguish ethical from unethical responses.
Classify a responder's next move when they find a vulnerability: report and stop, or exploit beyond authorization.
Implement int is_ethical(const char *action) that returns 1 for an ethical action and 0 for an unethical one.
action: a NUL-terminated action name the grader passes — one of "report-and-stop", "request-authorization", or "exploit-without-permission".Returns int: 1 for "report-and-stop" and "request-authorization", 0 for "exploit-without-permission".
is_ethical("report-and-stop") -> 1
is_ethical("request-authorization") -> 1
is_ethical("exploit-without-permission")-> 0
A NUL-terminated action name action.
An int: 1 for report/request actions, 0 for exploit-without-permission.
Only report-and-stop and request-authorization are ethical.
#include <string.h>
int is_ethical(const char *action) {
/* TODO */
return 0;
}
Solve this exercise in the browser editor — compile and run against the test harness, no setup required.