목록2020/04/14 (3)
Self-Improvement
UNION SQLi는 포스터형식으로 몇개의 정보들을 출력해주는 곳에서 가능하다. ex) 포스터, 검색 등 단 하나의 정보만 보여주는 곳에서는 불가능 1. testphp.vulnweb.com Categories의 Posters에서 Union SQLi가 가능하다. 싱글쿼터를 주입할 시 sysntax 에러가 발생한다. order by 문을 이용하여 칼럼의 갯수를 구하며 11까지는 오류가 없었으며 12에서 오류가 발생한다 'cat=1 order by 11' 에러에서 MySQL임을 확인하였기에 null 대신 숫자를 대입하여 노출되는 칼럼의 위치를 확인한다. 이때는 Union Select 문을 사용한다. cat=1%20and%201=2%20union%20select%201,2,3,4,5,6,7,8,9,10,11 2..
취약점 제거는 웹 서비스 제공 환경을 고려하면 다음과 같이 당야한 단계에서 대응이 가능하다 미들웨어 실습환경의 미들웨어는 PHP이다. PHP 에서 제공하는 보안 기능을 이용하면 SQLi 대응에 부분적으로 효과가 있다 Apache 서버의 Custom, Error, Response 활성화 PHP의 Magic_quotes_gpc 설정 활성화 코드레벨 소스코드를 수정하여 대응하는 시큐어코딩 방법으로 취약점의 원인이 되는 보안약점의 근본적인 조치 및 제거가 가능하다 화이트 리스트 키워드 필터링, 데이터 유형 검사, 프리페어드 스테이트먼트 적용 DBMS 데이터베이스에서 제공하는 기능을 이용하여 취약점을 대응하는 방법이다. 주로 저장 프로시저를 이용하며 검증된 안전한 함수를 생성하여 DB질의에 사용한다 저장 프로시저..
Oracle 데이터베이스는 데이터 형식에 가장 민감한 데이터베이스이다. 데이터를 뽑아낼때도 해당 칼럼이 문자형인지 정수형인지 알아낸후 그에 맞게 출력해야함 Mysql, MSsql은 유연적 소스코드 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 opensecurelab Participants in Employee ID FirstName JOB_ID HireDate Colored by Color Scripter cs - http://192.168.1.46:8080/empinfo_date.jsp?date=2003-06-17 - h..