[ CAPTCHA 공격이란? ] 컴퓨터가 알 수 없는 흘려 쓴 글씨 등을 이용하여 이를 제대로 인식하면 사람이라고 확인하는 것이다. 회원가입이나 비밀번호와 같이 사람이 직접 하지 않을때, 문제가 발생할 경우에 주로 사용된다. 브루트포스 공격과 같이 프로그램을 이용한 공격에 대응할 때 매우 효과적이다. 하지만 제대로 구현하지 않는다면, 해커는 이를 우회하여 공격할 수 있다. 그림을 통해 자세히 알아보자. 비밀번호 단계는 총 두 단계로 진행된다. 우선 CAPTCHA를 통해 사람인지 확인한다. 확인이 된 이후에는 두번째 단계에서 비밀번호를 변경한다. 하지만 이 과정이 제대로 구현되어 있지 않다면 해커가 CAPTCHA를 확인한 것처럼 꾸미고 두번째 단계만 진행하여 비밀번호를 변경하는 것이 가능하다. [ CAPT..
분류 전체보기
[ 파일 업로드 공격이란? ] 파일이 업로드 되는 페이지(게시판, SNS 등)에 주로 웹쉘과 같은 악성파일을 업로드하는 것 - 웹쉘 : 웹을 통해 시스템 명령어를 실행할 수 있는 웹 페이지 이미지를 업로드하는 페이지가 있다. 해커는 이때 이미지 파일 대신 웹쉘을 업로드 한다. 이를 막기 위해서 웹 어플리케이션은 업로드 된 파일이 이미지 파일인지 검사해야하는데 제대로 하지 않으면 그대로 저장하게 된다. 다음으로 해커가 웹쉘에 접근하게 되면 웹쉘이 실행된다. 그 이후 웹쉘을 통해 해커가 원하는 대로 시스템 명령을 실행할 수 있다. 실습하려고 리눅스 켰는데 네트워크가 또 말썽이라 firefox 작동이 아예 안되서 이번 실습은 인터넷과 강사님의 실습 화면으로 대체하고자 한다.... 도대체 리눅스는 언제쯤 정상적..
[ 파일인클루젼 공격이란? ] php에서는 include 함수를 이용하여 다른 파일을 소스코드에 직접 포함시킬 수 있기 때문에 php 애플리케이션에서 주로 발생한다. 이때 include 할 파일을 앱 요청을 통해서 지정할 수 있는 경우에 해커가 그 값을 조작하여 원하는 파일을 처리하도록 만들 수 있다. 로컬파일인클루젼(LFI) : 이미 시스템에 존재하는 파일을 인클루드 리모트파일인클루젼(RFI) : 외부에 있는 파일을 원격으로 인클루드 ▶ 더욱 강력 정상적인 상황) 웹 애플리케이션은 file.php를 인클루드하고 있다. 다만, file.php가 웹 요청을 통해 지정되고 있다. 해커 공격 상황) 해커는 file.php 대신에 hacker.com이라는 자기 서버를 따로 구축한 후 hacker.com에 있는 ..
[ CSRF 공격이란 ] CSRF는 Cross Site Request Forgery의 약자로 사이트 간 요청위조라는 의미이다. 이 공격은 주로 피싱을 활용해 사용자 모르게 사이트의 어떤 기능을 실행하는 것이며 주로 패스워드를 변경하는데 사용한다. CSRF 공격은 옥션 해킹 사건에서 사용된 공격 기법 중 하나이다. 사용자가 사이트에 로그인되어 있는 동안 해커가 이메일을 보내어 어떤 링크를 클릭하도록 피싱을 한다. 이 이미지에서 해커는 은행직원인 것처럼 가정하여 메일을 전송했다. 만약 사용자가 이 링크를 클릭하게 되면 클릭한 시점에 이미 로그인 되어있는 사이트의 패스워드를 해커가 지정한 패스워드로 변경하는 요청이 자동으로 전송되어 자신도 모르는 사이에 패스워드가 변경된다. 이처럼 CSRF는 피싱만 잘하면 난..
[ 커맨드인젝션 공격이란? ] 웹을 통해 시스템명령어(커맨드)를 실행하는 공격이다. 웹 내부에서 시스템 명령어를 실행하는 경우, 만약 사용자가 입력값을 제대로 검사하지 않으면, 해커는 이 값을 조작하여 마음대로 시스템 명령어를 실행하게 된다. 사용자가 정상적으로 어떤 웹페이지를 접속하는데 이때, 어떤 웹페이지는 IP 주소를 입력하면 서버에서 ping 명령어를 실행하고 그 결과를 알려주는 페이지라고 생각해보자. (ping 명령어는 IP 주소를 가진 어떤 시스템이 현재 동작하고 있는지 확인하는 명령어이다.) 이때, 해커는 IP주소 뒤에 ;을 입력하고 다른 시스템 명령어를 추가로 전송한다. cat /etc/passwd는 리눅스의 사용자 목록을 확인할 때 사용하는 명령어이다. 만약, 웹 애플리케이션이 해커가 보..
[ 브루트 포스 공격이란 ] 사용자 패스워드를 알아내기 위한 공격으로 아이디와 패스워드가 일치할 때까지 반복 입력해보는 무식한 방식 알파벳 순 딕셔너리 공격 : 사람들이 자주 쓰는 패스워드 위주로 먼저 입력해보는 방식 [ 브루트 포스 공격 실습 ] 우선 DVWA에 접속하여 보안을 low로 변경한다. 카테고리 중 Brute Force를 누르면 로그인할 수 있는 창이 뜬다. admin이라는 사용자가 있는 것을 아니 비밀번호에 임의의 값인 'aaaa' 등을 입력하면 일치하지 않다는 문구가 나온다. 이렇게 하나씩 입력할 수도 있지만, 시간이 너무 오래 걸리기 때문에 버프스위트의 Intruder를 활용하여 실습을 진행하고자 한다. 자동 브루트포스 공격) 앞선 실습과 같이 admin 계정의 비밀번호를 임의로 'aa..