Security/Web Hacking
XSS Polyglots ( 강력한 한줄 XSS 공격 구문)
XSS Polyglots XSS하면 떠오르는 구문이 있죠 구문으로 성공하기 보다. 앞의 구문을 마무리 하기위해 "> 오른쪽 꺽쇠를 넣어준다던지 아니면 --> 를 써서 주석처리를 해버린다던지 하여서 "> 이런식으로 공격코드를 작성하게 됩니다. 만약에 주입이 되는곳에 어떤 취약점이 있는지 모르는 상황일때, 즉 blind XSS를 해야 할 경우, 여러번의 공격 Request를 서버로 보내서 추측해봐야 합니다. / 도 넣어보고.. "> 도 넣어보고 .. 도넣어보고 이런식으로요. 그런데 이런 작업을 한방에 해줄 수 있는 공격구문이 있는데요. 이걸 Polyglots 라고 부릅니다. 여러번 Request를 하는것보다 한번의 요청으로 하는게 당연히 좋겠죠. 먼저 OWASP 홈피에 나와있는 Polyglots 공격코드를 ..
XSS Attack 에 사용될 수 있는 이벤트 핸들러
https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet XSS Filter Evasion Cheat Sheet - OWASP Last revision (mm/dd/yy): 02/23/2019 Introduction This article is focused on providing application security testing professionals with a guide to assist in Cross Site Scripting testing. The initial contents of this article were donated to OWASP by RSnake, www.owasp.org FSCommand() (attacker can ..
sqlmap 모든 옵션 및 사용법 정리
https://github.com/sqlmapproject/sqlmap/wiki/Usage sqlmapproject/sqlmap Automatic SQL injection and database takeover tool - sqlmapproject/sqlmap github.com
데이터베이스(DB) 종류 별 명령어 정리2
MS-SQL 데이터베이스 내장함수 SUBSTRING(문자열, 시작번호, 자를문자수) LEN(문자열) ASCII(문자) CHAR(숫자) - 아스키코드에 대한 문자 반환 STR(숫자) 주석처리 구문 -- MySQL 데이터베이스 내장함수 SUBSTR(문자열, 시작번호, 자를문자수) LENGTH(문자열) : 바이트 수 CHAR_LENGTH(문자열) : 글자 수 ASCII(문자열) - 첫번째 문자에 대한 ASCII 값 반환 CHAR(숫자1,숫자2,...) - 아스키코드에 대한 문자 반환 주석처리 구문 # -- Maria DB 데이터베이스 내장함수 SUBSTR(문자열, 시작번호, 자를문자수) LENGTH(문자열) : 바이트 수 CHAR_LENGTH(문자열) : 글자 수 ASCII(문자열) - 첫번째 문자에 대한 A..
데이터베이스(DB) 종류 별 명령어 정리
MS-SQL * MS-SQL은 각 개별 데이터베이스별로 시스템 뷰가 존재하기 때문에 데이터베이스명으로 필터링할 필요 없음 데이터베이스 조회 SELECT * FROM sys.sysdatabases SELECT name, database_id, create_date FROM sys.databases ; SELECT DB_NAME() -> 현재 DB명 반환 SELECT DB_NAME(3) -> DB id 가 3인 DB명 반환 테이블 조회 SELECT * FROM sys.tables SELECT * FROM information_schema.tables 컬럼 조회 SELECT * FROM sys.syscolumns SELECT column_name FROM information_schema.columns WHE..
Command Injection 이란? (커맨드 인젝션)
3. Command Injection Command Injection Command Injection 은 웹 애플리케이션에서 시스템 명령을 사용할 때, 세미콜론 혹은 &, && 를 사용하여 하나의 Command를 Injection 하여 두 개의 명령어가 실행되게 하는 공격 입니다. OWASP Top10 중 1위에 속해 있는 Injection 공격으로 서버자체의 콘솔 명령어를 실행시킬 수 있기 때문에 공격이 성공한다면 매우 큰 피해가 발생할 수 있습니다. 그림은 Command Injection 공격의 한 예를 보여주고 있습니다. 현재 웹 애플리케이션에서는 서버의 파일을 cat 명령어를 사용하여 사용자 입력과 함께 보여줄 수 있도록 만들어져 있습니다. 해커는 이 기능을 악용하여 리눅스에서 ① 두 개의 명..
XSS(Cross-Site Scripting) 이란?
2. XSS (Cross-Site Scripting) 2.1 개요 XSS Attack XSS(Cross-Site Scripting) 이란 웹 애플리케이션에서 일어나는 취약점으로 관리자가 아닌 권한이 없는 사용자가 웹 사이트에 스크립트를 삽입하는 공격 기법입니다. XSS공격 역시 OWASP Top10에 포함되어 있습니다. 대부분 사용자가 글을 쓰고 읽을 수 있는 게시판에 많이 발생하지만, 사용자의 입력 값을 웹 페이지에 보여주는 곳에서도 발생합니다. 악의적인 사용자가 C&C 서버로 리다이렉션 하기 위해 리다이렉션 스크립트를 주입하여 중간 경유지로 활용하기도 하고, 사용자의 쿠키를 탈취하여 세션 하이재킹(Session Hijacking) 공격을 수행하기도 합니다. 위의 사진은 XSS 공격중 Persist..
SQL Injection 이란? (SQL 삽입 공격)
1. SQL Injection 1.1 개요 SQL InjectionSQL Injection 이란 악의적인 사용자가 보안상의 취약점을 이용하여, 임의의 SQL 문을 주입하고 실행되게 하여 데이터베이스가 비정상적인 동작을 하도록 조작하는 행위 입니다. 인젝션 공격은 OWASP Top10 중 첫 번째에 속해 있으며, 공격이 비교적 쉬운 편이고 공격에 성공할 경우 큰 피해를 입힐 수 있는 공격입니다. 여기어때 해킹 사건2017년 3월에 일어난 “여기어때” 의 대규모 개인정보 유출 사건도 SQL Injection 으로 인해 피해가 발생하였습니다. 1.2 공격 종류 및 방법Error based SQL Injection논리적 에러를 이용한 SQL Injection SQL 공격 기법은 여러 가지가 있는데 논리적..