Advanced Search
Search Results
66 total results found
1.9 MFA (Multi-Factor Authentication) 설정
취약점 설명 MFA, 흔히 말하는 2차인증, OTP, 다중 인증 과 같다. 사용자의 아이디, 패스워드 뿐만 아니라 다른 방법으로 추가 인증을 진행하는 것 요즘은 다른 곳에서 유출된 계정 정보를 가지고 다른 서비스에도 대입해보는 크리덴셜 스터핑 공격이 성행하기 때문에 사용자의 추가 인증이 거의 필수가 되가는 듯 하다. 딴소리 MFA인증 방식은 아래와 같다. 테스트를 해보다 보니 궁금점 콘솔 액세스가 비활성화 된 계정에 MFA를 설정하는게 의미가 있을...
1.10 AWS 계정 패스워드 정책 관리
취약점 설명 패스워드를 생성할 때는 복잡도를 충족하도록 설정해야 한다. 일반적으로 3종류 이상의 조합(대 소문자, 숫자 특수문자) 및 8자리 이상의 패스워드를 기준으로 한다. 또는 2종류 이상의 조합 + 10자리 이상의 패스워드도 가능. AWS에서는 계정의 패스워드를 설정할때 복잡도를 충족하도록 강제하는 정책이 기본적으로 적용되는데, 해당 설정을 개인 설정으로 변경하여 취약하게 사용할 경우 보안적으로 위험할 수 있다. 딴소리 SK AWS 진단...
1.11 EKS 사용자 관리
취약점 설명 EKS는 AWS에서 제공하는 쿠버네티스 서비스이다. 쿠버네티스는 컨테이너를 종합적으로 관리하는 서비스라고 생각하면 되며, EKS에서 마스터노드를 자체적으로 관리, 업데이트한다. 현 취약점은 역할 기반 접근 제어 정책(RBAC)을 통해 사용자들의 역할이 적절히 지정 되어있는지를 확인한다. 딴소리 요즘 AWS가 굉장히 상용화되어 있다보니 점점 진단 빈도수가 늘고있는데, EKS부분은 보안조치가 취해지지 않은 경우가 좀 있다. 그런 설정이...
1.12 EKS 서비스 어카운트 관리
취약점 설명 서비스 어카운트 = 파드에 K8S RBAC 역할을 할당할 수 있는 특수한 유형의 개체 Cluster 내의 각 네임스페이스에 기본 서비스 어카운트가 자동으로 생성됨 쉽게 설명하면 01. "서비스 어카운트(SA)" 를 Pod 에 부여하여 "RBAC(역할 기반 접근 제어)" 를 수행한다. 02. 서비스어카운트에는 RBAC 정책과, 인증에 사용할 Token이 존재한다. 03. 별도의 서비스어카운트를 지정하지 않을경우 default 서비스 어카운...
1-1. hello world 출력
실습 전 이론 01. C 프로그램은 항상 하나 이상의 함수로 구성된다. 02. 함수의 이름은 자유지만 주 프로그램의 이름은 꼭 main으로 한다. 03. 이번 프로그램에서 사용한 함수는 printf이며 stdio(표준 입출력 라이브러리)에 들어있다. 03-1 #include <stdio.h>를 통해 라이브러리를 불러온다. 04. 함수들 사이에 데이터가 오갈땐 매개변수를 사용한다. 04-1. 매개변수는 함수 뒤의 괄호에 써준다. ex. main(para...
1-2. 변수와 수식 표현
실습 전 이론 01. 이번 챕터에선 변수와 수식을 통해 화씨 온도를 섭씨 온도로 바꿔 출력하는 프로그램을 만들어본다. 02. 코드를 그대로 복사, 붙여넣지 말자, 결국 같은 코드를 가져다 쓴다해도 직접쓰는게 배울땐 훨씬 좋다. 복붙은 휘발된다. 03. 코드가 이해가 안되면 넘어가지 마라, 번역을 한다고 생각하고 한줄한줄 무슨 과정이 이어지는지 생각하면서 봐야한다. 04. 이번 프로그램을 통해 변수 지정 및 반복문을 배워볼 수 있다. 05. /**/ 를 ...
1-3. For 문
실습 전 이론 01. 이전 챕터에서 온도변환 프로그램을 작성했었다. 해당 프로그램에서는 반복을 위해 while을 사용했었고 for 로변환하여 사용해본다. 실습 #include <stdio.h> int main() { int fahr; for (fahr = 0; fahr <=300; fahr = fahr + 20) printf("%3d %6.1f\n", fahr, (5.0/9...
25-11-29 일상 (chatreey t9 갑자기 꺼짐 현상)
우리집엔 미니피시가 두대가 있다. 처음으로 구매한 컴퓨터는 chatreey T9 -> 12~3만원 정도? 회사에서 일주일에 한번씩 재택을 시작하게 되면서 노트북을 들고다니기가 번거로워 구입한 녀석인데.. 엑셀을 돌리는데 무리는 없지만 그 이상 여러 앱들을 돌리기엔 무리가 있었다. 안드로이드 애뮬레이터는 물론 기대도 못하고.. 그래서 T9를 NAS 그리고 웹 서비스 서버로 돌리기로 결정 (지금 이 페이지도 T9으로 돌아가고있다.) 내장 S...
1-4. 상수 정의
실습 전 이론 이전 프로그램에서 변수에 300,200 같은 정수를 지정했었다. 하지만 변수는 말그대로 변할 수 있는 값, 코드 중간에 어디서 변화가 생길지 모르기 때문에 변할일이 없는 값은 상수로 정의를 한다. 실습 #include <stdio.h> #define LOWER 0 #define UPPER 300 #define STEP 20 #define TEXT "hello world" int main() { prin...
1.5.1 문자 입출력
실습 전 이론 프로그램하면 빠질 수 없는게 또 사용자의 입력 값을 받아서 처리하는 부분이다. 파이썬을 공부할때도 input()을 알게 되면서 부터 재미를 확 느꼈던 기억이 있다. 이번 실습에서는 입력 값을 받는 함수 getchar() 와 문자 하나를 출력하는 함수 putchar()를 사용한다. 이번 프로그램에선 EOF 라는 개념이 등장한다. End of File 의 줄임말이며, 파일의 끝을 나타낸다. 프로그램의 진행은 다음과 같다. 1. ...
1.5.2 문자의 갯수 세기
실습 전 이론 이전에 만들었던 입력 값 복사 프로그램에서 조금 변형된 버전이다. 이전에는 그냥 들어온 값을 그대로 출력했다면 이번에는 들어온 값의 문자 갯수를 세는 프로그램으로 만들어보자 ex. abcd -> 4 실습 #include <stdio.h> int main(){ int c; int count; c = getchar(); count = 0; while(c != EOF){ ++count;...
1.5.3 실습 문제 3가지
실습 전 이론 책에서 실습 문제를 내줬다. 이전에 만들어 놨던 프로그램은 EOF 신호를 받으면 그동안의 문자들을 계산하기 때문에 거기서 조금 변형을 하면 될것 같다. 실습 1. 첫번쨰 문제 - 빈칸, tab, 행의 갯수를 세는 프로그램 #include <stdio.h> int main(){ int c; int blankCount = 0; int tabCount = 0; int lnCount = 0; ...
1.5.3 행의 갯수 세기
실습 전 이론 입력 받은 문자의 개행 갯수를 찾기 위해선 \n 기호를 찾으면 된다. "안녕\n하세요." 를 출력하면 안녕 하세요 로 출력이 된다는 말이다. 이번 프로그램에선 if 문도 사용하게 된다. 실습 #include <stdio.h> int main() { int c, nl; nl = 0; while ((c = getchar())!=EOF) if (c =='\n') ++nl; ...
1.5.4 단어 갯수 세기
실습 전 이론 이번에는 단어 갯수 세기 프로그램이다. 하나의 단어를 세는 기준은 빈칸, tab, 혹은 개행이 나오면 한 단어가 끝났다고 생각한다. 이번 프로그램에선 || 와 상수 지정을 사용하여 행, 단어, 문자의 갯수를 센다. 실습 #include <stdio.h> #define IN 1 #define OUT 0 int main(){ int c, nl, nw, nc, state; state = OUT; nl ...
1.5.5 실습 문제 2가지
실습 전 이론 책을 보다보니 이론보다 이거 예제 문제가 본체인것 같다. 뭔가 프로그램의 원리 혹은 흐름을 이해하지 못하면 턱 하고 막혀버리는 부분들이 존재한다. 재밌당. 실습 예제 1. 위의 프로그램이 오동작을 하도록 하는 입력파일을 만들어 보라. *이 문제는 일단 포기.. 프로그램 자체가 뻑이 나야하는건지.. 내가 넣은 값이랑 틀린것이 나와야하는건지.. 추후에 도전 해보기로 2. 파일을 읽어 한 행에 한 단어씩 출력하는 프로그램을 작성해 보라....
1.6 배열(Array)
실습 전 이론 파일을 읽어서 그 파일속에 숫자는 몇번이 나오고 빈칸은 몇개가 있는지, 그 외의 문자들은 몇개인지 세는 프로그램을 작성하려면 하나하나 변수를 지정해야했다. 변수를 하나씩 지정하는 것보다는 배열을 사용하는게 더 좋다고 한다. 확실히 어떤 기능, 문법을 배우려면 그 문법을 배우기 전에 제일 불편하게 일일히 프로그램을 만들어보는게 좋은것 같다. 예제 풀면서도 하 C는 이런거 어떻게 쓰지 하면서 답답해했었다. 실습 아래 코드는 파일을 읽고...
1.6.1. 실습 예제 2개
실습 전 이론 히스토그램 - 표로 되어 있는 도수 분포를 정보 그림으로 나타낸 것이다. 히스토그램에 대한 정의를 잘 몰라서 찾아봤다. 근데 어떤식으로 진행하면 될지에 대한 정보까지 봐버려서; 좀 아쉽네 * 코드는 안보고 어떤식으로 그래프를 표현하는지에 대한 정보를 봤다. 실습 예제 1번 문제 입력된 단어의 길이에 대한 히스토그램을 작성하는 프로그램을 작성하라 #include <stdio.h> #define IN 1 #define OUT 0 #...
1.7 함수
실습 전 이론 개념자체는 파이썬과 다를게 없다. 함수 사용 전에 함수에 어떤 값을 넣을지 미리 선언을 한다 정도? 기본적으로 함수란 미리 만들어 놓는 기계에 가깝다. 처음 파이썬을 시작했을땐 왜 함수가 필요한지 잘 몰랐다. (단순히 10 몇 줄짜리만 만드니 ㅋㅋ) 굳이 함수를 만들어 코드를 넣고 함수를 실행하는 코드를 한번 더 넣는게 이해가 안됐었는데 이제는 안쓰면 너무 복잡하고 찜찜하다. 기본적으로 함수는 특정 동작을 수행하는 레고 블록에 가깝다...
1.9 문자배열
실습 전 이론 배열 중 C에서 가장 많이 사용되는 배열은 문자배열(아마) 예를 들기 위해 프로그램을 하나 만들어보자 여러 행을 읽고, 그 중 가장 긴 행을 출력하는 프로그램을 작성해보자 실습 #include <stdio.h> #define MAXLINE 1000 int getline(char line[], int maxline); void copy(char to[], char from[]); int main() { int l...
1.10 외부변수
실습 전 이론 이전 챕터에서 만든 프로그램의 경우 main에 longest 등의 변수가 있었다. 이 변수들은 main 함수 내에서만 의미를 가진다. 같은 이름의 변수를 다른 함수에서 쓰더라도, 전혀 별개의 값이 된다. 이를 지역(local) 변수라고 한다. 여러 함수에서 공통으로 사용하는 함수를 공통 변수(global)라고 한다. 공통 변수를 정의할때는 extern 이라는 명령어를 사용한다. 해당 변수는 함수의 바깥에서도 정의하고, 그 변수를 사용하...