p1n9
'DATABASE' 태그의 글 목록

DATABASE

Hacking/Web

[Web Hacking] Missconfiguration DBMS

Missconfiguration DBMS HTML 삽입 미리보기할 수 없는 소스 MySQL HTML 삽입 미리보기할 수 없는 소스 my.cnf MySQL은 mysql이라는 user의 권한으로 파일 관련된 작업을 수행한다. my.cnf 파일 안의 설정 값 secure_file_priv의 설정에 따라 load_file, into outfile을 실행할 수 있다. 파일에 대한 관련 작업을 할 때는 디렉터리 / 파일의 권한을 가지고 있어야 한다. select @@secure_file_priv; # 설정 값 조회 load_file 파일을 로드하는 함수 select load_file('/var/lib/mysql-files/tempfile'); lnto outfile 쿼리 값이나 변수를 파일에 쓸 수 있다. SELE..

CTF/Web

[Dreamhack CTF] Mango

Mango HTML 삽입 미리보기할 수 없는 소스 Vulnerability HTML 삽입 미리보기할 수 없는 소스 웹 사이트로 들어가보면 해당 문구가 보인다. 그대로 URL에 넣어보면 "guest"가 출력이 됩니다. 해당되는 값을 찾는다면 그uid를 보여주는데 소스코드를 보시면 const BAN = ['admin', 'dh', 'admi'];로 필터링을 하고 있습니다. /?login?uid[$ne]=guest&upw[$regex]="^alpha+num" 위와 같은 방식으로 Injection을 수행해도 동작하지만 문제는 uid가 "guest" "admin" 뿐만 아니라 "testuser" "dreamhack" 도 있다는 것 입니다. "$ne" 말고도 uid에 $regex를 사용해 uid[$regex]=ad..

Hacking/Web

[Web Hacking] No SQL Injection(Mongo DB)

No SQL Inection HTML 삽입 미리보기할 수 없는 소스 No SQL Inection HTML 삽입 미리보기할 수 없는 소스 No SQL Injection도 SQL Inection과 유사하게 쿼리에 대한 제대로 된 검증이 없어서 발생됩니다. MongoDB의 같은 경우 Object, Array 타입을 사용할 수 있어서 `$eq` `$ne` 와 같은 연산자를 사용할 수 있습니다. http://victim/?data=1234 -> data : 1234 http://victim/?data[]=array -> data:['array'] http://victim/?data[]=1234&data[]=array -> data:['1234','array'] http://victim/?data['username..

Hacking/Web

[Web Hacking] No SQL Database

No SQL Database HTML 삽입 미리보기할 수 없는 소스 비 관계형 데이터베이스 HTML 삽입 미리보기할 수 없는 소스 비 관계형 데이터베이스는 RDBMS와 다르게 SQL을 사용하지 않습니다. 또한 저장하는 방식이 테이블의 row, column 형태로 저장하지 않고 Collection , Document , Key : Value 형태로 데이터를 저장합니다. 비관계형 데이터베이스의 종류는 MongoDB, Redis , CouchDB.. 등이 있습니다. 일단 MongoDB, Reids , CouchDB의 문법을 알아보도록 하겠습니다. MongoDB HTML 삽입 미리보기할 수 없는 소스 MongoDB는 Document형태로 데이터를 저장합니다. 데이터의 형식이 JSON이라 쿼리를 질의할 때도 JS..