목록분류 전체보기 (420)
외로운 Nova의 작업실
- 침입탐지시스템(IDS) IDS(intrusion detction system)은 자원의 무결설, 비밀성, 가용성 저해하는 비정상적인 사용과 오용, 남용 등의 행위를 실시간으로 탐지하여 관리자에게 경고메시지를 보내주고 대응하는 시스템을 말합니다. 1. 데이터 수집 : 탐지 대상으로부터 데이터를 수집합니다. 2. 데이터 가공 및 축약 : 수집된 감사 데이터를 침입 판정이 용이하도록 의미 있는 정보로 전환시킵니다. 3. 침입분석 및 탐지 단계 : 데이터를 분석하여 침입여부를 판단하는 침입탐지시스템의 핵심 단계로 여러가지 탐지 기법이 있습니다. 4. 보고 및 대응 : 침입으로 판정된 경우 이에대한 적절한 대응을 자동으로 취하거나 보안 관리자에게 침입사실을 보고 하여 보안관리자가 조치를 취하게됩니다. 오용 탐..
안녕하세요. 이번 장은 web hacking 공격 기법을 정리하려고합니다. 계속 업데이트 예정입니다. - XSS Attack(cross-site scripting) 취약점 : 사용자가 임의로 html 문서에 값을 쓸 수 있을때, 사용자의 값을 검증하지않으면 자바스크립트를 삽입하여 실행되게 할 수 있습니다. 공격 목표 : 자바스크립트를 실행하여 할 수 있는 것들을 모두 포함합니다. 기본적인 대응책 : 사용자의 입력값에대해 검증을 꼭 거쳐야합니다. 특히 태그 기호 를 조심해야합니다. 실무에서 쓰는 구체적인 대응책 : reflected XSS Attack : 서버에 저장하지않고 악성 스크립트를 실행하는 기법입니다. stored XSS Attack : 서버에 악성 자바스크립트를 저장하여 불특정 다수가 서버의 악..
안녕하세요. 이번시간에는 crackme5.exe 파일을 리버싱해보고 크랙판을 만들어보도록 하겠습니다. 자료는 아래 올려놓겠습니다. - 문제 인식 먼저 파일을 실행시켜보도록 하겠습니다. 이것도 4번 문제와 같이 시리얼을 넣으라고 하는 군요, 하지만 이번 문제는 check 버튼이 활성화가 되어있습니다. 한번 1234를 넣어서 check 버튼을 눌러보겠습니다. 시리얼 번호가 다르다고 나오는 군요, 이번 문제는 시리얼 번호를 알아내는 문제인 것 같습니다. - 리버싱 ollydbg를 이용해 리버싱을 해주겠습니다. 그리고 함수가 있는지 확인하기위해 PUSH EBP를 검색해보겠습니다. 검색했지만 없는 것으로 확인됩니다. 이 프로그램은 무슨 언어로 쓰여졌을까요? DIE로 분석해보겠습니다. 분석 결과 delphi로 쓰여..
- 네트워크 위협의 유형 수동적 공격 : 통신회선상의 정보를 무단으로 취득하는 행위로 데이터를 암호화하여 기밀성을 보장하는 방법으로 방어할 수 있습니다. 능동적 공격 : 통신회선상의 정보를 변조,위조 하는 행위로 데이터의 무결성을 확인하는 방법으로 방어할 수 있습니다. - 네트워크 기반 보안위협 및 대응책 DOS(denial of service) 공격은 공격자가 단일 컴퓨터를 통해 목표 시슽템에 과도한 부하를 일으켜 정보 시스템의 사용을 방해하는 공격방식으로 D-DOS는 다수의 컴퓨터를 사용하는 것과 대비됩니다. 취약점 : 3-way handshaking 과정에서 공격자가 다수의 syn 신호를 공격대상자에게 전송하면 공격대상자는 syn/ack 신호를 공격자에게 전달하게되는데 이때 공격자가 ack 신호를 ..
- 파이썬 requests 모듈 기초 pip install requests import requests GET 방식: requests.get() POST 방식: requests.post() PUT 방식: requests.put() DELETE 방식: requests.delete() 응답상태는 객체의 status_code 속성으로 간단하게 얻을 수 있습니다. >>> response = requests.get("https://jsonplaceholder.typicode.com/users/1") >>> response.status_code 200 >>> response = requests.get("https://jsonplaceholder.typicode.com/users/100") >>> response.s..
안녕하세요. 이번시간에는 crackme4.exe 문제를 풀어보도록 하겠습니다. 아래 문제 파일을 올려두도록 하겠습니다. - 문제 인식 먼저 실행시켜보도록 하겠습니다. serial 번호를 넣으라고하고 밑에 Registered 부분의 버튼이 활성화가 되어있지 않은 모습을 확인할 수 있습니다. 일단 serial번호를 아무거나 넣어보겠습니다. registered 버튼이 활성화가 되지 않은걸 확인할 수 있습니다. 아무래도 알맞는 serial 번호를 넣어야 Register 버튼이 활성화될 것 같다는 걸 알 수 있습니다. 그러면 이제 리버싱을 해서 serial 번호를 알아내보도록 하겠습니다. - 리버싱 일단 어떤 함수가 있는지 한번 확인해보겠습니다. cntl + f를 눌러 PUSH EBP를 검색해보겠습니다. 첫번째 ..
안녕하세요 이번 시간에는 dreamhack 문제 simple_sqli에 대한 기본적인 기초지식을 정리하려고합니다. 풀이의 경우 lecture에서 준 코드를 복사하고조금 수정해서 실행하면 풀어지기 때문에 풀이는 따로 하지 않겠습니다. Blind SQL injection : sql injection으로 타겟의 비밀번호를 알아내지 못할때, 스무고개하듯이 하나씩 찾아내는 기법 - sql 문법 데이터베이스 만들기 create database users; 데이터베이스 사용하기 use users; 테이블 만들기 create table users( userid VARCHAR(50) not null, userpassword VARCHAR(50) not null) 테이블에 값 추가하기 insert into users (u..
- 네트워크 기반 명령어 ping 명령은 인터넷으로 접속하려는 원격 호스트가 정상적으로 운영되고 있는지를 확인하는 진단 목적으로 사용합니다. ping 명령은 ICMP를 이용하는 유틸리티이며, Echo Reuquest 타입으로 ICMP 패킷을 전송하고 그 대상 시스템은 Echo Reply 패킷을 보내고 수신하믕로써 접근성을 확인합니다. ping [-option] ip_address | host_name -c : count로 지정한 숫자만큼 패킷을 송수신합니다. -i : wait으로 ICMP 패킷 송신의 대기 시간입니다. -s : size로 송신 패킷의 데이터 크기입니다. C:\ ping 192.168.07 pinginng 192.168.0.7 with 32byte of data; Reply form 192..
안녕하세요. 이번시간에는 crackme3.exe 파일을 크랙해보도록 하겠습니다. 아래 파일을 올려두겠습니다. - 문제 인식 한번 실행시켜보겠습니다. 뭔가 keyfile을 체크해본다고 합니다. 확인을 눌러보겠습니다. 파일을 찾을 수 없다고 뜹니다. 이번 문제는 파일 인증에 관한 문제인 것 같습니다. 일단 먼저 파일을 어떻게 인증하는지 리버싱을 통해 알아보고 분기문을 우회하여 크랙판을 만들어보겠습니다. - 리버싱 먼저 step over로 call 함수를 기준으로 코드의 흐름을 분석해보겠습니다. 0040100E call 함수 : user32.messageboxA 함수로 첫번째 메시지 박스를 출력해냅니다. 004010EA call 함수 : kernel32.createfileA 함수로 파일의 유무를 파악합니다. ..
- 네트워크 관리 네트워크 관리란 네트워크 사업자와 사용자에게 안정적인 네트워크 서비스를 제공하는 것이고, 네트워크에 장애가 발생하였을때 적절한 제어기능을 수행하고 보고서를 제출하는 등의 행위입니다. 계정 관리 : 소비되는 자원에 관한 모든 정보를 관리하여 사용자가 자원을 얼마나 사용했는지 파악하여 요금을 청구합니다. 구성 관리 : 네트워크 구성원들 사이의 관계와 상태를 관리합니다. 성능 관리 : 장기간에 걸쳐 시스템의 성능에 관한 정보를 수집하고 분석합니다. 장애 관리 : 제대로 동작하지 않는 네트워크의 요소를 찾아내어 문제점을 해결합니다. 보안 관리: 패스워드나 암호화된 데이터 링크를 유지보수하고 보안행위를 기록합니다. 제한적인 접속 권한, 보안 로그, 암호화 장치등을 관리하고 암호화키를 생성, 분배..