본문 바로가기

전체 글

(24)
파일 인클루젼 공격 지정한 파일을 php include()로 소스코드에 삽입 로컬파일인클루젼(LFI) - 이미 있는 시스템이 존재하는 파일을 인클루드 리모트파일인클루젼(RFI) - 외부에 있는 파일을 원격으로 인클루드 실습 방법 1. 난이도 하 gedit /opt/lampp/htdocs/bad.php 터미널에서 g에딧을 통해 bad.php파일을 열고 해당 파일안에 해당 구문은 텍스트가 출력이 되는지 확인을 위한 문장이다 파일인클루젼 연습 페이지 상단에 있는 page= 파라미터의 값을 변경 해준다. 그럼 해당 페이지에 bad.php 내용이 호출된다. 여기서 bad.php의 구문을 바꿔보자. 이렇게 system('cat /etc/passwd'); 입력 시 해당하는 경로로 이동하게 되며, 안에 기재된 중요한 내용을 다운로드 또는..
CSRF 공격 : Cross Site Request Forgery 사이트 간 요청 위조 어떤 사용자에게 피싱을 해서 링크를 누르게 하고, 링크를 클릭하면 사용자 모르게 사이트의 어떤 기능을 실행하는 것 주로 패스워드 변경을 사용하는데에 쓰인다. 피싱이라는것은? 사회공학기법(사기법) 중의 하나로 이메일이나 게시판 등을 이용해서 마치 은행이나 유명한 대기업의 직원인 척 하면서 사람들을 낚는 공격기법이다. 2008년도에 옥션 해킹 사건에 사용된 공격 기법이다 -> 시간나면 찾아보도록! 사용자가 사이트에 정상적으로 접속하여 로그인 합니다. 사용자가 사이트에 로그인 되어있는 동안 해커가 이메일을 보내서 어떤 링크를 클릭하도록 유도 합니다. 이때, 해커는 은행 직원인척 "[은행에서 공지] 최근 보안 문제가 많이 발생하니 클릭해서..
커멘드 인젝션 공격 웹을 통해 시스템명령어(커멘드)를 실행하는 공격 웹 내부에서 시스템 명령어를 실행하는 경우, 입력값을 제대로 검사하지 않으면, 해커 마음대로 시스템 명령어를 실행 시킬 수 있다 ex) 웹사이트 진입 후 IP주소를 입력하면 ping 명령어를 실행한 후 그 결과를 알려주는 페이지 ping명령어는 IP주소를 가진 시스템이 현재 동작하는지 확인 할 때 사용하는 명령어 이다. 이때 해커는 IP;cat/etc/passwd (리눅스의 사용자 목록)를 입력했을때 IP주소형식을 가진 값인지 확인 하지 않는다면 ping IP 뒤에 해커가 입력한 문자열을 모두 붙혀서 실행하게됨 세미콜론을 넣게되면 리눅스에서는 두개의 명령어를 모두 실행하게 된다 그렇게되면 해커가 입력한 cat/etc/passwd의 내용이 보이게 된다. dv..
브루트포스 공격 및 대응 사용자 패스워드를 알아내기위한 공격 무식한 반복 대입 방법 알파벳 순 딕셔너리 공격(사람들이 자주 쓰는 패스워드로 공격) ex) abcdef,123456,qwerty 자동 브루트포스 공격 - dvwa 난이도 쉬움 버프 스위트를 이용하여 공격해보자 시작 전 Intercept is off 로 해놓은 상태로 DVWA로그인창에 admin / aaaa를 입력해보자 Proxy > HTTP history 중 가장 최근 요청을 확인 해보면 username=admin&password=aaaa 내가 입력한 요청이라는 것을 확인 할 수 있다. 최근 요청란에 우측 클릭 후 [send to intruder]를 클릭하여 intruder 기능으로 보낸다 intruder탭에 가보면 새로운 요청을 확인 할 수 있음 [intruder ..
sql 인젝션 테스트 실습 20210630 해킹할 서버 => http://49.142.47.218:9797/ 목표 계정 탈취 후 로그인 까지 처음 취약점을 찾기까지.. http://49.142.47.218:9797/cat.php?id=1 => 메뉴 클릭 시 해당 ? 뒤에 페이지의 파라미터 값이 뜬다 여기서 id값에 산수가 되는지 즉, sql인젝션이 먹히는지 (DB에 질의 여부 판단) 테스트 해본다 첫번째 ex) http://49.142.47.218:9797/cat.php?id=2-1 결과) 위의 코드를 입력 시 id=1 페이지가 나온다 => 이 말은 즉 sql 인젝션을 통해 db에 질의를 할 수 있다 라는 의미 (사용자의 값이 먹히기 때문 -> 개발자가 의도하지않음) 두번째 ex) http://49.142.47.218:9797/cat.php?id..
웹 아키텍쳐 웹 아키텍쳐 GET 방식으로 서버에 요청 웹 서버에서 데이터베이스로 SQL*로 전송 데이터베이스에서 웹서버로 데이터 전달 받은 데이터를 웹서버에서 웹브라우저로 전달 SQL : sql이란? 데이터를 관리하기 위해 설계된 특수 목적의 프로그래밍 언어 HTTP Hyper Text Transfer Protocol 주로 80번 포트를 이용하여 서비스함(80또는443을 쓰는데 이는 80또는443를 한 서버에서 하나밖에 사용못하기때문이다.) http요청과 http응답으로 이루어짐 클라이언트가 요청하고 서버가 응답 http메소드: GET*,POST*,PUT*,DELETE* 등 응답코드(status code) GET : 정보를 가져오기 POST : 정보를 제출하기 PUT : 정보를 수정요청(갱신) DELETE : 정보를..
웹사이트를 통한 침투 웹사이트를 통한 침투 웹 버그바운티 예시 기업명 바운티 금액 대상 사이트 참고 링크 구글 $500 - $20,000 *.google.com *.youtube.com *.blogger.com https://www.google.com/about/appsecurity/reward-program/ 페이스북 $500+ facebook.com instagram.com oculus.com ... https://www.facebook.com/whitehat 마이크로소프트 $500 - $15,000 *.onedrive.com login.microsoft online.com *.outlook.com ... https://technet.microsoft.com/en-us/library/dn800983.aspx [오픈 버그바..
화이트 해커란? 보안분야의 다양한 진로 기업 망 보안 담당자(대기업,정부기관,금융기관 등) 제품 보안 담당자 보안 컨설턴트 디지털 포렌식 전문가 보안 솔루션 (개발자,테스터,기술지원,영업 등) 버그헌터 및 프리랜서 보안 연구 블랙햇이 있기에 화이트햇이 존재함. 광범위하게는 모든 정보 보안 관련 전문가. 구체적으로는 실제 해킹 기술을 보유하고 있는 보안 전문가 모의해킹이나 소스 코드 점검 등의 방법으로 보안취약점을 찾아 공개하여 보안성을 높임 화이트해커가 되려면? 해킹/보안 영역 이해 필수 프로그래밍 언어 네트워크 TCP/OP 프로토콜 C/C++ 시스템 운영체제, 메모리관리 C/C++ 웹(모바일 포함) 웹 아키텍처, HTTP 프록시 JAVA,PHP,Ruby 스크립팅 언어(쉘프로그래밍, python 등)로 간단한 프로그램을..