C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[69961] Re:Re:Re:Re:memcpy_s 질문드립니다
송신영 [palindrome] 6354 읽음    2013-08-09 09:31
RAD Studio에는 memcpy_s 가 포함되어있네요..

참고 : http://docwiki.embarcadero.com/RADStudio/XE4/en/Memcpy_s

Intotheblue 님이 쓰신 글 :
: 제가 알기론 표준함수 대부분이 이런저런 문제점들을 가지고 있는걸로 압니다.
: 그 부분이 치명적일 수도 있고 아닐수도 있죠.
:
: memcpy 에 대해서 찾아보니 아래와 같은 내용이 나오네요.
:
:
: 보안 주의 사항
:
: 첫째 인수인 dest는 src의 총 count 바이트를 보관할 수 있을 만큼 커야 합니다. 그렇지 않으면 버퍼 오버런이 발생합니다. 그러면 액세스 위반이 발생할 경우 응용 프로그램에 대한 서비스 공격을 거부하거나 최악의 경우 공격자가 프로세스에 실행 코드를 삽입할 수 있습니다. dest가 스택 기반 버퍼일 경우 특히 그렇습니다. 마지막 인수 count는 dest의 크기가 아니라 dest에 복사할 바이트 수임에 유의하십시오.
:
: 다음 코드 예제는 안전하게 memcpy()를 사용하는 방법을 보여 줍니다.
:
: void test(char *pbData, unsigned int cbData) {
:  char buf[BUFFER_SIZE];
:  memcpy(buf, pbData, min(cbData,BUFFER_SIZE));
: }
:
: 내용을 보면 사이즈만 정확히 맞춰 주면 문제가 없는겁니다.
:
: 이런건 간단한 검색만으로도 나옵니다.
:
:
:
: 질문고수 님이 쓰신 글 :
: : memcpy()함수는 보안상 취약점이 있어 사용하지 말고
: :
: : memcpy_s()함수는 빌더에서는 사용못한다면
: :
: : 어떻게 하는게 가장 좋은방법일까요..그냥 그대로 둬도 괜찮은지..
: :
: : Intotheblue 님이 쓰신 글 :
: : : 인터넷을 뒤져보니.
: : :
: : : vc++용 함수인것 같네요..
: : :
: : : 빌더 2007 에서는 헬프를 봐도 안나오고요...
: : :
: : :
: : : 질문고수 님이 쓰신 글 :
: : : : c표준에서 memcpy()는 쓰지말고 보안상 더 좋은 memcpy_s()를 사용하라라고 들었습니다
: : : :
: : : : 그래서 memcpy()로 짜여져 있는 소스를 memcpy_s()로 치환하고 있는데
: : : :
: : : : 의외로 어떻게 바꿔야 하는지 명확하게 정리된 사이트가 없어서 이곳에 질문합니다.
: : : :
: : : : 아래형식과 같이 변경 하면 될까요?
: : : :
: : : :
: : : : 이것을 memcpy(dest,src,sizeof(src));
: : : :
: : : : 이것과 같이 errno_t e = memcpy_s(dest, sizeof(dest), src, sizeof(src));
: : : :
: : : : 고수님들의 조언 부탁드립니다

+ -

관련 글 리스트
69953 memcpy_s 질문드립니다 질문고수 4490 2013/08/08
69960     Re:memcpy_s 질문드립니다 박우성 6872 2013/08/09
69957     Re:memcpy_s 질문드립니다 Intotheblue 5774 2013/08/08
69958         Re:Re:memcpy_s 질문드립니다 질문고수 5657 2013/08/08
69959             Re:Re:Re:memcpy_s 질문드립니다 Intotheblue 5989 2013/08/08
69961                 Re:Re:Re:Re:memcpy_s 질문드립니다 송신영 6354 2013/08/09
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.