Client-Side Template Injection (이하 csti)는 Server-Side Template Injection(이하 ssti)와 웹 템플릿 엔진에 공격자의 공격 코드가 템플릿에 포함된 상태에서 공격자의 공격코드가 인젝션 되어진다는 것에서 같다. 말 그대로 server 와 client의 차이가 존재할 뿐이다. Client Side에서 Javascript를 실행 할 수 있기 때문에, XSS 취약점과 연계 가능하다는 것이 일감이다. CSTI의 취약성은 클라이언트측 템플릿 프레임워크를 사용하는 응용프로그램이 웹 페이지에 사용자 입력을 동적으로 포함할 때 발생한다. 당연하게도 ssti와 같이 템플릿 엔진에 따라 사용할 수 있는 payload 와 공격 방식이 다르다. 대표적인 프론트엔드 프레임워..
2fb5e928-47f5-11ed-862e-0242ac110005 > uuid 버전 1의 예시 다음의 uuid 에서 매우 많은 정보가 포함되어 있습니다. 1. mac 주소 예시에서 0242ac110005 부분으로 이는 서버의 mac 주소로 통한다 2. Time stamp uuid v1은 timestamp를 기반으로 uuid를 생성하기 때문에, 시드값으로 time.time() 과 같은 함수를 사용하였다면 이는 위험할 수 있습니다. 예시의 uuid에서 timestamp를 추출하는 방법
해당 취약점은 php에서 다른 파일을 동적으로 불러올때 발생할 수 있다. > GET요청에 대한 검증없이 page_number 에 대한 값을 include 해주고 있다. 위 코드를 예로들어 보자. 개발자가 예상하지 못한 값을 인자로 넘겨, 알려지기를 원치 않는 정보를 확인할 수 있는 간단한 LFI가 가능한 코드이다. 그러나 include의 특성상 해당 파일을 실행 시켜주는것으로 1. 주석, 변수, 등 파일의 전체 내용을 확인해야 할 경우 2. system 커멘드를 사용해야 할 경우 3. zip파일의 압축을 풀고 해당 파일을 실행시켜야 할 경우 php wrapper을 사용하여야 한다. expect:// system command를 실행시켜 준다 php://filter encode / decode 옵션으로 서..