
JSP를 사용해 로그인 페이지 및 게시판을 구현했으며 사용한 개발 환경은 다음과 같다. - 개발툴 : eclipse - DB : oracle 11g - 서버 : apache, tomcat JSP로 로그인 페이지를 구현하기 위한 프로세스는 다음과 같다. 1. 사용자의 로그인 페이지 접속 2. ID/PW입력 3. ID/PW의 존재/참거짓 여부 판별 4. 로그인 성공 -> 게시판 등으로 이동 만약 3번에서 ID/PW가 틀리거나 입력하지 않았다면 2번으로 돌아가서 다시 ID/PW를 입력하게 된다. 그림으로 나타내면 아래처럼 간단하게 이해할 수 있다. 이제 각자 동작 할 페이지 마다 이름을 붙인다. 로그인 페이지 : login.jsp ID/PW검증 페이지 : login_check.jsp 게시판 페이지 : boar..

이 글은 web.xml, apache의 httpd.conf로도 HTTP Only 옵션을 false 혹은 제거를 해도 없어지지 않는 경우를 위해 작성합니다. 웹해킹을 진행하다보면 다음과 같은 경우가 존재할 수 있습니다. 바로 "Cookie"가 alert 되지 않는 것이죠. 예를들어 PHP SESSION 또는 JSESSIONID가 있음에도 불구하고 alert, 공격자 서버로 전송이 되지 않는 경우 입니다. 아래는 웹해킹 연습을 위해 구축한 저의 웹 서버입니다. 예시를 보면 다음과 같습니다. 1. 웹 페이지 확인 다음과 같이 정상적인 웹페이지가 존재한다. 공격자는 XSS를 실행하기 위해 를 입력한다. 그러나 결과값엔 아무것도 출력되지 않는다! 이런 경우 크롬의 경우 CTRL + SHIFT + i 를 누르면 개..

이 블로그에서 IT정보외에 다른 글을 쓰는건 처음이네요.. 보다 많은 사람들이 저처럼 피해입지 않고 2차피해가 발생하지 않도록 하기 위해서 이런 글을 작성합니다. 존댓말은 불편하니 2020년이지만 음슴체로 쓰겠습니다 1. 사기의 시발점 나는 올해 초 닌텐도 스위치 동물의숲 에디션을 구매하고 싶어하는 흑우였음. 일본 불매운동도 있지만.. 회사사람들이며 친구들까지 닌텐도 스위치를 구매하기 위해 열을 올리는걸 봐왔고, 나도 그 '유행'이라는걸 따라서 + 링피트를 해보고 싶어서 라는 이유로 스위치 구매를 시도했으나.. 결과는 대실패함. 이때 시도해본 사람들은 알겠지만 9월까지 각종 소셜 및 게임기 사이트 같은곳에서 추첨으로 닌텐도 스위치를 판매했으나 물량이 없다보니 구매에 계속해서 실패했음. 그러다 2020년1..

PHP로 제작한 웹쉘이다. 해당 웹쉘을 제작하기 위해 참고한 사이트는 아래와 같다. yangil06.tistory.com/entry/%EC%9B%B9%EC%89%98-%EC%82%AC%EC%9A%A9-%ED%95%A8%EC%88%98-%EB%AA%A8%EC%9D%8C

보안을 공부하면서 웹서버를 구축해 웹 해킹 기법을 연습하고 있다. 구축한 웹서버는 APM으로 Apache, php, mysql db를 연동한 웹서버인데, APM은 설정파일을 통해 디렉터리 리스팅을 설정할 수 있다. 기본적으로 디렉터리 리스팅이 되지 않도록 기능을 OFF해놓았지만, 공부를 하는 사람의 입장으로썬 디렉터리 리스팅 공격을 경험해봐야하므로 해당 기능을 ON 하기로 했다. 방법은 다음과 같다. 1. httpd.conf 파일 설정 변경 - 우선 디렉터리 리스팅 설정은 httpd.conf 에서 변경할 수 있다. - 경로는 APM 설치 경로에서 APM_Setup\Server\Apache\conf이다. - 해당 경로에서 httpd.conf 파일을 열어주도록 하자. 2. 옵션 변경 - 디렉터리 리스팅 옵션..

웹 해킹의 기법에 대해 검색하다 보면 XSS라는 공격 기법이 있다는 것을 알게된다. 웹 취약점을 발표하는 OWASP에서도 거의 매법 언급될 정도로 널리 알려진 웹해킹 기법이다. 웹의 특징을 사용한 XSS라는 공격기법은 어떤것인지 알아보자. XSS(Cross-Site-Script)란? - Cross-Site-Script라고도 불리는 XSS는 웹 해킹 공격 기법중 하나이다. - 클라이언트와 서버간의 통신을 스크립트를 통해 조작하는 것을 의미한다. - 따라서 웹 클라이언트(크롬, 익스플로러, 파이어 폭스 등..)의 특정을 이용한 공격이라 할 수 있다. - 웹 클라이언트는 request/response 응답값을 통해 통신을 주고받는데, 공격자가 작성한 클라이언트 언어(HTML,JSP,PHP)를 사용해 공격을 한..

SQL injection은 보안이나 IT 공부하거나, 그렇지 않더라도 뉴스나 다른 매체를 통해 들어본 적이 있을 법한 용어이다. 그만큼 웹 취약점에 있어서 SQL Injection은 흔하게 발생하며, 가장 크리티컬한 공격을 할 수 있는 기법이기 때문이다. 웹 취약점을 발표하는 OWSAP(Open Web Application Security Project)에서도 매년 언급할 정도로 파급력 있는 공격기법이 SQL Injection이다. 그렇다면 이 용어는 어떤것을 의미할까? SQL Injection 이란? - SQL은 DB에서 사용하는 프로그래밍 언어이다. - Injection은 무언가를 주입/주사 할때 사용하는 단어이다 - 따라서 SQL Injection은 프로그래밍 언어를 주입한다는 의미로 해석 할 수 ..

웹 해킹, 보안 등에 대해 공부하다보면 CSRF에 대해 접해볼 기회가 있다. 그렇다면 CSRF는 뭘까? 그리고 어떤거기에 XSS와 같이 설명되며 비슷하다 하는 걸까? CSRF란? - CSRF란 언어 그대로 풀이하면 Cross-Site-Request-Forgery 의 약어이다. 사이트 사이 요청을 위조한다는 의미를 가지고 있다. - 사용자와 특정 웹간의 통신을 할때 Request와 Response를 분석해서 Request(요청)을 위조하여 공격자가 원하는 행위를 하게 만드는 공격이라 할 수 있다. - 사용자는 자신이 의도 했던 것과 무관하게 공격자가 의도한 행위를 하게 만드는 공격으로, 회원정보 변경, 데이터의 수정/삭제, 게시글 내용 변경 등을 할 수 있다. - 특정 사용자의 권한이 필요할때 (EX: 관..

관리자 페이지 노출 취약점 이란? - 해당 취약점은 말 그대로 관리자 페이지가 '노출'된 경우 취약하다 판단한다. - 취약점 이름에서 짐작할 수 있듯이 말그대로 관리자 페이지가 노출되면 취약이다. - 일반사용자나 웹상에 관리자 페이지가 노출된 경우/관리자 페이지 주소를 추측해 URL로 외부에서 접근 가능한 경우 취약하다. - 실제로 관리자 페이지여서 추측 가능한 admin, manager, master 등으로 설정된 경우 노출 위험성이 높아진다. - 관리자 페이지의 접속 후 ID, PW를 추측 불가능한걸로 설정해서 괜찮다고 생각하는 경우가 있는데, 이런 경우에도 단순히 관리자 페이지가 노출되었으므로 취약하다 판단하니 애초에 노출되지 않도록 하는것이 중요하다. 관리자 페이지 노출이 위험한 이유 - 관리자 ..