Hack/Web44 [CVE-2022-42889] Apache Commons Text RCE (text4shell) 개요 Apache Commons Text에서 발견된 취약점의 Exploit 난이도와 영향도만을 놓고본다면, Log4shell에 버금가는 취약점이라고 볼 수 있습니다. 해당 취약점은 Apache Commons Text Module에서 발생하며 RCE(Remote Controll Executuion)가 가능한 취약점입니다. 또한, CVE-2022-42889를 부여받았으며, text4shell 이라는 이름으로 명명되었습니다. 취약점 상세 취약 버전 1.10 버전 이하 (1.5 ~ 1.9) text4shell 취약점은 Apache Commons Text의 StringSubstitutor를 사용할 때 발생합니다. StringSubstitutor Class는 문자열로 표현된 변수를 값으로 변환하는 역할을 합니다. .. 2022. 10. 20. Django 1-Day Directory Traversal 취약점, CVE-2021-3281 취약 환경 Djagno 2.2 ~ 2.2.18 Django 3.0 ~ 3.0.12 Dajngo 3.1 ~ 3.1.6 취약점 분석 해당 취약점은 django.utils의 archive 모듈을 이용하여 tar 파일을 압축 해제할 때 경로를 조작할 수 있는 취약점입니다. django.utils.archive.py 파일의 TarArchvie Class 내 Code에서 os.path.join 함수를 사용하여 filname을 정의하고 있기 때문에 해당 취약점이 발생하고 있습니다. class TarArchive(BaseArchive): def __init__(self, file): self._archive = tarfile.open(file) def list(self, *args, **kwargs): self._ar.. 2022. 10. 3. SQL에서 "문자열"="문자열 "이 True인 현상 예전에 들어서 알고 있던 내용인데, 업무를 하다가 오랜만에 보게된 "test"="test " is True 현상... padding 과 관련된 내용이라는 것은 알았지만 정확한 개념이 기억나지 않아 정리를 한 번 해야될 필요성을 느꼈습니다. 먼저 아래와 같은 결과가 참이 나오는 이유는 두 문자열의 길이가 다른 경우 문자열의 길이를 같게 만든 뒤 공백을 추가하는 표준이 존재하기 때문입니다. CREATE TABLE minseok123(title varchar(10)); INSERT INTO minseok123(title) VALUES('test'); SELECT * FROM minseok123 WHERE title='test '; # Result -> title : test 이와 같은 내용은 SQL 표준을 명.. 2022. 9. 27. Spring에서 Matrix Parameter를 지원함에 따라 발생 가능한 취약점 Matrix Parameter 대부분의 웹 서버에서는 아래와 같은 Query String을 이용하여 Parameter를 처리합니다. Scheme:host:port/path?key=value&key=value https://hacksms.tistory.com:443/write?title=Hello&content=World 이러한 Query String을 대체할 수 있는 새로운 Parameter 방식이 추가되었는데, 이러한 방식을 Matrix Parameter라고 합니다. Matrix Parameter는 반드시 경로의 마지막이 아닌 원하는 위치에 Parameter를 작성할 수 있다는 특징을 갖고 있습니다. Scheme:host:port/path;key=value/path2;key=value https://h.. 2022. 9. 9. Debugging 시 Jquery.js에서 무한으로 멈추는 문제 해결 방법 (Infinity Debgguer Paused) Chrome에서 취약점 진단을 위해 Debugging 기능을 사용하였을 때 jquery*.js 파일에서 무한으로 디버깅이 멈추는 현상이 발생했습니다. 이 전에도 해당 서버에서 디버깅을 잘하고 있었기 때문에 갑자기 이런 현상이 발생해서 매우 당황스러웠고... 사실 아직도 명확한 이유에 대해서는 알 수 없지만, 일단 임시방편으로 해결했던 방법은 다음과 같습니다. 계속 디버깅이 잡히는 Line에서 오른쪽 클릭을 한 뒤, "Add script ot ignore list" 버튼을 클릭하면 해당 페이지에서는 더이상 Debgguer Paused 현상이 발생하지 않았습니다. 물론 이 방법은 아예 페이지 자체를 Debugging List에서 제거하는 방법이기 때문에, 해당 페이지 안에 Debugging 하고자 하는 Br.. 2022. 8. 31. CORS(Cross-Origin Resource Sharing) 클라이언트(브라우저)에서는 어떤 방식으로 요청을 하느냐에 따라 각 출처(Same Origin, Cross Origin)에 대해 다른 방식을 가지고 처리하고 있습니다. 그렇다면 여기서 말하는 출처(Origin)란 무엇일까요? 아래와 같은 URL이 있을 때 출처(Origin)에 해당하는 부분은 Protocol+Host+Port 까지 입니다. https://hacksms.tistory.com:443/hello 만약 Protocol, Host, Port까지 동일한 출처(Origin)일 경우 이를 Same Origin이라고 부르며, Protocol, Host, Port 중 하나라도 다른 것이 있다면 이를 Cross Origin이라고 부릅니다. HTML Tag - CORS(Cross-origin resource s.. 2022. 6. 22. CSP(Content-Security-Policy) Bypass CSP(Contnet-Security-Policy)란 CSP(Contnet-Security-Policy)는 웹에서 사용되는 콘텐츠(이미지 태그, 스크립트 등)에 대한 정책으로 XSS와 같은 특정 유형의 공격을 감지하고 완화하는데 도움이 되는 보안 정책 입니다. XSS 공격은 서버에서 받은 콘텐츠를 무조건적으로 신뢰하는 브라우저의 특성을 악용하여 악성 스크립트가 피해자의 브라우저에서 실행되도록 하는 공격입니다. 그런데 CSP를 사용하게 되면 브라우저가 신뢰할 수 있는 출처를 설정할 수 있어 신뢰되는 출처에서 수신받은 스크립트만을 실행하도록 하여 일부 XSS 공격을 방지할 수 있습니다. 또한, 모든 콘텐츠가 HTTPS를 이용하여 로드하도록 지정할 수도 있습니다. 과거에는 CSP로 사용되는 헤더들이 여러 개 .. 2022. 6. 15. 인증(Authentication)과 인가(Authorization)의 차이 전자금융기반시설 취약점 분석.평가 및 ISMS-P 인증을 위해 모의해킹 프로젝트를 나가다보면, 인증(불충분한 이용자 인증)과 인가(부적절한 인가 여부)가 헷갈리는 경우가 많아 이를 정리하기 위해 포스팅을 하게 되었습니다. 인증 (Authentication) 인증은 어떤 개체(사용자 또는 장치)의 신원을 확인하는 과정을 나타내며, 보통 특정 인증 요소(아이디, 패스워드, 핸드폰 인증)를 증거로 제시하여 자신을 인증합니다. 인가 (Authorization) 인가는 어떤 리소스에 접근하거나 동작을 수행할 수 있는지 검증하는 과정을 나타내며, 접근 권한을 확인하는 과정이라고 이해하시면 좋습니다. 상황 별 정답 (답이 틀릴 수 있음) 1. 원래 접근은 가능하나 인증이 필요한 페이지에 강제 접근 시 해당 페이지 접.. 2022. 6. 2. Server Side XSS (Dynamic generated PDF) 개요 특정 페이지 내 코드가 HTML로 렌더링 되어 PDF로 반환되는 페이지가 있습니다. 만약 사용자 입력 값을 해당 페이지에 삽입할 수 있고 HTML 코드로 인식된다면 해당 취약점은 XSS이면서 SSRF(Sever Side Request Forgery)가 될 수 있습니다. 그리고 이러한 취약점을 Server Side XSS라고 부릅니다. ※ PDF로 반환되는 기능에서만 발생하는 건 아니지만 제일 많이 발생하는 유형이라 PDF를 기준으로 설명하겠습니다. Cheat Sheet Confirm Server Side XSS Code Confirm Server Side Blind XSS Code Leaked Server URL LFI(Local File Inclusion) - When the server url .. 2022. 5. 18. 이전 1 2 3 4 5 다음