본문 바로가기

전체 글56

6. Filtering 우회 1. Preg_match 우회 - \ : \ 앞에 오는 문자의 경우 특수문자가 아닌 일반문자로 처리하게 됨 - preg_match('/'/'); 여기서 ' 문자를 필터링 함 - www.example.com?id=admin&pw=test 폼에서 인젝션 공격을 수행한다고 하면 - www.example.com?id=\&pw=or+1=1# 이런식으로 공격하면 되는데 - $_GET['id'] = \ / $_GET['pw'] = or+1=1# - 쿼리를 살펴보면 아래와 같다 - 정상쿼리 : select id from userdb where id='admin' and pw='test'; - 공격쿼리 : select id from userdb where id='\' and pw=' or 1=1#' 2. 공백우회 - /.. 2020. 2. 11.
2. Devops Automated-Governance 2020. 2. 10.
5. Filtering 우회 = LIKE, >, 한 줄 주석 /**/ => 여러 줄 주석 #, --과 같은 한 줄 범위 주석 우회 \n (라인피드, %0A) %20 (스페이스바) %0A, %0B, %0C, %0D, %09, /**/, () ' (싱글 쿼터) " (더블 쿼터) ' (싱글 쿼터) 우회 \를 사용하여 문자열 취급을 시켜줌 (preg_match 우회 가능) ereg, eregi 우회 %00 후 문자열 작성 (why? ereg, eregi는 %00까지 패턴 검색) str_replace('abc','',$array) 우회 ababcc와 같이 빈 칸을 이용해 우회 ereg 우회 대소문자 적절히 섞기 -> admin이면 ADMIN, Admin 등 and, or 각각 &&, || (url에서 &&는 사용 X) 문자열 비교 hex().. 2020. 2. 5.
웹해킹 26번 (webhacking.kr old 26) 1. 취약점 환경 : PHP 2. Write Up 2020. 2. 5.
4. SQL INJECTION CHEAT SHEET (SQL 인젝션 치트 시트) 1. Error Based SQL InjectionHaving Error (This Column Name)- www.test.com/?no=1' having 1=1 #- www.test.com/?no=(1)having(1)in(1) Group by Having Error (Another Column Name)- www.test.com/?no=1' having 1=1-- (Column name)- www.test.com/?no=1' group by no having 1=1# -> name column error- www.test.com/?no=1' group by no, name having 1=1# -> code column erorr- www.test.com/?no=1' group by no, name.. 2020. 2. 4.
웹해킹 13번 (webhacking.kr old 13) 1. 공격유형 : Blind Sql Injection 2. Write Up 이 문제는 이번에 old 버전으로 리뉴얼 되었는데 공격 포인트를 정리해보자면 Ascii, Limit, having, group by, union, +, group_concat 등의 구문이 차단되어 있고 컬럼, 테이블 정보를 모르는 환경에서 "Blind Sql Injection"을 기반으로하는 "ord, concat" 구문을 조합 공격으로 해결 가능한 문제였다. 기존에는 Ascii 문자가 필터링되었을때 chr("문자") 등의 방식으로 바로 비교했었던 경험으로 동일하게 시도했지만 000000000 등의 숫자만 결과로 보여주어 이부분을 찾는데 조금 애를 먹었다. Ascii의 대안인 ord 기능이 있다는 것을 알고 적용했을때 문제를 해결.. 2020. 1. 30.
웹해킹 24번 (webhacking.kr old 24) 1. 공격유형 : PHP 함수 2. Write up 😊 코드분석 - extract 함수 : 이 함수는 array 변수 내에 존재하는 각각의 데이터를 변수화 시켜준다. - 그림에서 eTest Array 변수를 생성하여 출력한뒤 extract로 변환하면 우측과 같은 결과가 나타나는데 이는 연관 배열 형태의 변수가 extract에 의하여 개별 변수로 이용 가능한 것을 확인할 수 있다. - 즉 eTest 변수 내의 'test'를 출력할 때 기존 echo $eTest['test']에서 echo $test가 되는 것이다. - 이후 $ip, $agent 변수에 각각의 값을 지정해 준다 (extract 함수를 안썼다면 $ip= $_SERVER['REMOTE_ADDR'] 이런식으로 지정을 해야하지만 $REMOTE_ADD.. 2020. 1. 19.
3. XSS 1. XSS - Stored XSS : DB등에 악성 스크립트를 저장시켜 호출 시 동작하게 함 - Reflected XSS : 팔라미터입력값에 악성 스크립트를 삽입하여 출력 시 동작하게 함 (주로 검색, 오류 페이지 등 사용) 2. CSRF 2020. 1. 13.
1. AWS 기본 용어 1. NACL / Security Group 차이점 - NACL : Subnet에 적용하는 접근통제 보안설정 - Security Group ; EC2에 적용하는 접근통제 보안설정 2. Inspector (보안 평가도구) : 에이전트형 보안평가도구 (Application 보안약점) 3. Certificate Manager AWS 무료 인증서 발행도구 : ACM은 AWS 자체 서버 인증서를 발행 - EC2에서 바로 이용은 불가능하며 ELB, CloudFront 등에 사용 4. AWS WAF 5. AWS Shiled : DDoS 대응 서비스 6. Trusted Advisor : Cost Optimization, Performance, Security, Fault Tolerance, Service Limits .. 2020. 1. 13.