◈ Study

    [웹 보안] 서비스 거부 공격 DoS(Denial-of-Service) [SYN Flooding, Ping of Death, 스머프 공격]

    - 서비스 거부 공격 DoS(Denial-of-Service)1. DoS란?공격자가 시스템의 자원을 모두 소진시켜서 다른 사람이 서비스를 받지 못하게 방해하는 공격이다. 과부하 걸리게 하는 공격이기에 많은 종류가 있고, 자주 발생하며 보통 테러의 성격을 가지고 있다.2. 취약점 공격 DOS일반적으로 데이터는 네트워크로 한 번에 보내지 않는다. 한 번에 전송될 수 있는 데이터는 기본적으로 1500byte 정도이다. 그 이상의 데이터를 보낼 때에는 데이터가 여러 번 전송되는 것이다.이때 데이터의 순서가 뒤바뀌어서 목적지에 도착할 수 있으니, 데이터(패킷)을 보낼 때, 앞에 순서를 붙인다. 이때 공격자는 데이터를 조작하여 순서가 불완전하도록 한다. 공격자는 이렇게 데이터 순서가 중복되거나, 순서..

    [웹 보안] 포트는 왜 중요할까? [포트와 보안의 상관 관계]

    - 포트는 왜 중요할까? 포트는 네트워크 통신에서 특정 프로세스나 서비스가 통신을 위해 사용하는 출입구이다. 포트는 서로 다른 프로세스 간의 효율적인 통신을 가능하게 하며, 서비스의 접근성과 상호작용에 중요한 역할을 한다. 포트를 적절하게 관리하고 보호하지 않으면 다음과 같은 문제가 발생할 수 있다. 보안 위험: 개방된 포트는 악의적인 공격자에게 시스템에 대한 직접적인 접근을 허용할 수 있다. 서비스 가용성: 올바른 포트 관리가 없으면 서비스에 접근하기 어려워질 수 있으며, 이는 사용자들에게 불편을 초래할 수 있다. 네트워크 성능: 포트 충돌이나 부정적인 활동으로 인해 네트워크 성능이 저하될 수 있다. 좀비PC나 브루트포스로 포트를 찾을 수 있지 않을까? 정답은 YES. 좀비 PC나 브루트포스 공격은 포..

    [study] 서버 사이드 렌더링 vs 클라이언트 사이드 렌더링 [웹 애플리케이션 렌더링 방식(SSR, CSR)]

    - 서버 사이드 렌더링 vs 클라이언트 사이드 렌더링 서버 사이드 렌더링(SSR)과 클라이언트 사이드 렌더링(CSR)은 웹 개발에 있어 주요한 접근 방식이며, 각각의 방법은 웹 애플리케이션을 구축하고 렌더링하는 방식에 있어 서로 다른 접근을 제공한다. 1. 서버 사이드 렌더링(SSR) 웹 애플리케이션의 초기 요청 시 서버 측에서 HTML을 생성하여 클라이언트에 전달하는 방식이다. 이후에는 클라이언트 측에서 JS 파일을 다운로드하고 초기 렌더링을 받은 HTML을 해당 스크립트로 인터랙티브하게 만든다. SEO(검색 엔진 최적화)에 유리하며, 초기 로딩 시간이 짧은 것이 특징이다. - SSR 장점 SEO에 유리하며, 초기 로딩 시간이 짧음 일부 장치에서는 클라이언트 사이드 렌더링보다 더 나은 성능을 보임 - ..

    [study] 반영(reflection)과 배포(deployment)의 차이 [소프트웨어 개발의 핵심 단계: 반영과 배포의 이해]

    - 반영(reflection)과 배포(deployment)의 차이 개발에서의 반영(reflection)과 배포(deployment)는 둘 다 소프트웨어를 변경하거나 업데이트하는 과정을 나타내지만, 목적과 단계에서 약간의 차이가 있다. 1. 반영(Reflection) 소프트웨어 개발 과정 중 변경 사항을 시스템에 적용하는 단계 주로 개발 환경 또는 테스트 환경에서 이루어짐 개발자가 작성한 코드가 다른 코드와 통합되고, 시스템이 이 변경 사항을 반영하여 동작하는지 확인 주로 버전 관리 시스템을 통해 관리 2. 배포(Deployment) 소프트웨어를 실제 운영 환경에 적용하여 사용자가 이용할 수 있도록 하는 단계 주로 프로덕션 환경 또는 실제 운영 환경에서 이루어짐 개발자들이 작성한 코드 변경 사항이 QA(품..

    [Error Note] Local variable defined in an enclosing scope must be final or effectively final [forEach 안에서 변수 초기화 에러]

    - Local variable defined in an enclosing scope must be final or effectively final forEach 문 안에서 변수 초기화를 시도하였으나, 에러를 만나게 되었다. 해당 에러는 람다(Lambda)식을 사용할 때 발생하는 에러이다. 바깥쪽 범위에 정의된 지역 변수는 final이거나 사실상 final이어야 합니다. 람다 안은 익명 클래스(anonymous inner class)이다 보니, 자바 컴파일러가 k, v와 같은 파라미터로 사용하는 변수와 로컬 변수를 구분하지 못한다고 한다. 해결방법으로는 클래스 단에서 변수를 만든 뒤에 사용해주면 된다. - 참고자료 자바 Local variable '변수명' defined in an enclosing sco..