본문 바로가기

CS36

CS 정리 보호되어 있는 글 입니다. 2024. 8. 6.
[시큐어 코딩] 파라미터 조작과 잘못된 접근제어 취약점 action=edit&id=lee&name= 파라미터 조작과 잘못된 접근제어 취약점관리자 페이지와 같이 인가된 특정 사용자만 사용 가능한 페이지에 대해 올바른 접근권한 레벨을 정의하고 점검하는 프로세스가 제대로 적용되지 않은 경우에 발생하는 취약점이다.네트워크 접근이 가능한 내부/외부 사용자는 모두 공격자가 될 수 있다. 인증을 통해 시스템 접근이 허락된 공격자는 URL이나 파라미터를 조작해 권한(Authorization)이 필요한 기능에 접근할 수 있다. 이 경우 시스템이 인가된 사용자에 대한 접근권한을 제대로 체크하지 않는다면 허가되지 않은 기능을 수행할 수 있게 된다.애플리케이션의 특정 기능에 대한 접근 권한에 대한 체크가 제대로 이루어지지 않은 경우에 인가되지 않은 기능 접근 및 관리자 기능이 주.. 2024. 6. 2.
[시큐어 코딩] 파일 업로드/다운로드 취약점 파일 업로드/다운로드 취약점파일을 업로드하고 다운로드하는 기능들이 적절히 제어되지 않을 때 웹쉘이나 악성코드가 업로드되어 서버에서 실행될 수 있으며, 악성코드가 삽입된 파일을 사용자들이 다운로드받아서 실행하여 사용자 PC가 침해사고를 당할 수 있다.  발생 원인업로드기능 취약점 원인업로드되는 파일의 타입을 제한하지 않는 경우업로드되는 파일의 크기나 개수를 제한하지 않는 경우업로드된 파일을 외부에서 직접적으로 접근 가능한 경우업로드된 파일의 이름과 저장된 파일의 이름이 동일해 공격자가 파일을 인식 가능한 경우업로드된 파일이 실행권한을 가지는 경우다운로드기능 취약점 원인파일에 대한 접근권한이 없는 사용자가 직접적인 경로를 통해 파일을 다운로드할 수 있는 경우악성코드에 감염된 파일이 다운로드 허용되는 경우  .. 2024. 6. 2.
[클라우드] 11. Private Cloud (OpenStack) OpenStack (오픈스택)클라우드 환경에서 컴퓨팅 자원과 스토리지 인프라를 셋업하고 구동하기 위해 사용하는 오픈소스 소프트웨어 프로젝트의 집합 OpenStack은 Public 클라우드와 Private 클라우드 구축을 가능하게 하는 오픈 소스 SWOpenStack은 서버, 스토리지, 네트워크들과 같은 자원들을 모두 모아, 이들을 제어하고 운영하기 위한 클라우드 OSOpenStack은 오픈 소스를 기반으로 클라우드를 구축하고 운용하고자 하는 오픈 소스 개발자, 회사, 사용자들이 주축이 되어 발전하는 커뮤니티IaaS 형태의 클라우드 컴퓨팅 오픈 소스 프로젝트로 컴퓨팅, 스토리지, 네트워킹 자원을 관리하는 여러 개의 하위 프로젝트들로 이루어짐 OpenStack 두가지 주요 툴DevStack복잡한 오픈스택 시.. 2024. 5. 29.
[클라우드] 10. Public Cloud (AWS, Azure, GCP) 퍼블릭 클라우드클라우드 플랫폼 • Amazon Web Services (AWS) • MS Azure • Google Cloud • NHN Cloud (오픈스택 기반) 퍼블릭 클라우드 선택 시 고려사항신뢰도 • 믿을 수 있는 클라우드 플랫폼? → 보안, 서비스 종류 및 실제 고객의 피드백 참고안정성 평가 • 정기 릴리즈, 가용성, 성능, 로드 밸런싱 등 확인 필요규모의 경제 • 사내 인프라와 클라우드 리소스를 활용했을 때의 비용 비교표준화된 서비스 • 클라우드 플랫폼이 비용 효율을 가져다 줄 수 있는 서비스 묶음, 리소스 제공하는가?유연성 평가 • 현재 수준에 필요한 기능 이상의 서비스를 고려 (제품의 향후 로드맵) Amazon Web Services (AWS)클라우드 플랫폼 중 가장 오래됨  그 만큼 신.. 2024. 5. 26.
[시큐어 코딩] XSS(크로스 사이트 스크립팅) XSS공격자가 상대방의 브라우저에 스크립트가 실행되도록 해 사용자의 세션을 가로채거나, 웹사이트를 변조하거나, 악의적 콘텐츠를 삽입하거나, 피싱 공격을 진행하는 것을 뜻한다.  XSS 공격유형Reflective XSS공격자가 악성 스크립트가 포함된 URL을 클라이언트에 노출시켜 클릭을 유도하고, 쿠키 정보를 탈취하거나 피싱 사이트, 불법 광고 사이트로 이동하게 만든다.서버에서 사용되는 외부 입력값 name이 안전한 값인지 검사하지 않고 사용되는 경우 XSS 취약점이 있는 처리 구조이다. Reflective XSS 취약점 공격 처리 흐름인데 공격자가 악성 스크립트를 입력값으로 전달하도록 만들어진 URL을 사용자가 클릭하도록 유도하고 이 URL을 사용자가 클릭하면 해당 스크립트가 a.com서버의 ha.do .. 2024. 5. 26.
[시큐어 코딩] XPath 삽입(Injection) XPath 삽입XPath는 XML 문서에서 특정 요소(element)나 속성(attribute)까지 도달하기 위한 경로를 요소의 계층을 이용해서 표현하는 것이다. 파일경로와 비슷하며, 파일 경로에 절대 경로와 상대 경로가 있는 것처럼, XPath도 루트 요소(Root element)부터 특정 요소까지의 경로를 지정하거나 현재 위치하고 있는 요소부터 특정 요소까지의 경로를 지정할 수 있다.아래 사진을 보는 것처럼 XML 문서는 트리 구조로 모델링해 표시할 수 있다. 예를 들어서 prduct id=3인 제품의 가격정보를 출력하기 위한 XPath 표현식은 /catalog/product[@id=3]/price 이다.  발생 원인외부로부터 입력된 값을 이용해 XML 파일의 내용을 검색하기 위해 XPath 쿼리문을.. 2024. 5. 26.
[시큐어 코딩] OS 명령어 삽입(Injection) 운영체제 명령어 삽입프로그램 내에서 사용자 입력이 윈도우의 cmd.exe나 유닉스의 sh, bash 같은 쉘 프로그램 실행을 위한 전달인자(argument)로 사용되는 경우, 그 사용자 입력을 애플리케이션에서 충분히 검증하지 않고 사용함에 따라 공격자가 의도하는 명령이 실행될 수 있는 취약점이다. 이런 취약점을 통해 공격자는 공격용 툴을 외부로부터 업로드하거나 업로드된 툴에 대해 실행권한을 부여할 수 있고, 또한 관리자 권한을 획득해 서버를 제어할 수도 있다.  발생 원인PHP의 exec, ASP의 wscript, shell, JSP의 Runtime.exe()와 같은 운영체제 명령을 실행하는 함수의 인자값으로 검증되지 않은 사용자 입력값을 사용하는 경우 발생한다.  이전시간에 수행했던 SQL인젝션과 같은.. 2024. 5. 24.
[시큐어코딩] SQL 삽입(Injection) SQL 삽입웹 애플리케이션에서 입력받아 데이터베이스로 전달하는 정상적인 쿼리(CRUD)를 변조, 삽입하여 데이터베이스에 불법적인 데이터 열람, 시스템 명령 수행등 비정상적인 데이터베이스에 접근 하는 기법이다. 모든 종류의 DBMS에 적용 가능한 공격기법이며, 지속적으로 발전되고 있는 공격기법이다. 해당 취약점으로 인해악성 스크립트 실행, 외부 프로그램 사용가능, DB 정보 열람,추가,수정,삭제 가능, 프로시저를 통한 운영체제 명령어 수행, 불법 로그인등의 침해 사고가 발생 할 수 있다. 발생원인웹 애플리케이션의 SQL 쿼리문의 일부로 사용되는 사용자의 입력데이터에 대한 적절한 검증 작업이 수행되지 않아서 발생한다.해결방안규범화 : 데이터 손실이 없는 동일한 내용으로 축소 , 공백 제거 등정규화 : 데이터.. 2024. 5. 17.
[클라우드] 9. MSA (MicroService Architecture) IT 운영의 3대 과제IT 운영 조직의 최대 관심사운영 시스템의 장애, 성능, 변경 대응 (+ 보안, 규제)세 가지 이슈를 제대로 해결 못하면? 조직의 IT 예산 급증  IT 운영의 3대 과제 - 장애시스템을 구성하는 모든 요소 중 장애로부터 자유로운 요소는 없음장애로 인한 피해를 줄이는 방법은 장애 대응 역량!대응 역량은 대응 가능한 환경 구축, 시스템 구조 설계, 운영 방식 등 포함 IT 운영의 3대 과제 - 성능어느 시스템이나 구축 후 오픈 초기에는 적절한 수준의 성능 제공하지만! 발전하는 조직일 수록 시스템 성능 문제에 빨리 부딪힘 • 사용자와 데이터가 빠르게 늘어나기 때문대체로 자원을 최적화하는 방식으로 문제를 해결하지만… 어느 순간부터 한계에 부딪히게 됨 IT 운영의 3대 과제 - 변경 지연시.. 2024. 5. 16.