일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 자동 생성
- android 효과음
- 안드로이드 푸시
- 우분투
- curl
- UML
- soundpool
- xe
- C#
- 안드로이드 gcm
- roundcube
- dovecot
- php 취약점
- FCM
- php 시큐어코딩
- WebView
- PHP
- chart.js
- javascript
- 폼메일
- html5
- not working
- 설치
- mysql
- Mail Server
- 안드로이드
- 자바스크립트
- C# IO
- 안드로이드 푸쉬
- Android
- Today
- Total
목록php 시큐어코딩 (8)
그러냐
더보기 닫기 - webhard.php 검색어 : - 웹 서버 테이블 mysql> create table file_tb( -> no int auto_increment primary key, -> name varchar(255) not null, -> user varchar(20) not null, -> size varchar(20) not null, -> reg_date datetime -> ); Query OK, 0 rows affected (0.01 sec) - 웹서버 업로드 디렉토리 권한 > chmod 777 upload - up_file.php 파일이름 : 파일크기 : 등록자 : 등록일시 : - 파일 내려받기 > down_file.php File Upload • File Upload 취약점 - 웹 ..
Webshell 대응 방안 1. 탐지된 파일 삭제 PLURA V5 에서 웹쉘로 탐지한 파일이 시스템 개선, 유지 또는 보수를 위한 파일이 아닌 경우 격리하거나 삭제를 권고합니다. 2. 업로드 확장자 체크 White list 방식으로 허용된 확장자(ex> .png, .gif, .pdf)만 업로드할 수 있도록 Server 측에서 체크합니다. 3. 업로드 파일 이름 변경, 이동 및 실행권한 제거 1) 업로드 파일이 저장되는 경로에 실행권한을 제거합니다. 2) 업로드된 파일명을 DB에 저장하고 이름과 매핑되는 난수를 생성하여 파일명을 대체합니다. 3) 업로드된 파일 확장자를 서버에서 실행되지 않은 형태로 변경하거나 확장자를 제거한다. 4) 업로드된 파일을 URL요청으로 접근할 수 없는 곳으로 이동합니다. 4. ..
마크다운으로 작성해서 조금 이상하게 보이는 경우가 있는습니다. gist에도 올려놨습니다. 링크 XSS (Cross-Site Scripting)크로스 사이트 스크립팅(Cross-Site Scripting, XSS)은 사용자의 입력값에 의해 자신 혹은 타인의 브라우저에 스크립트를 삽입하여 사용자를 공격하는 기법이다. "XSS 취약점이 없는 사이트는 없다."라고 할 만큼 많이 발생하는 취약점이다.XSS는 공격 유형에 따라 크게 2가지로 분류할 수 있다. 첫 번째로 사용자의 입력값이 즉시 나타나는 비 지속적인 유형이다. 사용자의 입력을 그대로 반사한다는 의미의 Reflected XSS 기법이 이에 해당한다. 두 번째로 사용자의 입력이 데이터베이스(혹은 파일, 브라우저 리소스 등)에 저장되어 지속적으로 발생하는 ..
안녕하세요. Hackability 입니다. 이번에 작성할 내용은 PHP 에서 strcmp 취약점을 이용한 인증 우회 기법 입니다. 아래와 같이 간단히 인증을 하는 login.php 가 있다고 가정해봅니다. 12345678910111213 3번째 라인에서는 user_id 와 password 파라미터가 세팅 되었는지 체크하고 6번째 라인에서는 user_id 가 admin 이고 password 가 ps와 비교합니다. (예를 위해서 미리 $ps 에 값을 대입하였습니다.) 일단 기본 동작은 아래와 같습니다. http://127.0.0.1/login.php?user_id=admin&password=pass=> login succeed.. http://127.0.0.1/login.php?user_id=admin&pa..
문제 풀다 md5 충돌(?) 을 가장한 특이한 문제를 보게 되어 정리해 둔다. 이 문제는 md5 collision 이 발생하는 것이 아닌, php 비교문("==") 의 취약점이라고 볼 수 있다. "==" 비교 연산자와 "===" 의 연산자는 차이가 있는데, "==" 를 사용하면 아래와 같이 의도하지 않은 엉뚱한 결과가 나온다. root@kali:~/Desktop/# cat test.php 두개의 문자열이 분명 다름에도 불구하고 아래와 같이 같다고 나온다. root@kali:~/Desktop/# php test.phpequal 자세한 이유는 여기저기 많이 설명되어 있었다. http://stackoverflow.com/questions/22140204/why-md5240610708-is-equal-to-md..
PHP에서 $_SERVER['PHP_SELF']를 사용하면 취약점이 발생하기도 한다.가령 form을 사용하는 경우 값을 보낸 페이지와 값을 받는 페이지가 같은 경우 다음과 같이 작성하기도 하는데,
시큐어코딩 규칙 값모든 변수를 안전한 값으로 초기화하십시오.추출 된 변수 이름 확인다음 작업이 작동하는 입력 데이터의 범위 제한 입출력업로드하기 전에 파일 형식 확인외부 시스템에서 생성 된 파일 이름 및 경로 이름 확인신뢰할 수없는 입력에 대한 모든 입력을 가정하고 유효성을 검사합니다. 쿼리/api외부 시스템에서 쿼리를 확인하십시오. 환경안전한 PHP 환경 변수 사용 정보유출오류 메시지를 통해 중요한 정보를 노출시키지 마십시오.정보 유출을 막으려면 GET 대신 POST 메서드 사용 인증/권한중요한 정보에 대한 사용자 액세스가 승인되고 인증되었는지 확인하십시오. 암호화강력한 암호화 알고리즘 사용중요한 정보를 하드 코딩하지 마십시오. 직렬화암호화되지 않은 중요한 데이터를 직렬화하지 않음 아래 논문에서 발췌 ..
국제 웹 보안 표준 기구(OWASP - Open Web Application Security Project)에서 해마다 자주 발생하는 웹보안취약점 Top 10 을 선정하여 발표 합니다. 이것을 기준으로 PHP웹 보안 취약점 Top5를 알아보고, 해결책을 제시합니다. 1. 원격 코드 실행 ( Remode Code Execution ) 이 방식은 주로 소스코드에 include 함수나 fopen 함수를 이용하여 변수로 넘겨받아서 파일명을 동적으로 불러들이는 코드에서 발생합니다. 예 include $_POST['filename'] 또는 include $filename;위 예는 홈페이지 레이아웃을 구조화(header, footer 등) 할 때 사용합니다.해킹예) http://사이트주소/파일명?filename='h..