본문 바로가기

프로그램 (PHP,Python)288

728x90
PHPEclipse 환경에서 PHP 리모트 디버깅하기 Zend Studio를 사용하면 서버상에서 돌아가는 php를 리모트 디버깅할 수 있지만, 이넘은 유료인데다가 지금까지 애지중지 사용하고 있는 Eclipse를 버려야한다는 문제가 있어서 - 아무래도 Eclipse가 Zend Studio보다는 내 스타일이다 - 어떻게든 Eclipse 내에서 리모트 디버깅을 시도해보고 있다. 일단 ibm의 developerWorks[링크]에서 증거사진을 발견. 이 환경을 만들기 위해 사용했다는 세팅을 그대로 따라해보았다. 참, 개발환경은 PC(Windows XP)에서 Eclipse 3.1.1을 사용중이며, 웹서버에는 리눅스 Fedora Core 4 위에 apache 2.0.55와 PHP 5.0.5를 깔아서 쓰고 있다. 1. php 구동서버에 디버거모듈 설치 - http://d.. 2009. 3. 6.
OllyDbg/Hiew 분기 어셈코드 넣는 방법 바이너리로 되어있는 exe파일에 section을 추가하고, Import table을 추가한뒤에 새로 imported된 API를 호출해 기존프로그램에 기능을 추가하는.. 일종의 ReverseMe 프로그램을 만지작 거리다 왔다. 간단히 두개의 API를 import테이블에 추가해서 호출하면 되는데 공간이 없는 바람에 section을 새로 만들고.. 언제나 그렇듯이 뭔가가 하나가 플러스되면 항상 삽질도 반비례하게 플러스되고, import table에 함수를 넣는과정에서도 역시 삽질.. 그리고 마지막으로 기능추가 어셈코드를 추가할때도 잠깐 삽질.. 그 과정을 거쳐 몇시간만에 끝을냈다. 씨~ 이건 완전 노가다야!! 역시 소스코드가 없는 프로그램을 조작한다는건 정말 만만치 않은 작업이라는걸 새삼 깨닫게 된다. 물론 .. 2009. 3. 1.
GDB를 사용한 CORE 파일의 분석 프로세스가 비정상적으로 종료될 경우, core 파일을 통하여 원인 분석을 할 수 있으며, 프로세스가 비정상적으로 종료될 경우, core 파일을 남길지 여부는 다음과 같은 명령어를 통해서 설정이 가능합니다. [step 1] 비정상 종료 되는 샘플 프로그램 작성#include #include void Abnormal() { int n = 1024; char *p = (char *)malloc(sizeof(char) * 1); free(p); free(p); /* double free */ } void AbnormalContainer() { Abnormal(); } void Normal() { printf("normal function.\n"); } int main(int argc, char **argv) {.. 2009. 3. 1.
[Paros] 개발자가 알아야 할 웹 보안 SQL Injection, 파라미터 변조, 쿠키 변조, 세션 변조 공격 등으로부터 필자가 개발 중인 블로그 형태의 "바투"라는 웹 사이트가 얼마나 안전한지, 문제점은 무엇인지에 대해 알아보자. 1. SQL Injection SQL Injection 공격으로부터 사이트를 보호하기 위해서는 우선적으로 다음 3가지 과정을 지켜야 한다. ① DB 최소권한으로 웹 사이트를 운영한다. ② 입력값 검증( ' " ) # || + > )을 통해 SQL Injection 공격을 대비한다. ③ 저장 프로시저(Stored Procedure)를 이용한다. 바투 웹 사이트에서 테스트 결과 SQL Injection에 대한 공격이 발생하지 않는다. 모든 데이터 처리를 저장 프로시저로 처리하기 때문에 ' or 1=1 등과 같은 공격이.. 2009. 2. 27.
유닉스를 능숙하게 사용하기: 고급 셸 스크립트 기법 한번 더 셸 스크립트를 제대로 느껴보자 유닉스에는 길고 따분한 작업을 단순하게 만들기 위해 작업을 자동화하는 셸 스크립트가 있습니다. 이 기사는 셸 스크립트를 좀 더 제대로 배우기를 원하며 고급 스크립트를 작성하는 방법이 궁금한 독자들에게 팁을 제공합니다. 다른 유닉스 운영체제나 리눅스와 마찬가지로 IBM AIX 운영체제는 시스템 관리자, 개발자, 사용자가 일상 업무를 처리하고 고객 비즈니스를 단순하게 만들기 위한 여러 가지 강력한 도구를 제공한다. 유닉스에는 길고 따분한 작업을 단순하게 만들기 위해 작업을 자동화하는 셸 스크립트가 있다. 몇 년 동안 유닉스에서 셸 스크립트를 끼적거려 본 경험이 있을지라도 주로 운영체제 안팎을 파느라고 스크립트를 마스터하지는 못했을 것이다. 이 기사는 셸 스크립트를 좀 .. 2009. 2. 17.
728x90
728x90