티스토리 뷰

수업 노트/natas

natas10 solution

오리지날초이 2023. 4. 6. 09:43

URL : http://natas10.natas.labs.overthewire.org/

id : natas10

password : D44EcsFkLxPIkAAKLosx8z3hxX1Z4MCE

(2023. 03 기준)

 

 

아까와 같은 패턴의 페이지인데 몇몇 특수문자들에 필터링을 적용했다고 합니다.

실제로 같은 방식으로 접근하니 input 값에 불법적인 문자가 포함되어 있다고 거부당하네요.

 

소스코드를 살펴보니 ; 을 포함한 몇몇 특수문자를 필터링 처리하고 있습니다.

 

기존의 방식으로는 ; 을 활용하여 하나의 명령을 완성하고 그 다음 명령을 진행해서 패스워드를 구했는데

이제는 같은 방식으로는 작동하지 않게 되었습니다.

특수문자 필터링을 우회하고 grep 명령어를 활용해 패스워드를 획득하려면 어떻게 해야할까요?

더보기

힌트는 grep 명령어는 grep [문자열패턴] [파일1] [파일2] 식으로 

복수 파일에 대해 작동이 가능하다는 부분입니다.

 

즉 기존 문제에 구현되어 있는 grep -i $key dictionary.txt 에서

$key 문자열에 추가로 검색을 할 파일명을 기재해주면 됩니다.

 

게다가 우리는 natas10 패스워드가 저장되어 있는 경로를 알고 있으므로

애초에 input text 박스에 aa /etc/natas_webpass/natas11 식으로 입력을 해주면 

서버 내부적으로 작동하는 로직은

grep -i aa /etc/natas_webpass/natas11 dictionary.txt 으로 완성됩니다.

 

; 등을 사용하지 않고 /etc/natas_webpass/natas11dictionary.txt  파일 모두에서

aa 문자열을 찾는 명령으로 변조되는 거죠.

 

하지만 /etc/natas_webpass/natas11 에 대해 aa 문자열을 검색했음에도

실제 패스워드 파일에 aa 문자열이 포함되지 않아 원하는 결과를 얻어내지 못했습니다.

 

이 경우에는 grep 으로 찾고자 하는 문자열 aa 대신 . 로 대체를 해주면

모든 문자열을 검색해주는 의미가 되기때문에 두개 파일의 내용을 모두 확인할 수 있습니다.

 


natas 사이트에서 통하는 취약점은 실제로 아주 오래전에는 통했을지도 몰라도

지금은 먹히지 않는게 대부분입니다.

 

혹시라도 natas 에서 배운 기법을 활용해서 현실세계에서 웹취약점을 탐색하는 행위는

하지 않기를 강력하게 권고합니다.

 

natas 는 보안 학습을 위해 제작된 사이트로 취약점 탐색 행위를 하는것을 허용하게끔 설계되었고

그 영향력이 제한적이지만 동일한 방식으로 현실에 존재하는 개인/상업 사이트에 취약점 점검을 한다면

여러분은 법적인 책임을 지게 될 수 있습니다.

 

국내외 대부분의 사이트들은 침입탐지 시스템 등을 운영하고 이상 탐색 행위를 추적할 수 있습니다.

 

이곳에서는 웹보안에 대한 기본적인 개념을 익히는데 만족하고

그 외 다양한 시도는 사전 협의된 테스트 환경이나 본인이 감당할 수 있는 실험 환경 등에서만

진행하길 바랍니다.

 


 

728x90
반응형

'수업 노트 > natas' 카테고리의 다른 글

natas12 solution  (0) 2023.04.19
natas11 solution  (0) 2023.04.09
natas9 solution  (0) 2023.03.13
natas8 solution  (0) 2022.05.24
natas7 solution  (0) 2022.05.17
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함