2018. 1. 25.

SSL Pinning 우회

프록시 툴을 사용 할 경우에는 인증서 이슈로 인해 앱이 실행되지 앱은 SSL 분석이 불가능했다. 그러나 Xposed Framework, Frida, Burp Mobile Assistant, SSL Kill Switch Tweak 등을 이용하여 분석이 가능하다. (아이폰의 SSL KILL Switch 2 메뉴에서 Disable Certificate Validation 기능 활성화)


Continue reading

2017. 12. 17.

[WebGoat] 설치 in Windows

1. Java JDK 설치
오라클 홈페이지에서 JAVA JDK 파일을 다운로드 한다. 기본적으로 파로스나 버프스위트를 사용하려면 JDK 를 설치해야 하기 때문에 이 부분은 그냥 패스해도 되는 사람이 많을 듯하다.

2. Tomcat 설치과정
톰캣 홈페이지에서 원하는 버전을 다운받는다. zip 파일 형태 파일을 받아 압축만 풀면 된다. 별다른 설치과정이 필요없다.

  • tomcat.apache.org/download-90.cgi

3. webgoat 설치


필자는 webgoat-container-7.0.1-war-exec.jar 를 다운받았다.

4. happy hacking 
java -jar webgoat-container-7.0.1-war-exec.jar 명령어를 실행시킨 후 사이트(http://localhost:8080/WebGoat)에 접속하면 다음과 같은 화면을 볼 수 있다.


이 버전으로 설치했을 때의 단점은 개발자 입장이 되어 조치까지 할 수는 없다는 것이다.

참조

  • http://news.grayhash.com/category/etc/webgoat

Continue reading

2017. 12. 14.

HTML 인젝션 (Reflected/Stored)

로그인을 하거나 검색을 하는 폼에 html 코드를 주입하여 다른 동작을 수행하게 되는 것을 의미한다.

예를 들어, 로그인 창에 입력하는 html 구문을 필터링 하지 않아 아래와 같이 가짜 로그인창을 생성 할 수도 있다.


Username:<br><input type="text" name="firstname"><br>Password:<br><input type="password" name="lastname">



입력값 중에 <.>,",'를 필터링 하기 위해 htmlspecialchars 함수를 이용하면 된다. 


아래와 같이 html 코드가 반영이 안되고 화면에 그대로 출력된다.



위의 HTML 인젝션 - Reflected 와 달리 stored는 다수의 사용자를 타겟으로 하기 때문에 파급력이 더 높다고 할 수 있다.

<a href=http://www.naver.com>download</a>


기존 html 코드를 필터링 하는 경우, URL / html encode 해서 테스트 해 볼 수도 있다. 즉 html 관련 취약점을 점검할 때는, %2F 와 같은 인코디 값을 받고 디코드해서 렌드링 하는 사이트를 찾아야 한다.

  • https://hackerone.com/reports/104543

또 하나 중요한 것은, 입력 form 에서만 렌더링 되는 것이 아니라, url 입력되어 있는 값이 렌더링 될 수도 있다는 것이다.
여기 해커원 보고서(https://hackerone.com/reports/111094)를 보면, https://withinsecurity.com/wp-login.php?error=access_denied 에서 error 파라미터 값이 화면에 렌더링 되는 것을 확인하고, 변조를 하여 https://withinsecurity.com/wp-login.php?error=Your%20account%20has%20%hacked 이런식으로 변조하여 사용자를 속일 수 있다고 경고했다.



Continue reading

Popular Posts

Recent Posts

Powered by Blogger.