웹 해킹의 기본이해

2024. 7. 10. 17:41Information Security 정보보안/정보보안 기본지식

728x90

배울내용:

웹해킹 개요

OWASP 

주요정보통신기반시설 기술적 취약점 분석 평가

소프트웨어 개발 보안가이드

White Box 와 Black Box

SQL Injection

String SQL Injection

Numeric Injection 

Blind SQL Injection

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

OWASP (Open Web Application Security Project)

 

 

 

 

현재 2024년이면 아마 내년 2025 년떄 TOP 10 이 갱신 될것같다

 

 

 

 

 

아래는 실제 사이트 링크이다 

 

https://owasp.org/

 

OWASP Foundation, the Open Source Foundation for Application Security | OWASP Foundation

OWASP Foundation, the Open Source Foundation for Application Security on the main website for The OWASP Foundation. OWASP is a nonprofit foundation that works to improve the security of software.

owasp.org

 

 

그중 우리나라는 아래의 링크와 같다 

https://owasp.org/www-chapter-seoul/

 

OWASP Seoul | OWASP Foundation

OWASP Seoul on the main website for The OWASP Foundation. OWASP is a nonprofit foundation that works to improve the security of software.

owasp.org

 

 

 

 

 

 

 

 

 

 

 

대부분 회사들, 중소기업 , 중년스타트업 이들이  득을 보는 방법이 서울시에서 어떤 사이트를 만들고 싶은데 그들은 공무원들이라 이 사업을 발주를 해야한다 . 이때 이걸 국가 산업으로 올리면 웹을 만들때는 "전자 정부 프레임워크" 라는 구조를 기반으로 되어있는 언어(한국은 주로 자바) 를 적용해야한다.  

 

그래서 이걸 개발을 할때 시큐어 코딩이나 관련된 구조에 충족을 해야하기때문에 이를통해서 이익을 남길수 있다. 

 

 

 

 

이를통해 개발이 완성되고 그걸 검사/진단하는 사람들이 있는데 이중에서도 방법으로 대표적으로 

White BOX 와 Black BOX 가 있다  (Grey BOX 도있긴함) 

 

  • 화이트 박스: 내부 구조를 알고, 코드와 로직 기반으로 테스트를 수행. (소스코드를 가짐) 
  • 블랙 박스: 내부 구조를 모른 채, 기능과 요구사항에 기반하여 테스트를 수행. (소스코드X, 모의해킹)

두 가지 방법은 상호 보완적으로 사용되어, 시스템의 품질을 전반적으로 높이는 데 기여한다. 

그러나 모의해킹은 현실적으로 어려운게 모의해킹을하다가 사이트가 죽어버리면 책임을 져야하기떄문에 실질적으로 불가능하다. 그래서 정해진 틀안에서 하거나 Test 를 만들어서 하는것 밖에 안되는 것이다. 

 

만약에 된다고 하면 세상에서 제일 해킹잘하는 사람중 한사람일 것이다. 그게 아니면 위에 조건이 따라올가능성이 매우크다.

 

 

 

 

 

 

 

 

 

SQL Injection  (SQL 삽입공격)

 

 

위와같은 방법으로 진행이 되고 

 

 

 

 SQL 의 DDL , DML ,DCL , TCL 로 나뉘고 주로 Select 문이 많이쓰인다.

 

 

 

 

 

예시로보면 아래의  학생 테이블이 있다고 했을떄 select name from inform_student; 를하게 되면 위에 처럼 민준 서연 하은이 출력이 되는것이다.

 

 

 

 

그러면 이러한 쿼리문을 정상적으로 안쓰고 'or '1'='1' 이란 걸써서 SQL 인젝션이 진행이 된다

그러나 이것은 특수문자 몇개만 차단하거나 PreparedStatement 를 사용하면된다

그외에 방법들도 방법만 알면 이러한 injection 공격을 간단하게 막을수있다. 

 

 

 

 

아래의 실습을 한것을 보며 실제 어떻게 공격이 진행되는지 볼수있다.

 

https://sarimus.tistory.com/62

 

Web Security DAY_007 웹 해킹 , 웹 모의 해킹 해보기 , 웹해킹실습 , sql injection , SQL 삽입공격 , 풋프린

배울내용: 웹 해킹 웹 모의 해킹 해보기 웹해킹실습 sql injection SQL 삽입공격 풋프린팅 foot printing nmap 리눅스 포트 확인하기 kali로 웹해킹하기 DB 해킹 MariaDB 해킹 이번시간은 이전시간에 배웠던걸

sarimus.tistory.com

 

 

 

 

 

 

다른 Injection 도있다

Blind SQL Injection 

 

 

 

 

 

숫자를 비교해서도 가능하고 문자열도 가능하다

 

 

 

substring을 잘이용해 id 의 1개씩 뽑아와서 보면 된다 

 

 

 

또는 아스키 코드를 보고 비교문을 쓸수가있다. 

 

 

 

 

 

 

 

 

 

 

 

 

728x90