티스토리 뷰

웹 해킹/취약점

eval 함수

삼전동해커 2020. 9. 15. 12:19

eval() 함수

eval() 함수는 문자열을 받아 자바스크립트로 실행을 시키는 함수이다.

eval(string) 형태로 사용한다.

ex) eval('2+2')   //4

eval()함수는 이런 점을 이용해 악의적인 실행을 할수 있다.


예를들어 

print(eval(__import__('os').system('ls /')))

같이 실행을 하면 root 디렉토리의 정보가 노출된다.


eval()함수는 php나 javascript같이 스크립트 언어에서 사용할 수 있다. 즉 스크립트 언어에서 eval()함수를 사용하게 되면 취약점이 된다는 것이다.



eval()함수를 안전하게 사용하기 위해서는 안티 패턴을 사용하자.


//안티패턴


var obj = {name:"javascript"};

var property = "name";

alert(obj[property]);





'웹 해킹 > 취약점' 카테고리의 다른 글

파이썬 pickle을 이용한 serialize 취약점  (0) 2020.09.21
type juggling  (0) 2020.09.18
php include, wrapper 취약점  (0) 2020.09.14
serialize()함수 취약점(2) python  (0) 2020.09.14
serialize()함수 취약점(1) php  (0) 2020.09.14
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/04   »
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
글 보관함