Secure SDLC 보안상 안전한 소프트웨어를 개발하기위해 SDLC에 보안 강화를 위한 프로세스를 포함한 것을 의미 보안 강화를 위한 유지 보수에 들어가는 비용을 최소화 하기 위해 등장함 소프트웨어 개발을 5단계로 구분하여 각 단계별로 수행해야할 프로세스를 분류 참고) SDLC? 소프트웨어를 개발하기 위한 모든 과정을 각 단계별로 나타내는 것, 보안을 위해 SDLC의 전체 단계에 보안 강화를 위한 프로세스를 포함한 것 참고) Secure Coding
소프트웨어 개발 방법론 소프트웨어 개발, 유지보수 등에 필요한 여러가지 일들의 수행방법과 이러한 일들을 효율적으로 수행하려는 과정에서 필요한 각종 기법 ㄷ및 도구를 체계적으로 정리하여 표준화한것 개발방법목적? 소프트웨어 생산성과 품질향상 애자일 방법 - 고객의 요구사항 변화에 유연하게 대응할 수 있도록 일정한 주기를 반복하면서 개발 과정을 진행하는 방법론 - 소규모 프로젝트, 고도로 숙달된 개발자, 급변하는 요구사항에 적합 - 종류 : 익스트림 프로그래밍, 스크럼, 칸반, 크리스탈 1) 익스트림 프로그래밍(XP; eXtreme Programming) 2) 스크럼(Scrum) 비용산정기법 소프트웨어 비용 산정은 소프트웨어의 개발 규모를 소요되는 인워느 자원 기간 등으로 확인하여 실행가능한 계획을 수립하기 ..
개발환경구축 - 응용 소프트웨어 개발을 위해 개발 프로젝트를 이해하고 소프트웨어 및 하드웨어 장비를 구축하는것을 의미 - 응용 소프트웨어가 운영될 환경과 유사한 구조로 구축 - 하드웨어 & 소프트웨어 제품들을 최종적으로 결정하여 구축 하드웨어 환경 - 사용자와의 인터페이스 역할을 하는 클라이언트(Client) 그리고 클라이언트와 통신하여 서비스를 제공하는 서버(Server)로 구성 - 클라이언트 -> PC, 스마트폰 서버의 종류 1) Web Server - 클라이언트로부터 직접 요청을 받아 처리하는 서버로, 저용량의 정적 파일들을 제공 2) Web Application Server (WAS) 3) DB Server 4) File Server 소프트웨어 환경 - 클라이언트와 서버 운영을 위한 시스템 소프트..
프로토콜(Protocol) - 서로 다른 기들 간의 데이터 교환을 원할하게 수행할 수 있도록 표준화 시켜놓은 통신 규약 - 통신을 제어하기 위한 표준 규칙과 절차의 집합으로 하드웨어와 소프트웨어 , 문서를 모두 규정 - 기본요소 : 구문(Syntax), 의미(Semantics), 시간(Timing) - 2020 정처기 실기 기출(구의타) - 구문 : 전송하고자 하는 데이터의 형식, 부호화, 신호 레벨 등을 규정 - 의미 : 두 기기 간의 효율적이고 정확한 정보 전송을 위한 협조 사항과 오류 관리를 위한 제어 정보를 규정 - 시간 : 두 기기 간의 통신 속도, 메시지의 순서 제어 등을 규정 Packet Encapsulation TCP/IP - TCP -> 통신의 전송/수신 , IP -> 데이터 통신을 다룸..
SSL 통신 과정 이해 응용 계층인 HTTP와 TCP 계층 사이에서 작용, 5~6계층사이에서 존재 어플리케이션에 독립적이고 HTTP 제어를 통한 유연성 존재 데이터의 암호화(기밀성), 데이터 무결성, 서버인증기능, 클라이언트 인증기능이 있음 HTTP와 FTP Certificate를 보장하는 방법 —> 인증기관(CA) HTTPS로 여는 추세 HTTP로 전송하는건 평문으로 전송하는 방식이기 때문에 위험 인증서를 만들기 위해서는 키를 만들어야 함 Certificate를 만드는 것은 아무나 만들지 않음 공개키 기반 암호화에서는 키가 2개 공개키, 개인키 —> 공개키를 만들고 CA에 인증을 받으면 보내줌 공개키와 함께 인증서를 같이 묶어서 줌 세션키는 암호화된키 쌍방간에 세션키를 만들 수 있음 서버에는 반드시 공..
1. Windows PowerShell - 시스템 관리를 위해 특별히 설계된 작업 기반 명령 줄 셸 및 스크립팅 언어 - .NET Framework을 기반으로 하기 때문에 Windows에서 실행되는 Windows 운영체제 및 응용 프로그램 관리를 제어하고 자동화 할 수 있도록 도와줌 - cmdlet이라고 하는 Windows PowerShell 명령 사용시 기업의 컴퓨터 관리 가능 - 작업 기반 스크립팅 언어 및 기존 스크립트 및 명령 줄 도구 지원 Window Subsystem for Linux(WSL) - 윈도우에서 사용가능한 리눅스 - 나무위키에서는 완전히 가상화된 머신 보다 더 적은 자원을 사용하며 윈도우 환경에서 리눅스 소프트웨어를 실행시키는 가장 직접적인 방법이면서 그와 동시에 사용자들이 동일한..
0. Bash란? = Bourne Again Shell 의 축약어 = Bourne 쉘과 호환가능하며 명령 라인 편집과 같은 몇가지 점에서 기능 향상 = 리눅스 쉘이며 기눅스에서 가장 많이 사용됨 Bash는 다섯개의 공통된 성질을 갖는다.ㅣ 1. /etc/profile 2. /etc/bashrc 3. ~/.bash_profile - 환경 변수와 bash가 수행될 때 실행되는 프로그램을 제어하는 지역적인 시스템 설정과 관련된 파일 - 전역적인 설정 파일인 /etc/profile이 수행된다음 바로 수행 - 모든 사용자에게 영향을 주는 /etc/profile과는 달리, ~/.bash_profile는 오직 bash를 실행하는 그 사용자에게만 영향을 줌 4. ~/.bashrc - bash가 실행될때마다 수행되고, ..
1. Docker Install WSL2 설치 및 사용 방법 https://www.44bits.io/ko/post/wsl2-install-and-basic-usage WSL2(Windows Subsystem for Linux 2) 설치 및 사용 방법 지난 5월 윈도우10의 대규모 업데이트가 있었습니다. 이번 업데이트에는 WSL2 정식 릴리스가 포함되어있습니다. WSL은 경략 가상화 기술을 통해 윈도우에서 리눅스 배포판을 사용할 수 있게 도와�� www.44bits.io - 참고 사이트 https://bbongcol.github.io/wsl/2020/07/30/wsl2_performance_configuration.html TECHJUN A simple yet classy theme for your Jek..
1. Heroku란? www.heroku.com/ Cloud Application Platform | Heroku Heroku is a platform as a service (PaaS) that enables developers to build, run, and operate applications entirely in the cloud. www.heroku.com 2. 사용방법 1. Git 설치 2. Heroku 가입 3. Create new App & App name 설정 4. Heroku Cli 설치 >> heroku login 5. Heroku에 올리기 >> git init >> git add . >> git commit -m "message " >> heroku git:remote -a "ap..
1. SSL(Secure Socket Layer) 이란? - 보안 소켓 계층이라는 뜻으로 웹 사이트와 브라우저, (혹은 두 서버) 사이에 전송된 데이터를 암호화하여 인터넷 연결 보안을 유지하는 표준 기술 - 해커가 개인 정보 및 금융 정보를 포함한 전송되는 모든 정보를 열람하거나 훔치는 것을 방지 cf) TLS(Transport Layer Securiity) - 더욱 더 강력한 버전의 SSL , 하지만 일반적으로 TLS도 SSL로 불림 2. HTTP(HyperText Transfer Protocol) - 인터넷에서 웹 서어와 사용자컴퓨터에 설치된 웹 브라우저 사이에 문서를 전송하기 위한 통신 - HTTPS는? 보안 취약점을 해결하기 위한 프로토콜, 기본 골격이나 사용목적등은 HTTP와 거의 동일하고 데이..