포맷 스트링 취약점은 무엇입니까?

형식 문자열 취약점이 무엇인지 이해하려면 먼저 포맷 스트링 무엇인지 알고 있어야합니다. 형식 문자열을 어떻게해야 형식 번호는 C 컴파일러와 이야기의 지문을 때 그들의 방법입니다.

포맷 문자열은 C

은 C 프로그래밍 언어에는 인자로 문자열을 받아들일 수있는 형식의 기능에는 여러가지가있습니다. 이러한 기능, sprintf, snprintf, vfprintf, vprintf, vsprintf, vsnprintf, setproctitle, printf fprintf, 시스템 로그와 다른 사람이 포함됩니다.

이 중 가장 일반적인 printf입니다. printf의 사용법입니다 :

printf 형식 [인자 ...]

printf [인자 ...] 형식에 의해 지정된 형식의 값을 출력합니다.

printf를 호출하는 예제입니다 :

printf ( "이 지역 코드 : % d 개 \ n", 303);

지원하는 포맷을 지정 하나 C 컴파일러는 다음에 이르기까지 차이가있습니다. 아래는 FreeBSD에서 지원하는 형식을 지정 :

% d 개 서명 진수 문자열을 정수로 변환합니다.
% u 개 서명되지 않은 10 진수 문자열을 정수로 변환합니다.
% i 개 서명 진수 문자열을 정수로 변환; 정수는 10 진수에서있을 수있는 최고의 0 () 또는 16 진수에서 선도 0x ()과 진수.
% O를 서명되지 않은 진수 문자열을 정수로 변환합니다.
% x 나 % 엑스 서명되지 않은 16 진수 문자열로, x와 대한 또 숫자를 사용하여 정수로 변환 또 엑스 0123456789abcdef '' ''에 대한) 0123456789ABCDEF.
% C 그것을 상징하는 유니 코드 문자를 정수로 변환합니다.
% 아니 변환; 그냥 문자열을 삽입합니다.
% F 양식 xx.yyy의 서명을 10 진수 문자열로 부동 소수점 변환 - 여기서 Y의 정밀도로 (기본값 : 결정됩니다의 수를 6). 만약있다면 안돼 소수점 정밀도 0 출력합니다.
% e 또는 % 전자 과학적 표기법에 양식 x.yyye에 떠있 - 소수점 숫자로 변환 + - ZZ, 여기서 Y의 정밀도로 (기본값 : 결정됩니다의 수를 6). 만약있다면 안돼 소수점 정밀도 0 출력합니다. e. 확인 후 이메일을 대신 전자의 경우 양식을 인쇄되어 사용됩니다
% G 또는 % G 조 만약 지수 -4 미만 또는 이상 또는 동등 정밀 다음 % e 또는 % 중에 떠다니는 - 소수점 숫자로 변환 큽니다 그렇지 않으면 %를 F.로 변환 소수점과 후행 0 뒤진 생략합니다.
% % 아니 전환 : 방금 %를 삽입합니다.

형식 지정에 대한 자세한 정보를 원하시면, 사람이 페이지를 귀하의 가까운 유닉스 시스템에 "포맷"을 참조하십시오.

포맷 스트링 취약점을 공격

포맷 스트링 취약점이 공격을 3 가지 범주 : 서비스 거부로, 읽기, 쓰기 등 가을.

포맷 스트링 취약점에 대한 정보의 추가 소스

포맷 스트링 취약점을 악용에 대한 자세한 정보를 원하시면, Exploiting 포맷 스트링 취약점에 짧은 꼬리에 의해, 그리고 포맷 스트링 공격 팀 Newsham 참조.

안전한 코드 작성 건물 보안 소프트웨어 시큐어 코드입력중 보안 프로그래밍 요리책
방법에 대해 알아보기 Amazon.com에서 보안 프로그래밍에 이러한 우수 도서와 함께 여러분의 소스 코드에서 포맷 스트링 취약점을 방지하기 위해


상위 5 개 무료 네트워킹 툴

취약점 관리 Dummies 대한

(Qualys)에서 우리 친구들이 Dummies 테크를위한 취약성 관리의 전자 버전 - FAQ를 독자의 무료 사본을 제공하고있습니다.

취약점 관리 Dummies :

  • 취약성 관리를위한 중요한 필요 설명이
  • 자세한 내용은 최고 - 성공적인 취약점 관리 프로그램의 실천 단계에 필수적인
  • 간략 다양한 취약성 관리 솔루션 - 각각의 장점과 단점을 포함한
  • 볼거리 우승 보너스 - QualysGuard 취약성 관리 솔루션
  • 취약점을 제거하기위한 자원을 제공하여 키를 점검표 10 점
스크랩 포맷 스트링 취약점은 무엇입니까?

최신 블로그 게시물


영어 영어 독일어 독일어 스페인어 스페인어 프랑스어 프랑스어 이탈리아어 이탈리아어 포르투갈어 포르투갈어 러시아어 러시아어 네덜란드어 네덜란드어
그리스어 그리스어 힌디어 힌디어 일본어 일본어 한국어 한국어 중국어 중국어 중국어 (간체) 중국어 (간체) 아랍어 아랍어

저작권 2009년 테크 - 자주 묻는 질문. 판권 소유. 개인 정보 보호 정책.