Menu
-
웹 해킹을 대응하는 방법 1. 물리적인 장비나 소프트웨어를 이용한 대응방법 방화벽 // WAF(Web Application Firewall) L7 방화벽 IDS,IPS 2. 시큐어 코딩 2-1. Prepared Statement --> SQL Injection 공격을 방어하는 대표적인 기법 2-2. 입력값 검증 --> 2-3. 입력 길이 제한 --> 근본적인 방법은 아니지만, 매우 효과적임 입력값 검증 방법 1. 치환 ' -> \' # Search Logic $search_type = $db_conn->real_escape_string($_POST["search_type"]); $keyword = $db_conn->real_escape_string($_POST["keyword"]); index.php $..
Secure coding웹 해킹을 대응하는 방법 1. 물리적인 장비나 소프트웨어를 이용한 대응방법 방화벽 // WAF(Web Application Firewall) L7 방화벽 IDS,IPS 2. 시큐어 코딩 2-1. Prepared Statement --> SQL Injection 공격을 방어하는 대표적인 기법 2-2. 입력값 검증 --> 2-3. 입력 길이 제한 --> 근본적인 방법은 아니지만, 매우 효과적임 입력값 검증 방법 1. 치환 ' -> \' # Search Logic $search_type = $db_conn->real_escape_string($_POST["search_type"]); $keyword = $db_conn->real_escape_string($_POST["keyword"]); index.php $..
2022.07.12 -
1. 에러 및 취약점 진단 # 데이터 베이스의 글자 수 7글자 length((SELECT database()))=7 # 데이터 베이스의 글자 첫 글자가 'a' 인가요? substr((SELECT database()))='a' # ' 80 ascii(substr((SELECT database()),1,1))=112 ascii(substr((SELECT database()),2,1))=101 ascii(substr((SELECT database()),3,1))=110 ascii(substr((SELECT database()),4,1))=116 ascii(substr((SELECT data..
SQL Injection 실습1. 에러 및 취약점 진단 # 데이터 베이스의 글자 수 7글자 length((SELECT database()))=7 # 데이터 베이스의 글자 첫 글자가 'a' 인가요? substr((SELECT database()))='a' # ' 80 ascii(substr((SELECT database()),1,1))=112 ascii(substr((SELECT database()),2,1))=101 ascii(substr((SELECT database()),3,1))=110 ascii(substr((SELECT database()),4,1))=116 ascii(substr((SELECT data..
2022.07.08 -
https://webhacking.kr/ Webhacking.kr webhacking.kr https://h4ckingga.me/ H4CKING GAME h4ckingga.me
웹 해킹 홈페이지https://webhacking.kr/ Webhacking.kr webhacking.kr https://h4ckingga.me/ H4CKING GAME h4ckingga.me
2022.07.07 -
Code Injection [CreateRemoteThread()] VS CreateThread() DLL 인젝션 공격처럼 코드를 삽입하는 공격 기법 LoadLibrary() 함수를 사용해서 특정 함수를 호출하고 강제로 동작시키는 행위 ---> GetProcAddresS() 반드시 같이 사용 DOWRD WINAPI ThreadProc(LPVOID IParam) { MessageBoxA(NULL, "www.reversecore.com","hello world", MB_OK); return 0; } DLL Injection 보다 Code Injection 공격의 장점 1. 메모리 부하가 적다 2. 흔적을 찾기가 어렵다 - DLL Injection은 프로세스나 메모리에 흔적을 남기기 때문에 쉽게 찾을 수 있다..
CODE InjectionCode Injection [CreateRemoteThread()] VS CreateThread() DLL 인젝션 공격처럼 코드를 삽입하는 공격 기법 LoadLibrary() 함수를 사용해서 특정 함수를 호출하고 강제로 동작시키는 행위 ---> GetProcAddresS() 반드시 같이 사용 DOWRD WINAPI ThreadProc(LPVOID IParam) { MessageBoxA(NULL, "www.reversecore.com","hello world", MB_OK); return 0; } DLL Injection 보다 Code Injection 공격의 장점 1. 메모리 부하가 적다 2. 흔적을 찾기가 어렵다 - DLL Injection은 프로세스나 메모리에 흔적을 남기기 때문에 쉽게 찾을 수 있다..
2022.07.07 -
// index.php 회원 전용 페이지 입니다. 님 반갑습니다. # login.php 로그인 페이지입니다. ID : PW : # loginAction.php
SQL Injection 인증 우회// index.php 회원 전용 페이지 입니다. 님 반갑습니다. # login.php 로그인 페이지입니다. ID : PW : # loginAction.php
2022.07.07 -
순차적 접근 방식 데이터 베이스 이름 확인 # 데이터 베이스 이름 확인 SELECT * FROM information_schema.schemata SCHEMA_NAME 데이터 베이스 이름을 모아놓은 항목 데이터베이스 테이블 목록화 # 데이터베이스 테이블 목록화 SELECT * FROM information_schema.talbes; TABLE_SCHEMA 데이터베이스 이름 TABLE_NAME 테이블 이름 COLUMN_NAME 컬럼 이름 'board'라는 데이터베이스에 들어있는 'table'이름들이 알고 싶을때 # 'board'라는 데이터베이스에 들어있는 'table'이름들이 알고 싶을때 SELECT table_name FROM information_schema.tables WHERE table_schem..
SQL Injection - Error Based순차적 접근 방식 데이터 베이스 이름 확인 # 데이터 베이스 이름 확인 SELECT * FROM information_schema.schemata SCHEMA_NAME 데이터 베이스 이름을 모아놓은 항목 데이터베이스 테이블 목록화 # 데이터베이스 테이블 목록화 SELECT * FROM information_schema.talbes; TABLE_SCHEMA 데이터베이스 이름 TABLE_NAME 테이블 이름 COLUMN_NAME 컬럼 이름 'board'라는 데이터베이스에 들어있는 'table'이름들이 알고 싶을때 # 'board'라는 데이터베이스에 들어있는 'table'이름들이 알고 싶을때 SELECT table_name FROM information_schema.tables WHERE table_schem..
2022.07.06