코드 감사 방법 및 준비

2878 단어 코드 감사
코드 감사 환경 준비
로컬 테스트 환경: php + mysql 환경입니다.예를 들어 phpstudy, wamp 등 문서 편집기:sublime text 2, UltraEdit, notepad++ Sublime Text 2는 감사를 보조하는 플러그인이 필요합니다. Package Control, Ctags, PHPTidy, Alignment, ConvertTouTF8 브라우저:Firefox Firefox 플러그인:FoxyProxy, Hackbar, Modify Headers, Use Agent Switcher, Firebug 기타 도구: Burp Surpit, Xsql Debug, Myboring, My, MonitoringWEB 인코딩 변환 도구 vMysql Monitoring: Seay 마법사에서 추출한 감사 도구, mysql 문장 직접 로그 기록 도구
감사 전 기초 준비
기초 준비
  • 원본 획득: 대부분의 PHP 프로그램은 원본으로 되어 있으며, 홈페이지를 찾아 최신 원본 패키지를 다운로드하면 된다.
  • 설치 사이트: 현지에서 사이트를 구축하고 감사를 하면서 디버깅을 한다.다양한 동적 변화를 실시간으로 추적
  • 대국을 파악하다
  • 사이트 구조: 원본 폴더를 조회하고 프로그램의 대략적인 디렉터리를 이해한다
  • 입구 파일: index.php、admin.php 파일은 일반적으로 전체 프로그램의 입구로 그 중에서 알 수 있다.
  • 프로그램의 구조
  • 운영 프로세스
  • 에 포함된 구성 파일
  • 필터 및 보안 필터 포함 여부
  • 프로그램의 업무 논리를 이해
  • 구성 파일: 일반적으로 config와 유사합니다.php 등 파일은 데이터베이스 관련 정보, 프로그램의 정보를 저장합니다.
  • 데이터베이스 인코딩을 먼저 보고 gbk라면 넓은 바이트 주입이 있을 수 있습니다.
  • 변수의 값이 더블 인덱스를 사용하면 더블 인덱스 해석 코드가 실행되는 문제가 존재할 수 있음
  • 필터 기능: 공용 함수 파일과 보안 필터 파일 등 파일을 자세히 읽어 보십시오.
  • 사용자가 입력한 데이터, 어떤 것이 여과되고, 어떤 것이 여과되지 않는지, 어떻게 여과되는지.
  • 어디서 걸러졌어요?
  • 어떻게 필터를 합니까? 필터의 방식은 교체입니까 아니면 정규입니까? GPC가 있습니까? addslasher () 처리를 사용했습니까?
  • 필터된 데이터를 우회할 수 있습니까?

  • 대국 파악 - 사이트 구조
    사이트 카탈로그 구조:
    -    
    
    -     
    -     
    -     
    -     
    -     
    -     
    
    -     
    
    -       
    -       
    
    -      
    
    -     

    감사 방법:
    전문법 을 통독 하다
    통독 전문법: 통독 전문발은 가장 번거로운 방법이자 전면적인 감사 방법이다.특히 대형 프로그램을 겨냥해 수천 수만 줄의 원본을 언제까지 읽을 것인가.하지만 이 방법도 필요한 방법이다.전체 응용의 업무 논리를 이해해야만 더욱 가치 있는 빈틈을 발굴할 수 있다.이런 방법은 일반적으로 기업이 자신의 제품에 대한 감사이다. 물론 소형 응용에 대해 읽을 수 없는 것은 아니다.앞의 대국을 파악하는 것도 통독 전문법에 포함되어 있다.대국을 파악하고 전체 구조를 파악한 다음에 입구 문서를 통해 각 기능에 들어가 감사를 할 수 있다.
    민감 함수 매개 변수 소거법
    민감 함수 매개 변수 역추적법: 민감 함수에 따라 매개 변수를 역추적하여 전달하는 과정.이 방법은 가장 효율적이고 자주 사용하는 방법이다.대부분의 빈틈이 생기는 것은 함수의 사용이 부적절하기 때문이다.이 함수들을 찾기만 하면 원하는 빈틈을 신속하게 발굴할 수 있다.신기인 Seay 소스 코드 감사 시스템을 홍보하는데 주로 정규를 이용하여 고위험 함수, 관건 함수와 민감한 키워드를 매칭한다.그리고 우리는 민감한 함수의 상하문을 분석하고 판단하며 파라미터의 원천을 추적할 수 있다.제어할 수 있는 매개 변수 변수를 제어해 보십시오.
    방향 기능 분석법
    정향 기능 분석법: 절차에 따라 업무 논리에 따라 감사를 한다.우선 브라우저로 하나하나 방문해서 이 프로그램에 그런 기능이 있는지 살펴보자.관련 기능에 따라 그 빈틈이 있을 것으로 추정된다.일반적인 기능 취약성: 프로그램 초기 설치 - 사이트 정보 유출 - 파일 업로드 - 파일 관리 - 로그인 인증 - 데이터베이스 백업 복구 - 비밀번호 찾기 - 인증 코드 포함
    총괄: 실제 응용에서 통상적으로 조합권이므로 유연하게 응용해야 한다.일반적으로 대국을 파악하고 전문을 통독할지 여부를 고려한 다음에 방향기능법에 따라 각 기능에 대해 감사를 한다.마지막으로 민감 함수 매개 변수는 거슬러 올라간다.
    코드 감사 추천
  • i 춘추플랫폼 Virink 선생님의'PHP 코드 감사 실전'과정
  • Seay 마법사의, 마법사의 블로그:http://www.cnseay.com/
  • 좋은 웹페이지 즐겨찾기