본문 바로가기
반응형

기타31

CSRF(Cross Site Request Forgery)란? CSRFCross Site Request Forgery란? · CSRF(Cross Site Request Forgery): 사이트 간 요청 위조이라는 뜻으로, 웹사이트 취약점 공격의 하나다. 사용자가 자신의 의지와는 무관하게 공격자가 의도한 행위(수정, 삭제, 등록 등)를 특정 웹사이트에 요청하게 하는 공격을 말한다. - 특정 웹사이트가 사용자의 웹 브라우저를 신용하는 상태를 노린 공격 방식이다. - 사용자가 웹사이트에 로그인한 상태에서 사이트간 요청 위조 공격 코드가 삽입된 페이지를 열면, 공격 대상이 되는 웹사이트는 위조된 공격 명령이 믿을 수 있는 사용자로부터 발송된 것으로 판단하게 되어 공격에 노출된다. ex) 해커가 사용자의 권한을 도용하여 광고성 글을 올린다. 공격 과정 1. 이용자는 웹사이트.. 2022. 1. 30.
.gitignore가 작동하지 않는 경우 고려할 사항 대부분의 개발자가 버전 관리를 위해 Git을 사용한다. 이때 보안등의 이유로 버전 관리에서 제외할 디렉터리, 파일 등이 존재할 수 있다. 이럴때 .gitignore 파일에 해당 목록을 작성하여 관리할 수 있다. 그런데 .gitignore 파일에 작성한 목록이 버전 관리에서 제외되지 않고, 그대로 보이는 경우가 있다. 이런 경우 Git의 캐시가 문제일 수 있다. 따라서 다음과 같이 Git의 캐시는 지우고 다시 버전 관리할 파일 및 디렉터리를 스테이지에 올려보자. git rm -r --cached . git add. 2022. 1. 20.
Log4j 보안 취약점 사태 Log4j란? · 아파치 소프트웨어 재단의 자바 기반 로깅 프레임워크다. · Logback과 더불어 자바의 대표적인 로깅 프레임워크다. 발견된 취약점 이 취약점은 Log4j의 JNDI, LDAP를 이용한다. JNDI(Java Naming and Directory Interface)은 자바 프로그램이 디렉토리를 통해 데이터(Java 객체 형태)를 찾을 수 있도록 하는 디렉토리 서비스다. LDAP(Lightweight Derectory Access Protocol)은 TCP/IP 위에서 디렉터리 서비스를 조회하고 수정하는 응용 프로토콜이다. Log4j에서는 편리하게 ${prefix:name} 형식으로 Java 객체를 볼 수 있게 하는 문법이 존재한다. 예를 들어 ${java:version} 명령어는 현재 실.. 2021. 12. 15.
네이버 클라우드 플랫폼에서 pinpoint 사용하여 스프링부트(Spring Boot) 서버 모니터링하기, Pinpoint Cloud Pinpoint란? · Java로 작성된 대규모 분산 시스템용 APM 도구 - APM: · Application Performance Management의 약자, 응용 소프트웨어의 성능과 서비스 가용성을 모니터링, 관리하는 도구 · Transaction 추적을 제공 · 임계치를 설정하여, Event 발생시 SMS 또는 Email을 통해 알림을 받을 수 있다. · 우아한형제들, 네이버, NHN 등에서 사용중 Pinpoint 사용하기 네이버 클라우드 플랫폼 콘솔로 들어가서 Product&Services 탭을 클릭하고, 하단으로 내려가면 Management - Pinpoint Cloud를 확인할 수 있다. 이것을 클릭한다. 이동한 화면에서 'Repository 생성' 버튼을 클릭한다. 다음과 같이 Reposi.. 2021. 11. 24.
JMeter란? JMeter 사용법 JMeter란? · 성능 측정 및 부하(load) 테스트 기능을 제공하는 오픈 소스 자바 애플리케이션 · 다양한 형태의 애플리케이션 테스트를 지원한다. - 웹 - HTTP, HTTPS - SOAP / REST 웹 서비스 - FTP - 데이터베이스 (JDBC 사용) - Mail (SMTP, POP3, IMAP) · CLI를 지원한다. - CI, CD 툴과 연동할 때 편리하다. - UI를 사용하는 것보다 메모리 등 시스템 리소스를 적게 사용한다. · 자바 Swing으로 만들어진 UI를 사용한다. · XML을 통해 테스트를 실행한다. · 대체재: - nGrinder (https://naver.github.io/ngrinder/) - Gating (https://gatling.io/) JMeter 설치 http.. 2021. 11. 23.
[intellij] 인텔리제이에 xml 파일을 통해 코딩컨벤션 적용하기 코딩컨벤션이란 특정 언어에 대하여 읽고, 관리하기 쉬운 코드를 작성하기 위해 정한 코딩 규약을 말한다. 이러한 규약의 예로 아래 네이버 코딩 컨벤션이 있다. https://naver.github.io/hackday-conventions-java/ 이러한 코딩 컨벤션은 분량이 많고, 복잡하여 개발자가 100% 완벽하게 숙지하기 어려울 수 있다. 이럴 때는 IDE의 도움을 받을 수 있다. 여기서는 인텔리제이에 규약이 적혀있는 xml 문서를 통해 코딩컨벤션을 적용하는 방법을 알아본다. 규약 xml 문서는 naver-intellij-formatter.xml을 사용한다. 다음 페이지에서 다운로드 받을 수 있다. https://naver.github.io/hackday-conventions-java/ 맥 기준으로 .. 2021. 11. 9.
반응형