본문 바로가기
반응형

IT/Knowledge272

CSRF란?(23.05.16) CSRF란? 사이트 간 요청 위조(또는 크로스 사이트 요청 위조, 영어: Cross-site request forgery, CSRF, XSRF)는 웹사이트 취약점 공격의 하나로, 사용자가 자신의 의지와는 무관하게 공격자가 의도한 행위(수정, 삭제, 등록 등)를 특정 웹사이트에 요청하게 하는 공격을 말한다. 유명 경매 사이트인 옥션에서 발생한 개인정보 유출 사건에서 사용된 공격 방식 중 하나다. 사이트 간 스크립팅(XSS)을 이용한 공격이 사용자가 특정 웹사이트를 신용하는 점을 노린 것이라면, 사이트간 요청 위조는 특정 웹사이트가 사용자의 웹 브라우저를 신용하는 상태를 노린 것이다. 일단 사용자가 웹사이트에 로그인한 상태에서 사이트간 요청 위조 공격 코드가 삽입된 페이지를 열면, 공격 대상이 되는 웹사이트.. 2023. 5. 15.
baeldung 자바와 스프링에 대해서 공부를 할때 다양한 사이트를 참조 하곤 한다. 문법에 대해선 주로 공식홈페이지를 참고 하는데 그만큼 많이 참고하는 사이트가 있다. https://www.baeldung.com/ 바로 이 사이트이다. 발음은 벨덩이라고 칭한다. 2023. 4. 19.
Thread starvation or clock leap detected 이클립스를 통해서 서버를 띄워두고 종료를 하기 전에로그를 보니 아래와 같은 로그들이 대량 출력되어있었다. 2023-04-16T15:15:55.573+09:00  WARN 54734 --- [l-1 housekeeper] com.zaxxer.hikari.pool.HikariPool        : HikariPool-1 - Thread starvation or clock leap detected (housekeeper delta=17m43s37ms).2023-04-16T15:31:58.287+09:00  WARN 54734 --- [l-1 housekeeper] com.zaxxer.hikari.pool.HikariPool        : HikariPool-1 - Thread starvation or cl.. 2023. 4. 16.
트레이드오프 (trade-off) 트레이드오프란 객체의 어느 한부분의 품질을 높이거나 낮추는게, 다른 부분의 품질을 높이거나 낮추는데 영향을 끼치는 상황을 이야기한다. 일반적으로 한쪽의 품질을 높이면, 다른쪽의 품질은 떨어지는 방향으로 흐른다.소프트웨어 개발을 예로들어보자. 일반적으로 개발시간을 늘리면 제품의 완성도는 높아지겠지만, 개발시간이 늘어날 수록 비용이 증가하게 된다. 그러므로 시간과 비용을 비교해 가면서 최적의 타협점을 찾아내어야 한다. 이것을 트레이드오프라고 한다. 비례도 아니고 반비례 그래프도 아닌 이 그래프는 컴퓨터 과학에서 space-time트레이드오프가 중요하게 취급된다. 메모리(:12)의 사용을 크게 하면 크게할 수록 프로그램이 빨리 작동하게 할 수 있겠지만 비용역시 크게 증가할 것이다. 반대로 메모리의 사용을 줄이.. 2023. 3. 29.
Y2K(23.03.26) 네이버 지식백과에서 설명하는 Y2K 란 아래와 같다. 연도를 뜻하는 Year, 숫자 2, 1000을 가리키는 Kilo의 앞 글자를 따 1990년대 말~2000년대 초반 세기말의 생활양식을 가리킨다. 원래는 2000년을 앞두고 당시 컴퓨터가 2000년 이후의 연도를 제대로 인식하지 못하는 버그를 가리키는 말이었다. [네이버 지식백과] Y2K (매일경제, 매경닷컴) 먼저 1999년에서 2000년도로 넘어오게 되면서 2000년 01월 01일을 표시하는 방식이 000101 이 되었을텐데 여기서 컴퓨터는 1900년 01월 01일로 인식을 하는 문제가 되었다. 그리하여 많은 전산상 마비가 오고 문제 버그들이 발생하였다. 그래서 Y2K 를 밀레니엄 버그라고도 불린다. 요즘은 패션에 대한 MZ와 비슷한 의미로 시대를 .. 2023. 3. 25.
JWT ? JWT란? JWT는 JSON Web Token의 약자로 선택적 서명 및 암호화를 사용하여 JSON 데이터를 보관하고 있는 인터넷 표준 웹 토큰이며 JWT를 사용하는 이유는 주로 사용자 인증처리를 위해 사용한다. 기존에 사용되던 세션 처리와 달리 서버에 정보를 저장하지 않아 Stateless한 상태의 서버를 만들어주는 특징이 있다. JWT 구조는 Header(헤더), Payload(내용), Signature(서명)의 3가지로 구분되며 다음과 같이 토큰이 만들어진다. JWT 토큰: [Base64(Header)].[Base64(Payload)].[Base64(Signature)] Header(헤더) 헤더에는 토큰의 타입과 해시 암호화 알고리즘으로 구성되어 있다. { "typ": "JWT", "alg": "HS.. 2023. 3. 24.
message Queue (MQ) 란? 이번 포스팅에서는 메세지 큐에 대해서 알아볼 예정이다. 먼저 큐에 대한 개념은 아래 참고 포스팅을 통해서 확인 바란다. 메세지 큐는 말 그대로 큐 안에 메세지를 넣는 것이다. 사전적인 의미는 다음과 같다. 메시지 큐(MessageQueue: MQ)는 프로세스 또는 프로그램 인스턴스가 데이터를 서로 교환할때 사용하는 통신 방법입니다. 더 큰 개념으로는 메시지 지향 미들웨어(Meesage Oriented Middleware: MOM)를 구현한 시스템을 의미합니다. 여기서 MOM은 비동기 메시지를 사용하는 응용 프로그램 간의 데이터 송수신을 말합니다. 그럼으로써 얻을수 있는 장점은 아래와 같다. 비동기(Asynchronous): 큐(Queue)에 넣기 때문에 나중에 처리 가능 비동조(Decoupling): 애.. 2023. 3. 23.
[NATS] NATS 개념 정리 NATS 란 오픈소스 메세지 큐 서비스의 한 종류로 메인 서버는 Go 언어로 구현되어 있고, 클라이언트들은 다양한 언어에 대한 라이브러리들을 지원해주고 있다. 기본적으로 Publisher와 Subscriber로 구성되어 있으며 인코딩 된 메세지를 publisher가 송신하면 하나 또는 여러 개의 subscriber에 의해서 수신되고 디코딩 되어진다. NATS는 환경, 언어, cloud / on-premise 시스템 등 프로그램 간의 서로 다른 환경에 상관없이 쉽게 통신할 수 있도록 구현되어 있다. Client들은 URL을 통해서 서버에 접속하고, subject를 통해 메세지를 전송한다. NATS 서버는 at most once의 QoS를 제공한다. 만약 특정 subject에 대한 subscriber가 없는.. 2023. 3. 22.
배치와 데몬의 차이 배치(Batch)란? 배치는 일반 프로세스의 일종으로 일련의 작업을 지정한 특정 시간에 실행한다. 지정한 시간 이후에는 자원을 거의 소비하지 않는 것이 특징이다. 데몬(Deamon)이란? 특정 서비스를 위해 백그라운드 상태에서 계속 실행되는 서버 프로세스이다. 일반적으로 각 서비스가 사용하는 port를 관리하는 관리하는 데몬이 존재하고 데몬은 서버가 부팅될 때 메모리에 로딩이 되고 서버가 죽을 때까지 계속 자원을 할당받고 있다. 데몬은 서버가 죽을 때까지 자원을 점유하고 있는 형태여서 많은 데몬이 실행된다면 자원 소비가 크고 윈도우에서는 데몬을 서비스라 부르기에 작업관리자를 열어보면 서비스가 띄워져 있는것들을 볼수가 있다. 2023. 3. 8.
반응형