[D+15] SQL Injection (3) 13. SQL Injection 6) 보안 1. 사용자 입력 값 검증(서버측) : 싱글쿼터 또는 주석처리 구문이 있는지 확인하고 해당 구문을 날리지않고 연결을 완전 끊어버림. 2. 데이터 길이 제한3. 오류 반환 설정 : 500 error를 보이지 않고 404 에러로 통일.4. 웹 방화벽 및 IDS에서 필터링 : 장비에서 차단을 함. 그러나 맹목적으로 신뢰할 수 없음. ▣ 오류 반환 설정- 500 에러를 보여주지 않고 404 에러를 띄우게 설정.- 제어판 > 관리도구 > 인터넷 서비스 관리자 > 웹 해킹 서버 등록정보 > 사용자 정의 오류 > 500-100 부분을 404의 파일링크로 덮어씀- 적용 전 - 적용 후 =====> 결론적으로 Error based SQL Injection을 할 수 없음. (정보.. 해킹&보안/웹 해킹&보안 8년 전
[D+14] SQL Injection (2) 13. SQL Injection 3) 인증우회 - 우선 SQL 인젝션이 가능한지 확인하기 위해 로그인 창에 '(작은따옴표)를 넣음.- 기존 로그인 인증 sql 구문 : select * from member where bid='[입력한 ID]' and bpass='[입력한 PW]' 1. 우회 패턴or 'abc'='abc'or 'ab'='a'+'b'or 2>1or 1=1==========> select * from member where bid='admin' and bpass='1234' or 1=1 --' 이 되며 무조건 참을 반환 2. 주석문 이용 우회'--)'--';--==========> select * from member where bid='admin' --' and bpass='' 이 되며 무조.. 해킹&보안/웹 해킹&보안 8년 전
[D+13] SQL Injection 13. SQL Injection 1) SQL & DB ▣ SQL - SQL은 Structured Query Language의 약자로 데이터 베이스를 사용할 수 있게 해주는 질의어.▣ DB (Database)- 데이터를 보관하는 저장소.- 일반적으로 회원가입, 게시물 등록 시 해당 데이터들을 DB에 보관하게 되며 다시 열람, 수정, 삭제를 할 때 참조하게 됨.▣ DBMS (Database Management System)- DB를 관리하는 소프트웨어(S/W) 2) DBMS의 필수 기능 ▣ DDL (Data Definition Language) : 정의- CREATE 생성- ALTER 수정- DROP 삭제 ▣ DML (Data Manipulation Language) : 조작- SELECT 조회- INSER.. 해킹&보안/웹 해킹&보안 8년 전
[D+12] Session Management Vulnerabilities 12. Session Management Vulnerabilities 1) Session Management Vulnerabilities - 인증 및 세션은 인증이 필요한 페이지를 의미.- 취약점이 발생하는 페이지는 누구나 접근이 가능한 페이지를 의미.- 주로 취약점은 아래와 같이 세가지로 나뉨.☞ 관리자 페이지 접근 미흡 (관리자 페이지 노출 취약점)☞ 다른 사용자 게시물 수정 및 삭제 가능 (URL Jumping or URL 강제노출) ☞ 정보 수정을 통한 서비스 접근 (쿠키 변조) 2) 관리자 페이지 노출 취약점 (관리자 페이지 노출 취약점) 1. 추측 공격, 무작위 대입 공격, 사전 대입 공격 ☞ 방어 : 임계치 설정☞ 'or 1=1-- 로도 로그인이 가능.2. SQL Injection을 이용한 .. 해킹&보안/웹 해킹&보안 8년 전
[D+11] FileUpload & FileDownlaod 11. FileUpload & FileDownload 1) FileUpload ▣ FileUpload - 공격 난이도에 비해 파급력은 큼.- 자료실과 같은 사용자들의 업로드가 가능한 웹 애플리케이션을 이용.- 서버 사이드 언어로 작성된 WebShell 업로드를 통한 서버 권한 탈취.- 반드시 웹쉘만 올려야하는 것은 아님. 올린 파일이 무조건 웹 서버에 저장만 되면 됨.- 업로드 되는 파일의 확장자 필터링이 되지 않을 시 쉽게 가능. ▣ 실습1. 웹 서버에 웹 쉘 파일을 올림. (웹 쉘 파일은 구글링하면 많이 나옴)2. 올라간 파일의 위치를 찾기. (올라간 파일에 마우스를 올리기만 해도 밑에 위치가 뜸.) 3. 해당 위치로 들어가서 웹 쉘을 실행시킴. 4. CD로 위치를 바꿔보려해도 계속 해당 위치에 있음.. 해킹&보안/웹 해킹&보안 8년 전
[D+10] CSRF (Cross Site Request Forgery) 10. CSRF (Cross Site Request Forgery) 1) CSRF ▣ CSRF- 태그값을 쓸 수 있기 때문에 발생하는 문제.- 공격자가 작성해놓은 Request를 통해 일어나는 악위적인 공격 (요청메시지 위조) - 자신의 의도와는 다른 액션이 발생- 엄밀히 서버를 공격하는 것은 아니지만 공격 대상은 서버임. ▣ CSRF와 XSS 차이- XSS : 악성 스크립트가 사용자 클라이언트에서 일어남.- CSRF : 인증 완료된 자신의 권한으로 서버에 요청. 2) CSRF 원리 ▣ CSRF의 원리0. 최소한 의도한 동작을 공격자가 한번은 해보고 요청메시지의 구조를 파악.☞ 분석만 가능하다면 희생자의 권한으로 어떠한 행동이나 다 가능. (로그인 한 후의 행동)☞ 이 공격을 네이버에 못함. 왜? 네이버.. 해킹&보안/웹 해킹&보안 8년 전
[D+9] XSS (Cross Site Scripting) (2) 8. XSS (Cross Site Scripting) 4) XSS 종류 ▣ Reflective XSS- 서버에 저장되지 않음.- 공격자가 의도한 스크립트가 포함된 URL을 희생자에게 노출시킴.- 내가 던져준 것이 다시 나에게 돌아오기만 하는 공간이면 됨 (ex. 검색창) - 피싱 사이트에 많이 쓰임.- 단점 : 웹 서버의 주소(DNS)가 신뢰도가 높은 사이트여야함. (짧은 주소로 바꿔도 되긴하나 요즘은 잘 사용하지 않음)☞ 검색창에 script언어를 치면 url에 해당 스크립트가 담겨있는 주소가 뜸. ☞ http://192.168.129.129/board/board_search.asp?keyword=%3Cscript%3Ealert%28%22test%22%29%3C%2Fscript%3E☞ 해당 url을 다.. 해킹&보안/웹 해킹&보안 8년 전