저는 가정 학습을하고 있습니다. 저는 일부 Python 코드에 명령 삽입을 시도하려고합니다.Python : subprocess.call injection
내가 가지고있는 문제는 수표와 함께 있고, 캔트가 그것을 우회하는 것처럼 보입니다.
address = sys.argv[1]
if not re.match("\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}", address):
return usage("Invalid argument")
subprocess.call("/bin/ping -c 3 '{0}'".format (address), shell = True)
유효한 IP 주소 인 경우 위 프로세스가 올바른지 확인한 다음이를 수행하는 방법에 대해 조언 하시겠습니까? 종류 안부
, 패트릭
보이지 않는 것처럼 보입니다. 정규식 검사로이 명령 호출을 주사에서 안전하게합니다. –
@AndrewCherevatkin 아니요. 정규식은 고정되어 있지 않으므로 해당 주소 내에서 유효한 * 하위 문자열 * 만 검사합니다. – chepner