분류 전체보기 247

[팔로 알토 네트웍스] 사이버보안 기초 #4

[4주차] 공격의 유형과 기법학습목표1. 사이버 공격 기술 및 유형 평가2. 취약점과 익스플로잇의 차이 학습3. 스팸 및 피싱 공격 식별 4. 봇과 봇넷이 기업 네트워크를 공격하는 데 어떻게 사용되는지 학습[4-1] 악성코드공격자는 목적을 달성하기 위해 다양한 기술과 공격 유형을 사용한다. 멀웨어와 익스플로잇은 현대 사이버 공격 전략에 필수적이다. 스팸 및 피싱은 일반적으로 이메일 실행 파일 또는 악의적인 웹 사이트에 대한 웹 링크를 통해 멀웨어와 익스플로잇을 엔드포인트로 전달하기 위해 사용되는 기술이다. 엔드포인트가 손상된 후, 공격자는 일반적으로 백도어, 원격 액세스 트로이 목마 및 기타 멀웨어를 설치하여 지속성을 보장한다. 공격자의 제어 하에 손상된 엔드포인트(봇)는 봇넷의 일부로 다른 조직이나 네..

교육 2024.05.02

[팔로 알토 네트웍스] 사이버보안 기초 #3

[3주차] 사이버 위협학습목표1. 공격자 프로필, 동기 및 사이버 공격 수명주기 검토2. 세간의 이목을 끄는 사이버 보안 공격 이해3. Wi-Fi 공격과 지능형 지속 위협 조사[3-1] 공격자의 프로필 및 사이버 공격 전략현대의 사이버 공격은 훨씬 더 정교하고 위험한 적들에 의해 자행되고 있다. 훨씬 더 사악한 목적에 의해 동기부여가 되는 것이다. 이러한 공격자들의 종류는 다음으로 분류할 수 있다.① 사이버 범죄자: 독립적으로 또는 범죄 조직의 일원으로서 행동하는 사이버 범죄자들은 금전적 이익을 위해 데이터 도난, 횡령, 사기 및 갈취 행위를 저지른다. 랜드 연구소에 따르면, 특정한 측면에서, 사이버 범죄를 위한 암시장은 불법적인 마약 거래보다 더 큰 돈이 오갈 수 있다고 한다. 그리고 많은 추정에 따르..

교육 2024.05.01

C++ 포인터 산술(Pointer Arithmetic)

1. 포인터 산술의 개념C++에서 포인터 변수는 다른 변수, 함수, 구조 및 다른 포인터의 주소를 저장하는 데 사용되며, 이러한 포인터를 사용하여 해당 주소에 저장된 데이터에 액세스하고 조작할 수 있다. 포인터 산술은 말 그대로, 포인터에 대해 산술 연산을 수행하는 것을 의미한다. 포인터에 대해 유효한 연산을 의미하는 것으로, C++의 포인터에 유효한 산술 연산은 다음과 같다: ① 증가 및 감소 포인터 ② 포인터에 상수 더하기③ 포인터에서 상수 빼기 ④ 동일한 유형의 두 포인터 빼기 ⑤ 포인터 비교2. 증가 및 감소 포인터포인터를 늘리거나 줄이면, 메모리에 있는 다음 또는 이전 데이터의 주소를 참조하게 된다. 이 과정은 숫자 데이터를 늘리거나 줄이는 것과는 분명 다르다.예를 들어, 숫자 데이터를 늘리거나..

C++ 2024.05.01

[팔로 알토 네트웍스] 사이버보안 기초 #1, 2

[1주차] 사이버 보안 기초 과정 강의 계획서이 강의에서는 현재 사이버 보안 환경과 관련된 기본 원칙을 배우고, 기업 네트워크와 미션 크리티컬 인프라에 대한 공격을 인식하고 잠재적으로 완화하는 데 필요한 개념을 식별한다. 또한, 차세대 방화벽에서 보안 영역, 인증, 정책을 초기에 설정하고 구성하는 방법을 배울 것이다. 모듈 1: 코스 정보 모듈 2: 사이버 보안 환경 모듈 3: 사이버 보안 위협 모듈 4: 사이버 보안 공격 유형 모듈 5: 사이버 보안 설계 모델 모듈 6: 보안 운영 플랫폼[2주차] 사이버보안 기초 모듈 2 - 사이버 환경학습목표1. 최신 컴퓨팅 동향과 애플리케이션 위협 벡터를 살펴 보기2. 클라우드 컴퓨팅 및 SaaS(Software-as-a-Service) 애플리케이션 문제 식별3. ..

교육 2024.04.30

C++ 포인터(Pointers) 총정리

1. 포인터의 개념포인터는 주소를 상징적으로 표현하는 것이다. 포인터는 프로그램이 참조에 의한 호출을 시뮬레이션하고, 동적 데이터 구조를 만들고 조작할 수 있게 해준다. 배열이나 다른 데이터 구조의 요소 위에서 반복하는 것이 포인터의 주요 사용 중 하나라 할 수 있겠다.작업 중인 변수의 주소는 동일한 데이터 유형(int 또는 string 등)을 가리키는 포인터 변수에 할당된다. 포인터는 잘만 사용한다면, 코드를 줄이고 성능을 향상시킨다. 포인터는 문자열, 트리, 배열, 구조 및 함수를 검색하는 데 사용된다.포인터를 사용하면 함수에서 여러 값을 반환할 수도 있다. 또한, 컴퓨터 메모리의 메모리 위치에 액세스할 수도 있다. 결국 모든 것은 사용하기 나름이다. 구문:datatype *var_name;  int..

C++ 2024.04.29

C++ 포인터와 레퍼런스 정리

1. 포인터와 레퍼런스C++ 포인터와 레퍼런스는 모두 프로그램의 메모리, 메모리 주소 및 데이터를 처리하는 데 사용되는 메커니즘이다. 포인터는 다른 변수의 메모리 주소를 저장하는 데 사용되지만, 레퍼런스는 이미 존재하는 변수의 별칭(alias)을 만드는 데 사용된다. C++의 포인터는 주소를 상징적으로 표현한 것이다. 이들은 프로그램이 레퍼런스에 의한 호출을 시뮬레이션하고, 동적 데이터 구조를 만들고 조작할 수 있도록 한다. 포인터는 변수의 주소나 메모리 위치를 저장한다. 구문: datatype *var_name;  예를 들어 int * ptr; 에서 ptr은 int 데이터를 유지하는 주소를 가리킨다. 예시 프로그램을 통해 포인터를 이해해 보도록 한다:// C++ program to demonstrate..

C++ 2024.04.29

보안 팀이 보안 도구를 구매할 때 저지르는 가장 큰 실수

보안 팀이 보안 도구를 구매할 때 저지르는 가장 큰 실수는 무엇일까? 아마드 사데딘은 '도구 구매를 프로그램 관리로 혼동하는 것'이라고 말한다. 도구는 프로그램 관리를 위한 일부일 뿐이지, 도구가 프로그램을 관리하는 주체가 아니라는 말이다.따라서 도구 자체에 초점을 맞춰서는 안 되고, 보안 프로그램이 조직에게 무엇을 의미하는지, 무엇을 달성하려고 하는지에 초점을 맞춰야 한다.1. 사이버 보안 도구에 대한 오해와 한계사실 보안 도구는 굉장히 매력적이다. UTM, ESM, SIEM에서부터 시작하여 이미 오래 전부터 보안 도구들은 많은 것을 패키징하고 있다. 피부를 관리하기 위해 제품을 덕지덕지 바르는 게 귀찮은 사람들을 위해 올인원 제품을 내세웠더니, 올인원 제품을 사용하기만 하면서 그걸로 피부가 만사 OK..

C++ 람다식(Lambda expression) 총정리

1. 람다식의 개념이름이 필요 없는 짧은 코드 조각에 사용할 수 있는 인라인 함수를 허용하기 위해 Lambda expression이 도입됐다. 가장 간단한 형태로 람다 식을 다음과 같이 정의할 수 있다. [ capture clause ] (parameters) -> return-type   {       definition of method    }  일반적으로 람다 식의 리턴 타입은 컴파일러 자체에서 평가하므로 명시적으로 지정할 필요는 없다. 또한 the -> return-type 부분은 무시할 수 있다. 그러나 조건문과 같이 복잡한 경우에는 컴파일러가 리턴 타입을 결정할 수 없으며, 명시적인 지정이 필요하다.표준 함수를 사용한 람다 식의 다양한 용도는 다음과 같다:// C++ program to d..

C++ 2024.04.25

C++사용자 정의 예외

우리는 클래스에 예외 처리를 사용할 수도 있다. 심지어 사용자 정의 클래스 유형의 예외를 던질 수도 있다. try 블록 내에 demo 클래스 유형의 예외를 던지는 경우 작성할 수 있다. throw demo();단일 클래스로 예외 처리를 구현하는 프로그램 예시:#include  using namespace std; class demo { }; int main() {      try {           throw demo();      }      catch (demo d) {         cout "Caught exception of demo class \n";      } } 출력:Caught exception of demo class 위 프로그램에서는 빈 클래스를 선언했다. try 블록에서 우리는..

C++ 2024.04.25

C++ 스택 풀기(Stack Unwinding)

1. 스택 풀기의 개념Stack Unwinding은 실행 시간에 함수 호출 스택에서 함수 항목을 제거하는 프로세스다. 로컬 개체는 구성된 역순으로 파괴된다.스택 풀기는 일반적으로 예외 처리와 관련이 있다. C++에서 예외가 발생하면, 함수 호출 스택에서 예외 처리기를 선형으로 검색하고, 예외 처리기가 있는 함수 이전의 모든 항목을 함수 호출 스택에서 제거한다. 따라서 예외 처리는 동일한 함수(예외가 던져지는 곳)에서 예외를 처리하지 않으면, 스택 풀기를 포함하는 것이다. 기본적으로 스택 풀기는 런타임에 구성된 모든 자동 개체에 대해 (예외가 던져질 때마다) 파괴자를 호출하는 프로세스다.예시:// CPP Program to demonstrate Stack Unwinding  #include   usin..

C++ 2024.04.24
728x90