'IT 자격증/SW보안약점진단원'에 해당되는 글 14건

  1. 2022.07.12 시간 및 상태
  2. 2022.07.12 에러처리
  3. 2022.07.12 코드오류
  4. 2022.07.12 API 오용
  5. 2022.07.12 캡슐화
  6. 2022.06.30 SW보안약점진단원 양성과정 교육 신청
보안약점 설명
3.1 검사시점과 사용시점 멀티 프로세스 상에서 자원을 검사하는 시점과 사용하는 시점이 달라서 발생 하는 보안약점

동시성 제어: synchronized, mutex, semaphore
3.2 종료되지 않은 반복문 또는 재귀 함수 종료조건 없는 제어문 사용으로 반복문 또는 재귀함수가 무한히 반복되어 발생 할 수 있는 보안약점

탈출조건을 지정

'IT 자격증 > SW보안약점진단원' 카테고리의 다른 글

보안기능  (0) 2022.07.12
SW보안약점  (0) 2022.07.12
에러처리  (0) 2022.07.12
코드오류  (0) 2022.07.12
API 오용  (0) 2022.07.12
Posted by Lumasca
,
보안약점 설명
4.1 오류 메시지를 통한 정보노출 개발자가 생성한 오류 메시지에 시스템 내부구조 등이 포함되어 민감한 정보 가 노출될 수 있는 보안약점

try{
}catch(IOException e) {
   e.printStackTrace();//스택 정보 노출
}


try{
}catch(IOException e) {
   logger.e(e);
}
4.2 오류 상황 대응 부재
시스템에서 발생하는 오류 상황을 처리하지 않아 프로그램 실행정지 등 의도 하지 않은 상황이 발생할 수 있는 보안약점

try{
}catch(NullPointerException e){
//오류 발생시 대응을 안하면 정상인것처럼 동작
}


try{
}catch(NullPointerException e){
   logger.e(e.getMessage());
   return false;  
}
4.3 부적절한 예외 처리 예외에 대한 부적절한 처리로 인해 의도하지 않은 상황이 발생될 수 있는 보안 약점

try{
}catch(Exception e){//광범위한 예외처리
}

//예외처리 세분화
try{
}catch(IOException e){
}catch(ParseException e){
}

'IT 자격증 > SW보안약점진단원' 카테고리의 다른 글

SW보안약점  (0) 2022.07.12
시간 및 상태  (0) 2022.07.12
코드오류  (0) 2022.07.12
API 오용  (0) 2022.07.12
캡슐화  (0) 2022.07.12
Posted by Lumasca
,
보안약점 설명
5.1 Null Pointer 역참조 Null로 설정된 변수의 주소값을 참조했을 때 발생하는 보안약점

String url = request.getParameter("url");

//url 에 null이 들어오면 문제 발생
if(url.equals(""))


if(url != null || url.equals(""))
5.2 부적절한 자원 해제
사용된 자원을 적절히 해제하지 않으면 자원 누수 등이 발생하고, 자원이 부족 하여 새로운 입력을 처리할 수 없게 되는 보안약점

in = new FileInputStream(inputFile)
out = new FileOutputStream(outputFile);

FileCopy.copy(in, out);
//실행중에 오류가 나면 자원반환이 안됨.
in.close();

try{
}catch(){
}finally{
in.close();
out.close();
}
5.3 해제된 자원 사용
메모리 등 해제된 자원을 참조하여 예기치 않은 오류가 발생될 수 있는 보안 약점
char *temp;

free(tem);

stmcpy(temp, "1234", size); //예기치 않은 취약점 발생
5.4 초기화되지 않은 변수 사용 변수를 초기화하지 않고 사용하여 예기치 않은 오류가 발생될 수 있는 보안 약점

int x;

초기화되지 않은 변수는 위조가 가능.
int x=1;

'IT 자격증 > SW보안약점진단원' 카테고리의 다른 글

시간 및 상태  (0) 2022.07.12
에러처리  (0) 2022.07.12
API 오용  (0) 2022.07.12
캡슐화  (0) 2022.07.12
SW보안약점진단원 양성과정 교육 신청  (0) 2022.06.30
Posted by Lumasca
,
보안약점 설명
7.1 DNS Lookup에 의존한 보안결정 DNS는 공격자에 의해 DNS 스푸핑 공격 등이 가능하므로 보안 결정을 DNS 이름에 의존할 경우, 보안결정 등이 노출되는 보안 약점

ex)도메인명으로 신뢰성을 검증하지 말고 IP주소를 사용하여 DNS변조에 대응
7.2 취약한 API 사용 취약하다고 알려진 함수를 사용함으로써 예기치 않은 보안위협에 노출될 수 있는 보안약점


ex) socket = new Socket("127.0.0.1", 10000);
보안기능이 없는 소켓을 직접 사용.

프레임워크에서 제공하는 클래스를 이용
URL url = "http://127.0.0.1:10000");
URLConnection conn = url.openConnection();

 

'IT 자격증 > SW보안약점진단원' 카테고리의 다른 글

시간 및 상태  (0) 2022.07.12
에러처리  (0) 2022.07.12
코드오류  (0) 2022.07.12
캡슐화  (0) 2022.07.12
SW보안약점진단원 양성과정 교육 신청  (0) 2022.06.30
Posted by Lumasca
,
보안약점 설명
6.1 잘못된 세션에 의한 데이터 정보노출
잘못된 세션에 의해 인가되지 않은 사용자에게 중요정보가 노출 될 수 있는 보안약점
6.2 제거되지 않고 남은 디버그 코드
디버깅을 위해 작성된 코드를 통해 인가되지 않은 사용자에게 중요정보가 노출될 수 있는 보안약점

logger.d("personal info");

삭제
6.3 시스템 데이터 정보노출
사용자가 볼 수 있는 오류 메시지나 스택 정보에 시스템 내부 데이터나 디버깅 관련 정보가 공개되는 보안약점

logger.e(e.getMessage());
=>
logger.e("NullPointException")
6.4 Public 메소드부터 반환된 Private 배열
Private로 선언된 배열을 Public으로 선언된 메서드를 통해 반환 (return)하면, 그 배열의 레퍼런스가 외부에 공개되어 외부 에서 배열이 수정될 수 있 는 보안약점

ex)
private Data[] datas;
public Data[] getData() {
   return datas;
}

=>
public Data[] getData() {
  Data[] datas=newData[datas.length];
   for(inti =0; i < datas.length; i++){
      datas[i] = this.datas[i].clone();
   }
   return datas;

}

6.5 Private 배열에 Public 데이터 할당 Public으로 선언된 데이터 또는 메서드의 파라미터가 Private로 선언된 배 열에 저장되면, Private 배열을 외부에서 접근할 수 있게 되는 보안약점

ex)
private Data[] datas;
public void setData(Data[] datas) {
   this.datas = datas;
}

=>

public void setData(Data[] datas) {
   this.datas = new Data[datas.length];
   for(int i = 0; i < datas.length; i++){
      this.datas[i] = datas[i].clone();
   }

}

'IT 자격증 > SW보안약점진단원' 카테고리의 다른 글

시간 및 상태  (0) 2022.07.12
에러처리  (0) 2022.07.12
코드오류  (0) 2022.07.12
API 오용  (0) 2022.07.12
SW보안약점진단원 양성과정 교육 신청  (0) 2022.06.30
Posted by Lumasca
,

이번에 2022년 SW보안약점 진단원 양성과정 3차 교육을 신청했다.

교육기간이 평일이라 휴가를 5일이나 내야하는 부담이 있다.

 

KISA의 연간 교육 계획을 확인한다.

https://academy.kisa.or.kr/edu/planning03.kisa

 

KISA LMS

 

academy.kisa.or.kr

 

원하는 차수를 클릭하면 교육신청 페이지로 이동하는데 접수기간이 아니면 상태는 '접수마감'이다.

상태는 접수기간 시작일 오전 10시 정각에 신청하기(?) 버튼으로 변경된다.

마감이 빨리된다는 글을 봐서 빨리 진행하느라 신청페이지는 캡쳐하지 못했다.

신청페이지는 개인정보 몇개를 입력해야한다. 

 

접수가 되면 메일이 온다.

경력 증빙서류는 발신자 메일주소(edu@kisec.com)로 보내면 된다.

 

나의 경우는 교육신청서, 자격확인신청서, 건강보험자격득실확인서랑 소프트웨어 기술자 경력증명서를 제출했다.

소프트웨어 기술자 경력증명서는 KOSA 관리하는 경력관리시스템을 통해 발급받을 수 있다.

이 시스템은 등록시에도 돈을 지불해야하고 증명서발급에도 2천원을 결제해야 한다.

오래전 근무하던 회사 다닐때 등록해두었는데 몇번 경력증빙이 필요한 경우에 대체 증빙으로 사용할때 요긴하다.

 

https://career.sw.or.kr/

 

소프트웨어기술자 경력관리시스템

SW기술자 경력확인 한번으로 두고두고 편리한 경력관리 SW기술자 경력확인제도는 SW기술자의 경력 입증의 어려움을 해소하고, 지속적인 경력관리를 통해 공신력있는 경력증빙 및 권익보호를 위

career.sw.or.kr

 

자격확인신청서(엑셀)는 아래와 같은 양식으로 되어 있다.

현재소속된 정보를 작성하고 노란색 소속기관에 근무했던 회사, 개발경력 프로젝트에는 근무했던 회사에서 수행한 프로젝트를 기입했다. 진단경력 프로젝트는 없으니 공백으로 처리했다.

서류상 제출이 어려운 경력은 우측에 별도로 기입하도록 구성되어 있다.

 

교육신청서(한글)는 자격확인신청서에 작성한 개발경력프로젝트를 개발경력란에 그대로 기입하고 인쇄한 다음,

개인정보활용 동의서에 서명한후, 사진을 찍어서 pdf 파일로 만들었다.

이렇게 준비된 파일을 메일로 보내면 이렇게 답장이 온다. (15분정도후)

 

 

 

교육후기(https://lumasca.tistory.com/1149)

 

시험준비(https://lumasca.tistory.com/1150)

 

시험후기(https://lumasca.tistory.com/1151)

 

최종합격(https://lumasca.tistory.com/1153)

'IT 자격증 > SW보안약점진단원' 카테고리의 다른 글

시간 및 상태  (0) 2022.07.12
에러처리  (0) 2022.07.12
코드오류  (0) 2022.07.12
API 오용  (0) 2022.07.12
캡슐화  (0) 2022.07.12
Posted by Lumasca
,