-
AI (Artificial Intelligence)
New posts
-
침투 테스트란? | 펜 테스트란?
Ref. https://www.cloudflare.com/ko-kr/learning/security/glossary/what-is-penetration-testing/ 펜 테스트에는 윤리적 해커가 회사의 보안 인프라에 대해 계획된 공격을 확장하여 패치해야 할 보안 취약성을 색출하는 작업이 포함됩니다. 펜 테스트는 전체적인 웹 애플리케이션 전략의 일부입니다. 침투 테스트란? 침투 테스트는 사이버 보안 전문가가 컴퓨터 시스템의 취약점을 찾아내어 악용하는 것을 시도하는 보안 활동입니다. 이 시뮬레이션 공격의 목적은 공격자가 악용할 수 있는 시스템 방어의 취약점을 파악하는 것입니다. 이는 은행에서 누군가를 고용하여 도둑으로 분장하고 건물에 침입하여 금고에 접근하도록 하는 것과 같습니다. 그 '도둑'이 은행이나 ..
2023.09.18
-
How to Setup SonarQube locally on Mac
Ref. https://techblost.com/how-to-setup-sonarqube-locally-on-mac/ SonarQube is an open platform for managing continuous inspection of the code quality, which can locate potential errors in the codebase. It currently supports more than 20+ programming languages including support on C#, JavaScript, C/C++, TypeScript, Go, Python, etc., and other languages. In this article, we will see How to Setup ..
2023.09.13
-
Which HTTP Status Code to Use for Every CRUD App
Ref. https://www.moesif.com/blog/technical/api-design/Which-HTTP-Status-Code-To-Use-For-Every-CRUD-App/#:~:text=204%20No%20Content%20%2D%20A%20proper,this%20code%20can%20be%20used. The HTTP specification defines many status codes we can use when responding to our clients. Some APIs only use the most basic codes and define their own error signaling mechanisms on top of it; others want to make ful..
2022.02.22
All posts
-
TCPDUMP 옵션 및 사용법
Tcpdump는 리눅스에서 제공하는 패킷 분석 툴로써 주어진 조건식을 만족하는 네트워크 인터페이스를 거치는 패킷들의 헤더들을 출력해 주는 프로그램이다. 1 Tcpdump의 사용 옵션들 o -a : Network & Broadcast 주소들을 이름들로 바꾼다.o -c Number : 제시된 수의 패킷을 받은 후 종료한다.o -d : compile된 packet-matching code를 사람이 읽을 수 있도록 바꾸어 표준 출력으로 출력하고, 종료한다.o -dd : packet-matching code를 C program의 일부로 출력한다.o -ddd : packet-matching code를 숫자로 출력한다.o -e : 출력되는 각각의 행에 대해서 link-level 헤더를 출력한다.o -f : 외부의 i..
2014.07.07
-
[Oracle] CREATE 테이블을 만들어 보자
DDL(Date Definition Language) 객체 조작 문법중에는 create, drop ,alter문등이 있다.그중 이번 장에서는 create를 이용하여 테이블을 만들어 보겠다. 1. 기본 데이터 타입 살펴보기 (문자형, 숫자형, 날짜형) 2. 컬럼 속성(무결성 제약조건) 테이블은 데이터를 담고 있는 상자라고 할 수 있다. 상자에 물건들을 보관하고 꺼내고 하듯이 데이터베이스에서는 데이터드을 테이블을 통해서 관리하고 있다. 데이터베이스에서 가장 기본이 되는 것이 테이블이다.테이블은 로우(행, row, 가로축)와 컬럼(열, column, 세로축)으로 구성되며 데이터베이스 전체를 하나의 거대한 창고라 생각하면 이해하기 쉽다. 많은 물품들을 보관하..
2014.06.27
-
영속성(Persistence)이란?
업무를 하다보면 동료가 영속성이란 말을 하는걸 들을 수 있습니다. 혹은 IT서적을 보다보면 영속성(Persistence)라는 단어가 종종 나오는것을 볼 수 있는데요. 과연 영속성(Persistence)이라는 것이 무엇인지 알아보겠습니다. 알고보면 별거 아닙니다. 아주 쉽습니다. 일단 아래 사전적 의미부터 보겠습니다. 영속 persistence : 고집 : (없어지지 않고 오랜동안) 지속됨 음… 뭔가 감이 오는것도 같은데 말이죠. 그럼 위키피디아에서는 뭐라고 하는지도 살펴 보겠습니다. 영속성(persistence)은 데이터를 생성한 프로그램의 실행이 종료되더라도 사라지지 않는 데이터의 특성을 의미한다. 영속성은 파일 시스템, 관계형 테이터베이스 혹은 객체 데이터베이스 등을 활용하여 구현한다. 영속성을 갖지..
2019.08.23
-
웹기획 일정관리,업무관리 WBS 정의 및 이해
웹기획 일정관리,업무관리 WBS 정의 및 이해 1. WBS (Work Breakdown Structure) WBS는 프로젝트를 진행하는데 있어 업무사항들의 분류를 구분하여 분류 단위로 일정을 관리하기 위한 문서입니다. 국문으로 표현하자면 "작업분류체계" 정도로 불릴 수 있을 듯한데 통상 W.B.S라고 부릅니다. WBS는 기본적으로 그룹별 업무, 담당자, 일정, 완성서 정도의 내용들을 표현합니다. 2. WBS 작성하기 WBS를 작성하는데는 MS 프로젝트 프로그램을 활용해서 작성하면 효율적이겠지만 고객과 파일 공유, 작업자들과의 파일 공유시 많이 활용하는 범용적 프로그램이 아니기 때문에 저는 보통 엑셀을 활용해서 작성합니다. WBS 작성시 업무(TASK) 별로 정리하는 게 일반적인데 업무(TASK) 는 "분..
2014.05.23
-
시큐어 코딩 - 블랙리스트 / 화이트리스트
참고자료 : 화이트리스트(whitelist)란? 화이티리스트란 '안전'이 증명된 것만을 허용하는 것으로 '악의성'이 입증된 것을 차단하는 블랙리스트 보안과 상반되는 보안 방식 이다. 화이트리스트, 블랙리스트라는 용어 대신 'positive'와 'nagative' 보안 방법으로 불려지기도 합니다. 예를 들어 이메일에 IP 기반의 화이트리스트 방식을 적용하면 사전에 입증된 정상 IP로부터의 이메일만 허용하고, 이외의 IP로부터의 이메일은 차단하게 된다. 반대로 블랙리스트 방식은 악성 IP로 판명된 IP에서 발송되는 이메일을 제외한 모든 이메일을 허용하게 됩니다. 안전이 입증된 것만을 허용하기에 화이트리스트 보안은 보다 강력한 보안성을 유지할 수 있지만, 운용의 어려움으로 인해 전면적으로 이용되지는 못했습니다..
2014.03.26
-
프로세스간 통신(IPC ; Inter-Process Communication)
IPC라는게 필요한 배경?? p1, p2, p3라는 프로세스가 있습니다. p1이 작업중에 문제가 생겼는데, 만일 p2나 p3같은 다른 주소공간을 침범(write)해 버린다면? 즉, p2나 p3의 스택영역을 건드린다면 정말 큰 문제가 발생하겠지요!! 이것은 "비정상공유" 가 이뤄진 것인데, 아주 큰 문제입니다. 그래서 커널은 이것을 막기위해 Protection 을 합니다. Protection ?? 커널은 임의의 프로세스가 다른 프로세스의 주소공간에 접근(access)하는 것을 금지하는 것입니다. 그러고는 오직 커널만이 모든 프로세스의 주소공간에 접근할 수 있도록 합니다. 커널은 신뢰되는 것이기 때문이지요. 그래서 디바이스 드라이버를 작성하든 뭘하든 커널을 잘못 건드리면 전체 시스템이 잘못될수 있는거구요. ..
2014.04.02
-
javascript fetch 를 이용한 ajax 통신 및 주의점
팁/자료HTTP자바스크립트 fetch 란? fetch가 나오기전까진 자바스크립트에서 ajax을 쓰기란 매우 까다롭고 익스플로러랑 기타브라우저가 맞춰저 있지 않다보니 커먼라이브러로 만들어쓰거나 손쉽게 만들어져 있는 제이쿼리를 이용하였습니다. ajax이 처음 나오던 시절엔 사이트 전체에 극히 일부에서 사용하던 기술이었지만, 현재는 극단적으로 말해 SPA 처럼 ajax의 구성이 대부분인 사이트까지 있습니다. 그러다보니 새로운 표준이 필요했고 ES2015 쯤에 아래와 같이 공식 스펙으로 구현되었습니다. 참고: https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch 형태 fetch(주소:string, 옵션); 옵션 상세 속성이름테스트3 met..
2019.10.18
-
Ant, Maven, Gradle 이 뭘까?
스프링부트를 시작하며 자바 빌드도구인 Ant, Maven, Gradle에 대해 궁금해 졌다. (이번 글은 작성자 개인이 빌드 도구 각각에 대한 이해와특징을 알아보기 위해 작성된 것이다.) 웹/안드로이드 등등 프로그래밍 개발이 발전하며 프로젝트 생성에 필요한 라이브러리도 점점 많아지게 되었다. 이렇게 많아진 라이브러리를 직접 사이트에서 다운로드 받아 시스템에 추가하는 방법이 있지만 번거로움이 뒤따른다. 여기서 빌드도구(Build Tool)가 등장한다. 빌드도구란, 1)빠른 기간동안에 계속해서 늘어나는 라이브러리의 추가와 2)프로젝트를 진행하며 라이브러리의 버전을 동기화하기 어렵기 때문에 등장하였다. 초기의 JAVA 빌드 도구로 Ant라는 도구를 많이 사용하였으나 늘어나는 라이브러리를 관리하기 위해 Mave..
2019.08.07
-
linux 브릿지 설정 brctl
리눅스에서 브리지를 추가하는 명령어이다. 사용법은 다음과 같다. eth0와 eth1을 br0로 묶는 방법이다. 1. #brctl addbr br0 : br0 인터페이스를 추가한다. 2. #brctl addif eth0 : eth0 추가 3. #brctl addif eth1 : eth1 추가 4. #ifconfig eth0 0.0.0.0 : eth0 down 5. #ifconfig eth1 0.0.0.0 : eth1 down 6. #ifconfig br0 10.10.10.10 netmask 255.255.255.0 설정 완료 7. sysctl -a | grep forward : forward 설정 확인 8. sysctl -w 항목=1 : forward enable ifcfg 파일 설정 9. ifcfg-br..
2014.07.29
-
1편: 라우터 구조 소개 (Part 1: Router Architecture)
2000년대 초반에 L3 스위치(Ethernet 스위치 + IP 라우터) 개발 회사에서 IBM NP4GS3C라는 Network Processor(그 당시 칩 하나에 $500이면 상당히 비싼 칩이죠)를 이용하여 패킷 포워딩 기능을 구현(assembler 기반의 microcode)한 적이 있습니다. 그 때의 경험과 추억을 되살려 L3 스위치의 패킷 전달 로직에 대해 설명을 드려 볼까 합니다. 아래와 같은 순으로 연재를 하겠습니다. 1편: 라우터 구조 소개 (오늘 글) 2편: IP 라우터의 패킷 포워딩 과정 3편: L3 스위치의 L2(Ethernet) 스위칭 과정 4편: L3 스위치의 IP 포워딩 과정 라우터 구조 좌측 그림은 Cisco 7600 라우터 형상입니다. 그 역할에 따라 3가지 모듈로 나눌 수 있습..
2014.04.16