화살표 함수: 화살표 기호(=>)를 이용하여 함수를 작성하는 방법. 기존 함수보다 단순하고 간결한 문법으로 함수를 만들 수 있다. 

 

let sum (a,b) => a + b; //화살표함수

let sum = function(a, b){	//원래 함수
	return a+b;
};		

 

'Web > Develop' 카테고리의 다른 글

[PHP] PDO로 데이터베이스(mysql) 연결  (0) 2020.06.14
[PHP] phpinfo  (0) 2020.06.12
[JavaScript] 함수 표현식과 함수 선언문  (0) 2020.01.27
[JavaScript] confirm()  (0) 2020.01.27
[JavaScript] prompt()  (0) 2020.01.26
// 함수 선언문
function sum(a, b){
	return a+b;
}
// 함수 표현식
let sum = function(a, b){
	return a+b;
};

함수 선언문은 스크립트 실행 준비 단계에서 생성되기 때문에 함수 선언문의 앞에서도 호출이 가능하나 함수 표현식은 코드의 순서대로 순차적으로 생성 되어 표현식이 선언된 후에만 접근할 수 있다.

'Web > Develop' 카테고리의 다른 글

[PHP] PDO로 데이터베이스(mysql) 연결  (0) 2020.06.14
[PHP] phpinfo  (0) 2020.06.12
[JavaScript] 화살표 함수  (0) 2020.02.02
[JavaScript] confirm()  (0) 2020.01.27
[JavaScript] prompt()  (0) 2020.01.26

confirm : 매개 변수로 받은 질문과 확인 및 취소 버튼이 있는 창을 띄우는 함수

확인을 누르면 참(true), 취소를 누르면 거짓(false)를 반환.

 

confirm('Are you female??')

 

'Web > Develop' 카테고리의 다른 글

[PHP] PDO로 데이터베이스(mysql) 연결  (0) 2020.06.14
[PHP] phpinfo  (0) 2020.06.12
[JavaScript] 화살표 함수  (0) 2020.02.02
[JavaScript] 함수 표현식과 함수 선언문  (0) 2020.01.27
[JavaScript] prompt()  (0) 2020.01.26

prompt : 텍스트 메시지, 입력필드, 확인, 취소 버튼이 있는 창을 띄우는 함수

prompt(title, [default]);

title: 사용자에게 보여줄 메시지

default : 입력 필드의 초기값(선택사항이나 IE(익스플로러)에서는 반드시 값을 넣어줘야 함)

 

prompt 함수가 실행되면 대화상자의 입력필드에 원하는 값을 입력후 확인을 누를 수 있음. 확인을 누를 경우 입력 값이 반환되고, 입력을 취소하면 null값을 반환함

 

prompt("name", "default");

 

'Web > Develop' 카테고리의 다른 글

[PHP] PDO로 데이터베이스(mysql) 연결  (0) 2020.06.14
[PHP] phpinfo  (0) 2020.06.12
[JavaScript] 화살표 함수  (0) 2020.02.02
[JavaScript] 함수 표현식과 함수 선언문  (0) 2020.01.27
[JavaScript] confirm()  (0) 2020.01.27

Cross-Site Request Forgery : 사이트간 요청 위조

 

공격자가 피해자가 의도하지 않은 요청을 웹 사이트에 요청 하도록 하는 공격 방법이다.

공격자는 웹 사이트(대상)가 피해자를 신뢰하는 상태 이어야 한다. 

피해자의 권한을 이용하여 의도하지 않은 요청을 웹 사이트에 하는 것이다. 

공격자가 피해자에게 의도한 공격을 수행하는 스크립트를 실행하도록 한다.

웹 사이트가 피해자를 신뢰하는 상태에서 피해자가 스크립트를 실행하면 공격자가 의도한 대로 요청을 전송할 수 있다.

 

CSRF 공격 방법

웹 사이트가 HTTP 쿠키에 의해서만 사용자를 검증한다면 해당 공격에 취약할 수 있다.

웹 사이트의 동작 방식을 확인하고 어떤 요청을 했을 때 어떻게 반응하는지 등을 살펴본다.

공격자가 의도한 요청을 전송할 수 있는 html 페이지나 스크립트를 만들고, 피해자가 그 html 페이지에 접속하거나 스크립트를 실행하도록 유도한다. 이때 피해자는 웹 사이트가 신뢰하고 있는 상태여야 한다.

 

CSRF 방어 기법 

CSRF 토큰 사용 :

HTML 형태의 숨겨진 필드를 통해 추가적인 토큰을 생성하여 각 요청이 전송될 때 토큰 값이 유효한지 검증한 후 요청을 수행한다. 공격자는 토큰의 값을 결정할 수 없도록 임의의 난수로 생생해야 한다.

CAPTCHA 사용:

사용자로 부터 captcha값을 입력 받도록 하여 captcha 값을 검증 후에 요청을 수행하도록 한다.

 

'Web > Vulnerability' 카테고리의 다른 글

SSRF  (0) 2020.11.10

JSON(JavaScript Object Notation)

json은 "속성 - 값" 또는 "키 - 값" 쌍으로 이루어진 데이터 오브젝트를 인간이 읽을 수 있는 텍스트를 사용하는 개방형 표준 포맷이다.  AJAX, XML 등을 대체하며 .json 확장자를 가진다.

 

JSON 기본 자료형

자료형으로는 number, string, boolean, array, object, null 이 있다. 다음은 이 자료형 들의 특징이다.

number : 8진수, 16진수, 표현 방법은 지원하지 않는다.

string : 항상 큰따옴표(")로 묶어야 하고, 역슬래시(\)는 제어 문자를 표현한다.

  • \b 백스페이스
    \f 폼 피드
    \n 개행
    \r 캐리지 리턴
    \t 탭
    \" 따옴표
    \/ 슬래시
    \\ 역슬래시
    \uHHHH 16진수 네자리로되어 있는 유니코드 문자

array : 대괄호[]로 나타내며, 각 요소들은 (,)로 구분한다. 요소간의 순서에 의미가 있다.

  • ex) [10, {"k":10}, [1,"one"]]

object : 순서가 없는 "이름-값" 쌍의 집합으로 이름은 항상 string 자료형이다. 중괄호{}를 사용한다.

 

JSON 객체 예시 ( 키-값 패턴으로 표기)
 {
    "이름": "phulasso",
    "나이": 18,
    "성별": "남",
    "주소": "경기도 수원시",
 }

 

JSON 장점

  • 텍스트로 이루어져 있어 사람과 기계 모두 읽고 쓰기 쉽다.
  • 프로그래밍 언어와 플랫폼에 독립적이므로 서로 다른 시스템 간 객체를 교환하기에 좋다.
  • js문법을 채용하여 eval 명령으로 곧바로 실행이 가능하다. 그러나 외부에서 악성코드 유입 가능성이 있다. 최신 웹 브라우저 들은 json 전용 파서 기능을 내장하고 있고, 더 안전하고 빠르다.

 

 

 

'Web > Technical' 카테고리의 다른 글

Session  (0) 2020.11.16
Cookie  (0) 2020.11.14

+ Recent posts