전체 글

❓ 공격 개요 Command Injection 개요 커맨드 인젝션(Command Injection)은 명령어를 삽입한다는 뜻으로, 웹 요청 메시지에 임의의 시스템 명령어를 삽입하고 전송하여 웹 서버에서 해당 명령어를 실행하도록 하는 공격이다 💻 실습 command injection 의 메인 화면이다 IP 주소를 입력하면 해당 IP 주소로 ping 명령어를 실핸한후 결과를 출력해준다 0.0.0.0을 입력하고 실행해보면 다음과 같이 ping 명령어를 실행한 결과가 출력된다. 소스코드를 확인해 어떻게 동작하는지 알아보자 입력값(웹 요쳥 메시지로부터 전달된 IP 파라미터의 값) 을 target 변수에 저장후 shell_exec() 함수를 호출하여 ping 명령을 실행한다 (리눅스의 경우 -c 옵션이 없다면 횟수..
❓ 공격 개요 Brute Force 공격개요 브루트 포스(Brute Force) 공격은 특정 정보(주로 사용자의 패스워드)를 알아내기 위한 공격이다. 패스워드 크래킹을 위해 사용하기도 하며, 웹 에플리케이션을 대상으로는 로그인에 필요한 사용자 패스워드를 알아내고자 할 때 사용된다. 공격방식 1. 무작위 대입 > 일련의 문자를 하나씩 입력하여 대입 2. 딕셔너리 공격 > 자주사용되는 패스워드를 목록을 이용하여 대입 💻 실습 Brute Force 의 메인이다. Username과 Pw 를 입력하는창과 로그인 버튼이 보인다. Username과 Pw에 아무거나 쓰고 로그인버튼을 눌러보았더니 일치하지 않는다고한다. 이제 Brute 공격으로 Username과 Pw 값을 알아내보자 공격은 프록시 도구인 Burpsuit..
스크립트는 서버측(back end) 또는 클라이언트 측(server end)의 두가지 형식으로 작성된다. 서버측 스크립팅과 클라이언트 측 스크립팅의 주요 차이점은 서버측 스크립팅이 처리를 위해 서버를 포함한다는 것이다. 반면 클라이언트 측 스크립팅은 브라우저가 클라이언트 시스템에서 스크립트를 실행해야 하지만 클라이언트 측 스크립트를 처리하는 동안 서버와 상호작용을 하지 않는다는 것이다. 스크립트는 일반적으로 다른 프로그램 또는 응용 프로그램에서 실행되어야 하는 일련의 프로그램 또는 명령이다. 웹은 클라이언트-서버 환경에서 작동되는데 클라이언트 측 스크립트는 사용자가 볼 수 있는 클라이언트 측으로 실행하는 반면 서버측 스크립트는 사용자가 볼수 없는 서버측에서 실행된다 🔴 Server Side Scripti..
🔴 프록시 (Proxy) 란? 프록시는 두 호스트가 통신할 때 서로 직접 통신하지 않고 중간에서 대리로 통신을 하도록 도와주는 것을 '프록시(Proxy)'라고 한다. 이러한 중계 역할을 하는 서버를 '프록시 서버'라고 부른다. 즉, 클라이언트와 서버 사이의 ‘중계 서버’라고 생각하면 된다. 프록시 서버가 중간에 위치함으로써 클라이언트는 프록시 서버를 ‘서버’라고 인식하고, 서버 입장에서는 프록시 서버를 ‘클라이언트’로 인식하게 된다. 프록시 서버는 위치에 따라 포워드 프록시(Forward Proxy)와 리버스 프록시(Reverse Proxy)로 나뉜다. 🔴 포워드 프록시(Forward Proxy)란? 클라이언트가 서버에 직접 요청을 하는 것이 아닌, 프록시 서버가 해당 요청을 받아 클라이언트가 요청한 서..
po3nyo
공부기록장