전체 글 (312) 썸네일형 리스트형 임베디드 해킹(해킹 필요 기술) 보호되어 있는 글입니다. 임베디드 해킹 (사물인터넷 해킹 관련 사건) 보호되어 있는 글입니다. node-serialize • 취약점 설명 serialize(직렬화)는 Object 또는 Data의 상태 또는 타입을 특정한 형태의 포맷을 가진 데이터로 변환하는 것을 의미한다. 공격자는 역직렬화 과정에서 상태 또는 타입을 이용하여 악의적인 행위를 발생시키거나 특정한 상황에서 호출되는 메소들을 이용하여 공격에 사용한다. • 조건 [CVE-2017-5941] Node.js에 node-serialize:0.0.4버전 라이브러리를 사용할 경우 RCE(Remote Code Excution) 공격이 가능하다. • 코드 분석 node-serialize 버전을 확인해보면 0.0.4 라이브러리를 사용하고있다. 즉, RCE 공격이 가능하다는것이다. const serialize = require('node-serialize'); const app .. Dream Gallery @app.route('/request') def url_request(): url = request.args.get('url', '').lower() title = request.args.get('title', '') if url == '' or url.startswith("file://") or "flag" in url or title == '': return render_template('request.html') try: data = urlopen(url).read() mini_database.append({title: base64.b64encode(data).decode('utf-8')}) return redirect(url_for('view')) except: return render_templ.. 리버스 엔지니어 개념 보호되어 있는 글입니다. IoT 진단 보호되어 있는 글입니다. shell_basic • Shell coade 익스플로잇을 위해 제작된 어셈블리 코드 조각이다. 즉, shell을 획득하기 위한 목적으로 shell코드르 사용한다. • orw shellcode orw shellcode는 파일을 열고, 읽은 뒤 화면에 출력해주는 코드이다. ex) "/tmp/flag"를 읽는 shellcode 작성하기 char buf[0x30]; int fd = open("/tmp/flag", RD_ONLY, NULL); // 문자열을 메모리에 위치시키기 read(fd, buf, 0x30); write(1, buf, 0x30); 스택에는 8바이트 단위로만 값을 push 할 수 있다. 근데 "/tmp/flag" 는 9바이트 이기때문에 먼저 0x67를 우선 push 한 다음 해줘야한다.(리틀 엔디언으로 저장되기 때.. Welcome 드림핵의 시스템 해킹 공부를 하기 위한 첫번째 문제이다. 첫번째 문제는 해당 문제에 접속을 하면 flag 값이 출력이 된다. 이전 1 2 3 4 5 6 ··· 39 다음