본문 바로가기

비박스62

[비박스를 활용한 웹 취약점 진단] 1-5. 인젝션 [OS 커맨드 인젝션] OS 커맨드 인젝션이란? - 취약한 변수로 OS 시스템 명령어를 주입해서 서버 OS에 접근하는 공격이다. 웹페이지에서 서버의 시스템 셸 호출 시 의도하지 않은 악성 명령어를 주입해서 서버의 정보를 알아낸다. ​ [난이도 하] 아무래도 nslookup 명령어를 사용해서 dns 주소를 출력하는 기능을 하는것 같다. 여기에 파이프라인 | 을 추가해서 뒤에 ls 명령어를 넣어보자. ../../../ 는 서버 상위의 디렉터리로 이동해서 해당 정보를 출력할 것이다. 그랬더니 결과값으로 서버 최상위 디렉터리의 폴더들이 노출되었다. OS 커맨드 인젝션에서 넷캣 (Netcat) 명령어를 입력하면 비박스 서버 정보를 외부에서 파악할 수 있게된다. 넷캣을 사용하기 위해 칼리리눅스를 틀어보자. nc -l -p 7777 명령어.. 2023. 12. 11.
[비박스를 활용한 웹 취약점 진단] 1-4. 인젝션 [iFrame 인젝션] IFrame 이란? > HTML 문서 안에 또 다른 HTML 문서를 출력하는 태그이다. 독립적으로 만들 수 있기 때문에 어느 위치던 상관 없이 인젝션 공격을 수행할 수 있는 태그이다. 주로 악성 URL을 삽입한 후 사이즈를 0으로 설정해서 숨기는 방법을 많이 쓴다. 악성 웹 사이트에 접속하거나 경고창을 띄울 수 있게된다. [난이도 하] iframe 페이지는 URL 창에 변수가 뜨는걸로 보아 GET 방식인것 같다. ?ParamUrl=robots.txt&ParamWidth=250&ParamHeight=250 변수는 ParamUrl과 ParamWidth,Height 3개인것 같다. URL은 연결할 주소 Width와 Height는 내용 출력 크기를 지정한다. 개발자 도구로 확인해보니 robots.txt 파일을 .. 2023. 12. 11.
[비박스를 활용한 웹 취약점 진단] 1-3. 인젝션 [HTML 인젝션 (BLOG)] 이번엔 블로그 형식이다. HTML 태그를 게시판에 저장해서 관리자가 의도하지 않은 내용을 출력하게 할 수 있다. 또는, 블로그에 실린 텍스트 필드에 내용을 입력해서 전송하고 다른 페이지로 이동한다. 그러려면 우선 텍스트 필드 코드를 가져와야하니 전에 문제에 있던 html 코드를 복사하자. POST HTML 인젝션 페이지로 가서 f12를 눌러 개발자 도구로 들어간 후 form 부분을 복사하면 된다. 복사한 코드는 아래 코드이다. First name: Last name: Go 이 코드는 input으로 받은 text 데이터를 Go 버튼으로 submit 즉 서버로 전송해주는 역할을 한다. form action을 보면 POST 메소드로 전송하되 htmli_post.php로 가게될 것이다. 만약 저기에 네이버 주소.. 2023. 12. 11.
[비박스를 활용한 웹 취약점 진단] 1-2. 인젝션 [HTML 인젝션 (POST)] 이번에는 POST 요청 메소드를 이용하여 HTML 인젝션을 해볼 것이다. POST로 하기 때문에 서버로 전송하는 변수값이 URL창에 노출되지 않는다. [난이도 하] 프록시 서버를 설정하거나 버프 슈트의 proxy 탭에 open browser를 눌러 버프슈트용 브라우저를 연뒤 bWAPP으로 이동한다. bWAPP으로 이동 시에는 intercept is on 을 off로 바꿔놔야한다. on은 상태를 얻을 때에만 잠깐 틀어둬야한다. 이동 후 post로 가서 인터셉트 on 시킨 뒤 Go 버튼을 눌러보면 Content-type, User-agent 등 HTTP 요청 정보가 나온다. 여기서 밑의 firstname 부분에 전에 입력했던 html 태그를 입력한 뒤 Forward를 눌러서 POST로 요청을 보내보자. 그러.. 2023. 12. 11.