2012-07-19 9 views
2

저는 스크립팅, 퍼지 및 버퍼 오버 플로우에 대한 새로운 초보자입니다. 나는 그 뒤에있는 기본 개념을 이해합니다.스크립트에서 명령 행으로 입력을 전달하는 방법

나는 스크립트 (나는 perl을 생각하고있다)에서 입력을 명령 행으로 전달할 방법을 찾고있다.

버퍼 오버플로를 위해 fuzzer를 만들려고합니다. 명령 줄에서 입력을받는 기본 C 프로그램이 있습니다.

명령 줄에서이 외부 프로그램으로 패턴을 전달할 수있는 스크립트가 필요합니다.

도움을 주시면 감사하겠습니다. 고맙습니다.

+0

'perloc perlop'에서 논의한 것처럼'qx {}'연산자 (백틱이라고도 함)를 사용할 수 있습니다. 따라서 출력을 쉽게 캡처 할 수 있습니다. 또 다른 옵션은'system'이다 ('perldoc -f system'을 보라). 또 다른 대안은'perldoc -f open'과'perldoc perlopentut'에서 논의 된'open'으로 파이프를 여는 것입니다. – DavidO

답변

1

11 개의 줄이 포함 된 입력 파일을 만들 수 있습니다 (마지막 줄은 마지막 명령 줄 입력의 입력 키를 시뮬레이션하는 빈 줄임). 그러면이 파일을 C 프로그램으로 리디렉션합니다.

./c_program < file_with_10_inputs 

당신은 래퍼 스크립트로 위의 줄을 저장할 수 있습니다 (예를 들어, auto_exec.sh)과 펄이 수행

system("sh auto_exec.sh"); 
0

난 당신이 외부 프로세스의 표준 출력을 표준 입력 처리 할 수 ​​있다고 생각, 그래서 IO::Async과 같은 모듈을 사용하는 것이 좋습니다. 많은 도움이됩니다.

+0

감사합니다. 그것은 내가 필요로했던 바로 그 것이었다. – user1495172