2024. 7. 10. 17:41ㆍInformation Security 정보보안/정보보안 기본지식
배울내용:
웹해킹 개요
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/www-chapter-seoul/
대부분 회사들, 중소기업 , 중년스타트업 이들이 득을 보는 방법이 서울시에서 어떤 사이트를 만들고 싶은데 그들은 공무원들이라 이 사업을 발주를 해야한다 . 이때 이걸 국가 산업으로 올리면 웹을 만들때는 "전자 정부 프레임워크" 라는 구조를 기반으로 되어있는 언어(한국은 주로 자바) 를 적용해야한다.
그래서 이걸 개발을 할때 시큐어 코딩이나 관련된 구조에 충족을 해야하기때문에 이를통해서 이익을 남길수 있다.
이를통해 개발이 완성되고 그걸 검사/진단하는 사람들이 있는데 이중에서도 방법으로 대표적으로
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
다른 Injection 도있다
Blind SQL Injection
숫자를 비교해서도 가능하고 문자열도 가능하다
substring을 잘이용해 id 의 1개씩 뽑아와서 보면 된다
또는 아스키 코드를 보고 비교문을 쓸수가있다.
'Information Security 정보보안 > 정보보안 기본지식' 카테고리의 다른 글
리버스엔지니어링 기초 (0) | 2024.07.15 |
---|---|
HTTP 의 이해 (보안관련) (1) | 2024.07.10 |
PE 파일이란? (0) | 2024.02.23 |
와이어샤크 (WireShark) 란? (0) | 2024.02.17 |
쿠키와 세션의 차이는 뭔가요? (1) | 2024.02.17 |