전체 글241 [안드로이드] 앱 개발 환경설정 #0 코틀린은? 코들린은 오픈소스로 2012년에 출시 2017년 구글이 안드로이드 앱 개발용으로 추천 하고 급 부상하였다. 코틀린은 자바와 100%로 호환이 가능하다. 원리) Complication은 C프로그램을 기계어로 컴파일 하는 것이고 Interpretation은 리얼타임으로 기계어 전달 Complication은 inter-보다 빠르지만 플랫폼(운영체제)에 의존적이고 Interpretation는 플랫폼 독립적 = 자동 변환 Java vitual machine은 이것의 호환으로 두 언어모두 Java Byte Code로 컴파일되어(Com-) JVM(Java vitual machine)가 각 플랫폼에 번역(inter-) 전달한다. 장점) Null Safety / Coroutine 활용) Java 어플리케.. 2022. 2. 28. Kali linux 2022.1에 추가된 email2phonenumber 도구 Kali linux 2022.1 추가된 email2phonenumber 도구에 대해 알아보자 email2phonenumber—OSINT tool that allows a user to locate a phone number via an email (NOTE: I’ve yet to actually find this tool on Kali Linux and although it says it can be installed with the command sudo apt install email2phonenumber, I’ve found no such success). 2019 발표 및 시연 영상 https://www.youtube.com/watch?v=0c92l9v5Sns 원리가 궁금해졌다. 1. 개발 이유:.. 2022. 2. 26. 기본기능을 갖춘 웹 개발 예시 PHP 파일 공유 페이지 맵은 아래의 게시물에 있습니다. 서버 루트 폴더에 upload 파일을 생성해야합니다. xampp 깔고 올려서 취약점 찾기나 시큐어 코딩에 참고하세요! [member - member] [bbs - board] [bbs - iboard] [bbs - ireply] [bbs - reply] 2022.01.08 - [홈페이지 만들기 🛠/PHP] - [홈페이지 제작] 홈페이지 제작 과제 결과물 [홈페이지 제작] 홈페이지 제작 과제 결과물 메인 index.php member.php idcheck.php member_ok.php 회원 login_ok.php main.php 좋아요/조회수/파일/글수정 삭제 기능 read,php hit_up.php hit_del.php read_mod.php like.php li.. 2022. 2. 25. [19주차] 기본 지식 복습 *버퍼오버 플로우(Buffer Overflow) : 메모리 vs 디스크 Process vs Program 카카오톡 설치 시 실행파일이 디스크(비휘발성)에 저장된다. 설치하면 프로그램이 됨 = 디스크에 프로그램이 생김. exe: 실행 파일 PE (Portable Execute) > 실행 코드(어셈블리 언어)로 이루어져 있음. 실행시 이 어샘블리 코드가 메모리에 올라감. 메모리에 적재되어 있는 상황을 프로세스, CPU 가 이것을 실행시킴 메모리엔 영역이 있음 동적 메모리는 스택과 힙이라는 공간에 있음. 힙은 malloc 함수 사용, Stack은 메모장과 같은 역활 스택 오버플로우/ 힙 오버 플로우 Register : 스택메모리 외에 CPU 내부에 생성된 기억장치 EIP : Instruction Pointer.. 2022. 2. 24. [시큐어 코딩] PHP - 서버 정보 노출 취약점 예방 웹 서버 소스 코드(HTML) 및 오류 메시지를 통한 운영 정보 노출 시 공개된 취약점으로 인한 악용 위험이 있습니다. - 보안 조치 방법 1. Apache2.conf 파일에서 ServerTokens을 Pord로 설정한 후 재 시작합니다. 2. PHP 정보를 숨기기 위해 php.ini을 찾아 expose_php를 Off로 설정합니다. 3. 에러 페이지에서 시스템 운영정보를 노출하는 것을 막기 위해 커스텀 에러 페이지를 제작해 띄웁니다. Apache2.conf 에 해당 부분을 아무 곳에나 추가해주면 Apache2 서버 정보 노출을 막을 수 있다. ServerTokens Prod ServerSignature Off PHP.ini 의 expose.php 부분을 off로 설정해준다. PHP 정보를 숨길 수 있습.. 2022. 2. 21. [시큐어 코딩] PHP - 디렉토리 리스팅 취약점 제거 디렉토리 리스팅 취약점 : 인덱스 파일로 지정한 파일이 존재하지 않거나, 디렉토리 리스팅을 허락하도록 설정했을 경우 디렉토리 리스트가 출력됨에 따라 하위 파일 및 디렉토리 목록이 출력되어 파일의 열람 및 저장도 가능하게 하는 취약점입니다. 공격자는 파일의 구조를 파악한 후 악성 파일 업로드/다운로드 등 다른 추가 취약점 공격에 이를 악용할 수 있습니다. 조치로는 웹 서버 설정에서 디렉토리 인덱싱 기능을 비활성화합니다. Apache의 경우 httpd.conf 파일에서 indexes 인자를 제거합니다. 내 가상 머신에서는 httpd.conf 가 아니라 apache2.conf 파일이였고 index 부분을 찾아 제거해주었다. [수정 전] [수정 후] [시큐어 코딩 전] [시큐어 코딩 후] 2022. 2. 20. [시큐어 코딩] PHP - 인가취약점 예방, form 변수 값 자동 넘기기,document.getElementById().submit() 사용. 인가 취약점으로 허가되지 않은 글을 보지 못하게 하기 위해서 pw검증을 하면서 다음 페이지로 인가 검증용 변수를 발급했다. 변수를 넘겨주면서 해당 글안에 수정, 삭제 등 일련의 과정을 하도록 구현하였다. 자동으로 값을 넘겨주게 하기 위해서 자바의 document.getElementById().submit(); 함수를 사용하였다. pw 검증이 되었는지 확인하기 위한 pw_chk 값, idx 넘버 개별 구분을 위한 idx_chk 값을 넘겨주었다. [read_check.php] 잠김글일 시 Pw검증 값과 검증 값이 해당 글 넘버가 맞는지 검사한다. [read.php] 잠김글이 아닐 시 별다른 권한 없이 조회 이외의 경우는 접근을 허용하지 않았다. [비밀번호 검증 페이지 코드] 2022. 2. 20. [시큐어 코딩] PHP - 인증 취약점을 막기 위한 세션 변수 사용 세션의 정의 = 세션이란 웹사이트에서 사용자 정보를 저장하는 방법으로 보안에 취약한 쿠키를 보완해 로그인과 같은 인증정보 확인에 쓰이고 있습니다. 세션은 브라우저를 닫아 서버와의 연결을 끝내는 시점까지를 세션이라고 합니다. 인증 취약점을 예방하기 위해 세션 변수를 적용해줍니다. 세션 변수는 $_SESSION['변수 이름']="값"; 으로 지정되어 사용할 수 있고 세션을 사용할 페이지에서는 맨 앞에 session_start()를 사용해야한다. [댓글 작성 페이지] 인증 시 다른 방법보다 이 세션 아이디를 불러와서 값이 일치하는지 검증하면 인증 취약점을 예방할 수 있다. 예를들어 기본 비밀번호 입력 검증시 플로우 통제(step1>2>3)를 우회하여 바로 수행페이지로 넘어가거나 할 수 있기 때문에 기본적으로 .. 2022. 2. 19. [시큐어 코딩] PHP - XSS 대응방안 - htmlspecialchars() 함수 사용 XSS를 예방하기 위해서 HTML Entity로 이스케이프를 시켜줘야한다. 2021.11.20 - [N 스터디 👩💻/수업 기록] - [6주차]XSS 키로커 삽입과 대응방안 [6주차]XSS 키로커 삽입과 대응방안 * 참고사항 XSS 시 단순한 알림창에 위협을 느끼지 못하기 때문에 버그바운티나 실제 업무에서 보고서를 작성할 떄 위험하다는 것을 직관적으로 인지시켜주기 위해서 얼마나 영향력 있는 취약점 myungjjju.tistory.com SQL 문 삽입 부분을 모두 Prepare Statement해주고 나서 추가로 변수에 htmlspecialchars() 함수를 사용했다. 아래는 코드 예시. [게시글 작성 페이지] DB에 이스케이프된 HTML문이 잘 삽입된 것을 확인할 수 있다. 예전처럼 XSS 공격을 시.. 2022. 2. 19. 이전 1 ··· 13 14 15 16 17 18 19 ··· 27 다음