1619, 1/81 회원가입  로그인  
   sehkmg
   ftz에서 파이프와 cat을 동시에 사용해야 하는 이유

http://www.hackerschool.org/HS_Boards/zboard.php?AllArticle=true&no=1955 [복사]


흠.. 저도 (perl -e 'print "~~"'; cat) | /home/level12/attackme 를 해야하는 이유가 궁금해서 한번 연구해 봤습니다~

cat을 그냥 사용하면 입력한것을 곧바로 출력해줍니다.

/bin/bash를 치고 exit를 치면 원래대로 돌아옵니다. 하지만 perl -e 'print "ls"' | /bin/bash를 치고 exit를 치면 로그아웃 됩니다.
왜냐하면 쉘이 곧바로 종료되서 그렇게 때문입니다.
cat | /bin/bash를 치고 명령을 내리면 쉘이 실행되고 있는 상태에서 명령이 실행됩니다.

그러면 이제 (perl -e 'print "ls"'; cat) | /bin/bash를 치고 한번 아무 명령이나 내려보면 먼저 ls가 표준 입력으로 들어가고 그 다음에 입력을 해주는 명령어들이 실행되는 것을 볼 수 있을 것입니다.

ftz 깨면서 궁금해하셨을 분들이 많을것 같은데 해결 되셨나요? 누가 어떤글에 ftz clear하신분 이건 알고 넘어갔냐고 하길래 올려봤습니다~

  Hit : 9021     Date : 2012/02/12 01:07



    
cd80 이거 사실 모르고 계속 하시는분들 많죠 ㅋㅋ
저도 모르고 계속하다가 아는형한테 물어보고 알았습니다 ㅋㅋ
2012/02/12