Hacking & Security
NoSQL NoSQL 은 비관계형 데이터베이스를 의미한다. RDBMS는 SQL이라는 정해진 문법을 통해 데이터를 저장하기 때문에 한 가지의 언어로 다양한 DBMS를 사용할 수 있다. 하지만, NoSQL 은 다양한 DBMS가 존재하기 때문에 각각의 구조와 사용 문법을 익혀야 한다. 대표적인 NoSQL은 Redis, Dynamo, CouchDB, MongoDB 등이 있다. MongoDB MongoDB는 JSON 형태의 document를 저장한다. $문자를 이용해 연산자를 사용한다는 특징이 있다. Comparison $eq 지정값과 같은 값을 찾는다. $in 배열 안의 값들과 일치하는 값을 찾는다. $ne 지정된 값과 같이 않은 값을 찾는다. $nin 배열 안의 값들과 일치하지 않는 값을 찾는다. Logica..
SQL injection SQL injection은 DBMS에서 사용하는 쿼리를 임의로 조작해 데이터베이스의 정보를 획득하는 기법이다. 간단하면서도 정말 많이 일어나는 기법이다. 다음 자료는 OWASP(The Open Web Application Security Project)에서 발표한 2021년 가장 많이 일어난 웹 취약점이다. Injection이 1위를 차지하고 있다는 것을 알 수 있다. 이 injection 기법 중 가장 흔히 일어나는 것이 sql injection이라고 할 수 있다. Injection flaws, such as SQL, NoSQL, OS, and LDAP injection, occur when untrusted data is sent to an interpreter as part..