본문 바로가기

웹해킹

(116)
Cross-Site-Scripting (XSS) xss는 클라이언트 사이드 취약점 중 하나이다. 웹에 악성 스크립트 삽입해서 이용자가 이 악성 스크립트가 포함된 사이트를 방문하면 쿠키, 세션을 탈취하는 등의 공격이 이루어질 수 있다. xss 공격은 이용자가 삽입한 내용을 출력하는 기능에서 발생한다. 이런 식으로 title과 content를 받아서 표시해주는 코드가 있을 때 이런 식으로 script 태그를 삽입해 원하는 동작을 수행하게 만들 수도 있다. script 태그 안의 자바스크립트를 이용해서 웹 페이지를 조작하거나, 웹 브라우저의 위치를 임의의 주소로 변경하는 등의 행위를 할 수 있다. 이 코드는 쿠키 및 세션을 탈취할 수 있는 공격 코드이다. Stored XSS는 파일 형태로 저장된 악성 스크립트를 조회할 때 발생한다. 게시물이나 댓글에 악성 ..
드림핵 session-basic 롸업 쿠키와 세션으로 인증 상태를 관리하는 간단한 로그인 서비스입니다. admin 계정으로 로그인에 성공하면 플래그를 획득할 수 있습니다. @app.route('/') def index(): session_id = request.cookies.get('sessionid', None) try: # get username from session_storage username = session_storage[session_id] except KeyError: return render_template('index.html') return render_template('index.html', text=f'Hello {username}, {"flag is " + FLAG if username == "admin" else..
드림핵 cookie 롸업 쿠키로 인증 상태를 관리하는 간단한 로그인 서비스입니다. admin 계정으로 로그인에 성공하면 플래그를 획득할 수 있습니다. 쿠키를 바꿔서 인증 정보를 속이고 admin 계정으로 로그인해야 하는 것 같다. 문제 파일을 보니 app.py하나로 되어있다. 코드는 단순하게 /와 /login링크로 나누어져 있다. @app.route('/') def index(): username = request.cookies.get('username', None) if username: return render_template('index.html', text=f'Hello {username}, {"flag is " + FLAG if username == "admin" else "you are not admin"}') ret..
드림핵 devtools-sources 롸업 https://dreamhack.io/wargame/challenges/267 devtools-sources 개발자 도구의 Sources 탭 기능을 활용해 플래그를 찾아보세요. 플래그 형식은 DH{...} 입니다. Reference Tools: Browser DevTools dreamhack.io 웹해킹 로드맵에서 첫번째 문제이다. 개발자 도구의 Sources 탭 기능을 활용해 플래그를 찾아보세요. 가 문제 내용이다. Background-Web 스테이지에서 Browser Devtools에 대해 배운 내용을 가지고 풀면 될 것 같다. 문제 파일을 보니 뭔가 엄청나게 많다. 개발자 도구를 사용하는 문제라고 했으니 일단 폴더들을 뒤지며 웹페이지를 보여주는 파일들을 찾았다. about, components, p..