'전체 글'에 해당되는 글 72건

  1. 2012.09.26 modsecurity를 활용한 웹보안 강화
  2. 2012.09.26 [sql injection]sqlmap
  3. 2012.09.25 [sql injection]Blind SQL Injection Perl Tool(bsqlbf)
  4. 2012.09.25 [sql injection] 자주 사용되는 sql인젝션 도구 15종.
  5. 2012.09.24 [Cygwin]윈도우를 리눅스환경처럼 사용하기
  6. 2012.09.24 [이벤트로그분석] Log Parser 도구 활용
  7. 2012.09.24 [ThinApp] 포터블 프로그램 만들기] 1
  8. 2012.09.24 [리버싱] 참고사이트&블로그 목록

modsecurity를 활용한 웹보안 강화

|

<Modsecurity>

[Modsecurity]웹서버 Apache의 모듈로 동작하는 공개 SW 웹애플리케이션 방화벽(?)정도의 웹서버 보안강화도구이다. Modsecurity는 서버측에서 접근하는 요청(Request) 트래픽or패킷에 대한 Ruleset을 통해 정의된 트래픽or패킷을 자동으로 차단하는 식으로 동작한다.

 

[Modsecurity의 출현배경]

□ 웹 애플리케이션 취약점 보안을 위한 대대적인 소스 코드 수정이 필요하게 됨.

□ 대 다수의 중소기업이 개발인력 미비로 지속적인 침해사고에 대응 못함.

□ 기존 애플리케이션에 수정 없이 이미 존재하는 취약점에 대하여 능동적인 대응이 필요하게 됨.

 

[Modsecurity의 특징]

□ 웹페이지 주요 취약점 해결을 위해 아파치 모듈로 개발/공개된 웹보안 강화도구

□ 웹에서의 요청(Request)을 웹서버 또는 다른 모듈들이 처리하기 전에 분석/필터링

□ 우회 공격용 스트링("//","\/",".." 등)을 제거하고 인코딩된 URL을 디코딩하는 우회방지기술 적용

□ HTTP 프로토콜을 이해 가능한 엔진을 적용하여 정밀한 필터링 수행

□ GET/POST 메소드 요청분석

□ 모든 요청에 대한 상세 로깅가능이 가능하며, 차단 기능 비활성을 통해 침입탐지 역활수행

□ HTTPS를 통한 공격 필터링 가능

 

[Windows Modsecurity 설치방법]

<설치방법>

1. Modsecurity 설치에 필요한 파일(libxml2.dll, mod_security2.so)을 Apache "Modules" 폴더내에 복사

2. Ruleset파일을 Apache conf 폴더에 복사

<설치 전 주의사항>

※ 윈도우 계열에서 modsecurity를 설치하기 위해서는 Apache 2.2.x 이상 버전에서만 설치 가능

※ VC 2008 Redistributable Package를 설치해야 정상적으로 동작 (윈도우용 modsecurity는 visual studio 2008에서 개발되었기 때문)

※ VC 2008 Redistributable Package 다운로드: http://www.microsoft.com/en-us/download/details.aspx?id=29

<설치 후 주의사항>

※ Apache는 기본저긍로 mod_unique_id.so 모듈이 Disable 되어 있기 때문에 이 모듈을 Enable로 설정변경. (unique_id 모듈은 유닉스 환경과 마찬가지로 modsecurity의 정상적인 필터링을 가능하게 해주는 모듈이다.)

 

[Linux Modsecurity 설치방법]

<설치방법>

1. yum을 통한 설치: yum install mod_security ( or source build )

2. 방화벽에서 사용할 Ruleset 추가/생성

3. 서비스 시작

 

아래 URL은 Modsecurity wiki 페이지이다. 상세한 내용은 아래에서 참고하시길 ...

 

http://sourceforge.net/apps/mediawiki/mod-security/index.php?title=Main_Page

 

And

[sql injection]sqlmap

|

<sqlmap>

 

[sqlmap]은 파이썬으로 개발된 Commend 라인 기반의 sql 취약성 점검도구이다.

당연하게도 이 도구는 윈도우/리눅스 모두에서 동작하며(단, 파이썬이 설치된 시스템에서..) Mysql, Oracle, PostgreSQL, Microsoft SQL Server, Microsoft Access, IBM DB2, SQLite, Firebird, Sybase, SAP MaxDB등을 대상으로 한 점검에 매우 강력한 도구이다.

아래와 같은 단점이 있는 듯 보이지만 다양한 DB 점검이 가능하다는 점과, Command 기반의 도구를 잘 활용하면 얻을 수 있는 이점들을 충분히 얻을 수 있을 것같다.

□ 타 도구에 비해 점검시간이 오래걸림.

□ 다양한 DB구성 시, 검사내용의 신뢰도 떨어짐.

 

<sqlmap injection technic>

□ Boolean-based blind

□ Time-based blind

□ Error-based Union query

□ Stacked queries

□ Out-of-band

 

아래는 sqlmap 홈사이트이며, 좀 더 자세한 내용은 홈사이트의 내용을 참조하길 바란다. (물론 아래 위치에서 다운로드도 가능하다. )

★ http://sqlmap.org/

 

 

<Usage>

And

[sql injection]Blind SQL Injection Perl Tool(bsqlbf)

|

<bsqlbf>

Python으로 작성된 Blind SQL Injection 도구

 

Usage:

 

다운로드:

 

bsqlbf.zip

 

첨부된 파일은 암호로 보호됩니다.

And

[sql injection] 자주 사용되는 sql인젝션 도구 15종.

|

No

Name

Description

1

SQLIer

취약점이 있는 URL 검사하고 사용자의 개입없이 SQL Injection 취약점을 익스플로잇하기 위해 필요한 정보를 점검.

2

SQLbftools

블라인드 SQL Injection 공격을 사용하여 MySQL 정보를 가져오는 시도를 하는 도구의 모음.

3

SQL Injection Brute-forcer 

SQL Injection 공격 취약점을 찾고 이를 이용하여 공격하는 자동화 도구입니다. 사용자가 작업하는 내용을 있으며, 블라인드 SQL 인젝션을 이용.

4

SQL Brute 

블라인드 SQL 인젝션 취약점을 사용하여 데이터베이스에서 데이터를 추출해내는 무작위 도구입니다. MS SQL 서버의 시간, 오류 기반으로 익스플로잇을 수행합니다. 오라클의 경우 오류를 기반으로 동작함.

5

BobCat 

SQL Injection 취약점의 잇점을 이용하는 감사 도구입니다. 사용자가 사용하는 애플리케이션이 액세스하는 테이블에서 데이터를 가져올 있습니다.

6

SQLMap

블라인드 SQL Injection 자동으로 수행하는 도구로 phthon으로 개발됨.

7

Absinthe

GUI 기반의 도구로 블라인드 SQL Injection 취약점에 이용하여 데이터베이스의 스키마와 목록을 자동화 과정으로 다운로드함.

8

SQL Injection Pen-testing Tool 

애플리케이션에서의 취약점을 찾아 데이터베이스를 점검하도록 설계된 GUI 기반의 도구. 

9

SQID 

SQL Injection Digger. 사이트의 통상적인 오류와 SQL Injection 찾는 명령행 기반의 도구. 페이지에서 SQL Injection 가능한 부분을 찾아내어 취약점을 입력하는 폼을 테스트.

10

Blind SQL Injection Perl Tool

bsqlbf SQL Injection 취햑한 사이트에서 정보를 가져오도록 작성된 스크립트.

11

SQL Power Injector 

웹페이지에서 SQL 명령어를 삽입하는 테스트를 수행.

12

FJ-Injector Framework 

애플리케이션에 SQL Injection 취약점이 있는지 검사하기 위해 디자인된 오픈 소스 무료 프로그램입니다. HTTP 요청을 가로쳐서 변경하기 위한 프록시 기능도 제공.

13

SQLNinja

MS SQL 서버를 엔드 데이터베이스로 사용하는 애플리케이션의 SQL Injection 취약점을 익스플로잇하는 도구.

14

Automatic SQL Injector 

SQLNinja 유사한 도구로, 오류 코드가 반환되는 SQL Injection 취약점을 자동으로 검색.

15

NGSS SQL Injector 

데이터베이스에 저장된 데이터를 액세스하기 위한 SQL Injection취약점을 이용하여 익스플로잇함.

And

[Cygwin]윈도우를 리눅스환경처럼 사용하기

|

작업을 하다보면, 꼭 ~ Linux Command 라던지... 환경 ... 등등.. Linux 시스템환경이 필요한 경우들이 많이 있다. 왜냐.. 아직까지 다수의 해킹도구들.. 분석도구들..이 Linux환경여하에서 동작하는 것들이 있기 때문이다. ㅜㅜ

하지만, 그렇다고 늘 Virtual 형태의 솔루션을 쓰기 지친나는.. 새로운 방법을 찾아봤다.. 그러다 나온 솔루션이 [Cygwin]이다.

 

[Cygwin]이라는 프로그램은, 쉽게 말해 윈도우용 GNU 개발 툴이다. 잘만 사용하면 윈도우 환경에서도 충분히 GNU/Linux 환경을 제공받을 수 있게해준다.

 

<다운로드>

http://cygwin.com/install.html

 

<설치방법>

위 <다운로드>링크에서 setup.exe파일을 받고 실행하면, 가장 먼저 나오는 아래와 같은 질문이 있다. (가장 일반적인 방법은 첫번째 "install from internet"항목이다. 이 항목의 선택을 추천한다.)

 

- 세가지 설치방식

□ Install from internet: 인터넷으로부터 설치를 진행하는 방식(권장)

□ Download without installing: 다운로드만 받고, 나중에 설치를 진행하는 방식

□ Install from Local Directory: 인터넷을 통해 다운받지않고, 자신의 디렉토리에 저장된 파일을 통해 설치를 진행하는 방식

 

아래는 Cygwin User's Guide 이다.

더 자세한 내용을 알고싶다면 가이드를 참조하자.. ( 가이드 41페이지 참조 )

 

cygwin-ug-net.pdf

 

대체로 리눅스시스템과 같은 구조로 되어 있어 리눅스에 대해 이해도가 높을수록 다양한 응용이 가능할 것이라 생각된다.

추가로, [Cygwin]을 실행하면 윈도우 파티션은 자동으로 /cygdrive에 마운트 된다. 헤매지 말고 곧장 해당 디렉토리로 옴겨 작업을 시작하자!

 

<Cygwin 초기 bash 환경설정방법>

 

● bash 환경설정

.bashrc 수정

● 한글캐릭터 지원

.inputrc 수정

● 프롬프트 수정(리눅스화)

.bash_profile 수정

제일 아래 부분에 아래와 같은 코드를 추가(만약 있다면, 아래와 같이 수정)

export PS1='[\u@\h \w]\$'

 

<Cygwin 삭제방법>

1. 시작 -> 실행 -> regedit -> HKEY_CURRENT_USER -> Software ->Cygnus Solution 폴더 삭제

2. C:\Program Files\UCB 폴더 삭제

참.. 간단하네~^^

And

[이벤트로그분석] Log Parser 도구 활용

|

<Log Parser>

Log Parser는 마이크로소프트에서 제공하는 무료 도구로서 이벤트 로그 분석 시, 많은 양의 로그에서 원하는 정보만 추출하거나 통계를 낼 때 사용가능한 도구이다. 기본적으로 SQL문 기반으로 사용되며, 현재 배포된 최신버전은 2.2 버전이다.

 

http://www.microsoft.com/en-us/download/details.aspx?displaylang=en&id=24659

 

다만, 위 파일은 설치하여야 사용이 가능하기 때문에, 하나의 PC에서 수집된 이벤트 로그를 분석할 때만 유용하다. 즉, 이동성이 없다. 따라서, 아래에는 "포터블버전"으로 생성한 Log Parser 파일을 첨부한다. ( USB에 담아서 사용하면 꽤 괜찮다. 다만 32bit버전에서 생성된 포터블버전임을 잊지말자! )

 

Portable_LogParser_v2.2.zip

 

[ Log Parser 도구 활용 ]

□ 많은 양의 이벤트 로그를 찾고자 하는 로그의 Event ID나 프로세스 이름 등 적은 정보만을 이용하여 사용자가 원하는 로그를 추출할 수 있다.

□ 점검 시 추출해 내고자 하는 정보가 같은 경우, SQL Query문을 파일로 기록하여, 매번 Query문을 입력하는 번거로움 없이 빠르게 정보를 가져올 수 있다.

□ 통계 데이터 추출을 통해 이상징후를 알아 볼수 있다. ( 예를들어 ,로그인 접근시도의 통계를 내어 접근시도의 증가율 등을 확인하여 공격시도가 있었는지 등을 확인 )

 

[ 사용법 ]

 

  >LogParser.exe –i:evt –o:출력형식

SELECT Event_Log_Fields [INTO 출력파일명]

FROM Security|Application|System

WHERE 조건 [ORDER BY 필드명 ASC|DESC]”

 

'Event_Log_Fields'

(S: string type / I: Integer type / T: timestamp)

EventLog (S)

RecordNumber (I)

TimeGenerated (T)

TimeWritten (T)

EventID (I)

EventType (I)

EventTypeName (S)

EventCategory (I)

EventCategoryName (S)

SourceName (S)

Strings (S)

ComputerName (S)

SID (S)

Message (S)

Data (S)

 

'출력형식'

CSV / CHART / NEUROVIEW / NAT / W3C / TSV / DATAGRID

 

2부에.. 계속..

 

And

[ThinApp] 포터블 프로그램 만들기]

|

<ThinApp 를 이용한 포터블 프로그램 만들기>

 

[Portable Vmware ThinApp 4.6.0 다운로드]

 

VMware_ThinApp_4.6.0-287958_Portable.zip

 

[Portable 프로그램 만들기]

 

1.  ThinApp > Setup Capture.exe 실행
포터블, 포터블 프로그램, Thinapp, Thinstall, vm웨어, 가상화

2. [1]에서, "Next"버튼 클릭 후, "Prescan"시작

포터블, 포터블 프로그램, Thinapp, Thinstall, vm웨어, 가상화

 포터블, 포터블 프로그램, Thinapp, Thinstall, vm웨어, 가상화 

3. [2]에서, 처음 실행한, "Prescan 이후에, 포터블로 생성하고자 하는 프로그램을 설치하고, 두번째 "Postscan"을 실행.

포터블, 포터블 프로그램, Thinapp, Thinstall, vm웨어, 가상화

포터블, 포터블 프로그램, Thinapp, Thinstall, vm웨어, 가상화

 

 

4. [3]에서, "Postscan"이 끝나면, 아래와 같이 처음 실행했던 "Prescan" 데이터와 비교/차출된 새롭게 생성된 설치파일 항목들을 확인할 수 있다. 여기서, 자신이 포터블화 시킬 실행파일 및 데이터 파일만 선택하고 "Next"버튼 클릭.

포터블, 포터블 프로그램, Thinapp, Thinstall, vm웨어, 가상화

포터블, 포터블 프로그램, Thinapp, Thinstall, vm웨어, 가상화

포터블, 포터블 프로그램, Thinapp, Thinstall, vm웨어, 가상화 

포터블, 포터블 프로그램, Thinapp, Thinstall, vm웨어, 가상화

포터블, 포터블 프로그램, Thinapp, Thinstall, vm웨어, 가상화 

포터블, 포터블 프로그램, Thinapp, Thinstall, vm웨어, 가상화

5. 마지막으로 포터블파일의 저장경로를 선택하고, "Next"버튼 클릭. 그 아래 단계에서는 추가적인 포터블파일의 옵션을 선택하고 빌드..

포터블, 포터블 프로그램, Thinapp, Thinstall, vm웨어, 가상화

포터블, 포터블 프로그램, Thinapp, Thinstall, vm웨어, 가상화 

포터블, 포터블 프로그램, Thinapp, Thinstall, vm웨어, 가상화

포터블, 포터블 프로그램, Thinapp, Thinstall, vm웨어, 가상화

포터블, 포터블 프로그램, Thinapp, Thinstall, vm웨어, 가상화

 

6. 생성된 포터블 파일을 USB에 옴긴 후, 다른 시스템에서도 정상 동작하는지 확인.

And

[리버싱] 참고사이트&블로그 목록

|
예전에는 리버싱관련 정보를 제공하는 사이트&블로그가 다양하지 않았으며, 대부분의 자료들이 비슷비슷한 유형을 띄는 곳이 많았다. 그런 점에서 봤을 때 리버싱은 정말 접하기 어려운 분야라는 생각이 든다.

여기서는, 이리저리 돌아다니며 리버싱과 관련된 높은 수준의 내용을 다루던 사이트&블로그를 기록하고 틈틈히 라도 방문하자는 목적의 사이트&블로그 목록을 기록한다.

 

TYPE URL Attribute
Blog http://blog.didierstevens.com/ Security, General. Analysis
Blog http://blog.ksplice.com/ Security, General.
Blog http://blogs.conus.info/ Securitiy, General. Personal projects
Blog http://blogs.msdn.com/b/ntdebugging/ Windows debugging
Blog http://blogs.technet.com/b/markrussinovich/ Exploiting, Reversing
Blog http://dumpanalysis.org/blog/  Crash analysis on Windows
Blog http://extraexploit.blogspot.com/ Vul, Malware analysis
Blog http://g-laurent.blogspot.com/ Exploiting. Security, General.
Blog http://hexblog.com/ IDA Deug
Blog http://vnsecurity.net/blog/ Codegate Quals
Blog http://xorl.wordpress.com/ Vuln Analysis
Blog http://reverseengineering.blog.com/ Reversing, Packers and Protectors, Cracking
Blog http://reversingtools.blogspot.com/ Reverse Engineering Tools
Blog http://binaryfun.blogspot.com/ Reversing tips
Blog http://hexale.blogspot.com/ Security, Reverse Engineering
Blog http://internetopenurla.blogspot.com/ Malware Reversing
Blog http://joxeankoret.com/blog/ Malware Analysis

 

다 확인하고자하면 욕심이겠지... 하지만 보면 볼수록 도움이 된다는 것은 확실한 사실일 것이다..

And
prev | 1 | ··· | 3 | 4 | 5 | 6 | 7 | 8 | 9 | next