목록전체보기 (47)
INSPECT
[First commit] 1. github.com 에서 저장소를 만든다. 저장소 이름을 유의해서 기억해둔다. 2. git init 3. git add . 4. git commit -m "first commit" 5. git remote add origin 주소 * 여기서 주소는 github 저장소 주소이다. "https://github.com/저장소 이름.git" 형식이다. 6. git push -u origin master 7. username과 password 입력 이 작업까지 끝나면 저장소 이름으로 접속가능하다. [수정] 1. git status - 수정내역 확인 2. git add . 3. git commit -am "설명" 4. git push origin master
Python Django-5 (Dynamic Url Routing & Patterns /URL Links & Get Absolute URL) ---Dynamic Url Routing & Patterns--- 동적인 URL을 만들기 위해 id값을 인자로 받는다. id=id로 해주면 일일이 안 해주어도 동적으로 생성가능하다. 정규표현식을 이용해 url은 위처럼 만들어준다. P다음 나오는 id와 뷰에서 id=None해준 id는 일치해야 한다. 예를 들어 P로 했다면 인자 값에도 abc=None으로 해줘야 한다. 주소창 숫자만 바꾸면 페이지가 정상적으로 나오게 된다. 이것으로도 멋지지만 숫자 앞에 detail을 없애고 싶다. details/를 지우면 된다. 정규표현식은 https://github.com/codi..
Python Django-4 (QuerySet &Get Item or 404 Query) ---QuerySet--- 터미널에서 python manage.py shell을 치면 쉘로 들어오는데 이것은 우리 장고프로젝트와 연관되어 사용할 수 있다. 모델을 임포트해주면 모델을 이용해 조회하거나 생성하는 것이 가능해진다. 반복문으로 쿼리셋에 저장해 원하는 정보를 출력해줄 수 있다.PK는 ID와 의미가 비슷하다. Primary Key의 줄임말이다. 모델 Post를 임포트 해준 뒤 list에 queryset으로 모든 포스트 항목들을 집어넣고 object_list라는 변수에 넣었다. view에 object_list 변수를 입력해준다. 뷰를 이런식으로 바꿔서 반복문으로 돌리면 이렇게 멋있게 나온다. 멋있다... ---..
---template--- 장고를 사용할 때 중요한 능력 중의 하나는 템플릿이다. 템플릿은 우리의 웹페이지를 smart하게 만들어준다. 또한 코딩하기에도 편하게 해준다. 기존의 뷰를 보았을 때 지금 이 상태에서 만약 html코드가 더 길게 작성된다면 보기에 나쁘고 다른 사람이 볼 때도 보기 어렵다. setting.py에 base_dir은 우리의 프로젝트의 기본 디렉토리를 나타낸다. DATABASES에 있는 주소 os.path.join(BASE_DIR, ‘db.sqlite3’)를 그대로 복사한다.위에 TEMPLATES의 DIRS에 그대로 붙여넣는다. 뒤에 db.sqlite3를 templates라고만 바꿔준다. templates라는 디렉토리에서 템블릿을 찾게 해주는 것이다.templates 폴더를 만들고 안..
---Request&Response-- webpage에서 request는 노크(클릭) response는 그에 대한 대답모두 request-response cycle 로 이루어진다.view는 request와 response를 handle한다. --Mapping URLs to Views-- url.py에 와서 url패턴을 만들어준다. url(r'^admin/', admin.site.urls),기본적으로 써져있는 이 url을 복사해서 posts url을 만들어보겠다. url(r'^posts/$', admin.site.urls),이러면 posts의 url을 생성한 것이다. 하지만 지금 이렇게 한 뒤 바로 url에 /posts를 치고 들어가보면 admin페이지가 나온다. 이것을 admin.site.urls와 같이..
---Start--- 프로젝트 있는 폴더로 들어와서django-admin.py startproject malwarepect 프로젝트로 들어와서 (cd malwarepect)python manage.py runserverpython manage.py migrateDB에 변경사항을 저장시키는 명령이다.python manage.py createsuperuser 슈퍼유저는 그냥 기본으로 만든다.db는 기본적으로 sqlite3이다. test용으로 정말 좋다. local주소 뒤에 /admin을 치면 admin페이지로 들어간다.앱들을 생성하고 앱이 어떻게 생겼는지 이후 어떻게 수정해야하는지 시험할 수 있다.superuser계정으로 로그인한다. urls.py는 url을 지정해주는 페이지이다.---------------..
[Metasploit을 이용한 모의해킹] - 피싱메일 Metasploit을 이용한 모의해킹(피싱메일)이다. 가상망은 ICT청년취업아카데미 과정의 이성원 포렌식 강사님이 GNS3를 이용해 만들어 주셨다. 0. 주어진 정보 네트워크 172.10.10.0/24게이트웨이 .52/24공격대상 도메인 victim.com 1. IP주소 획득, 네트워크 스캐닝 (1) victim.com의 ip주소를 알아내기 위해 nslookup 명령을 사용했다.www.victim.com의 ip주소는 172.10.10.2 라는 것을 확인할 수 있다. (2) 네트워크 정보가 주어졌기 때문에 스캐닝을 할 수 있다. nmap을 이용해 네트워크 스캐닝을 했다,nmap -sT -sV -O 172.10.10.0/24 nmap은 Windows에 설..
sooak.exe 악성코드 분석 1. 개요 파밍 악성코드의 수법이 정밀해지고 있다. sooak.exe 악성코드는 중국의 유명 sns, 블로그 서비스인 pengyou와 qq를 이용하여 C&C서버에 접속해 변조된 금융권 사이트, 포털 사이트로 연결시키는 방식이다.악성코드 샘플을 직접 정적분석하려 했으나 VMProtect로 패킹되어 있었고, 언패킹을 시도했으나 완벽하게 되지 않아 실패했다. VMProtect 언패킹 방법은 추후에 글을 올리겠다.따라서 이 글은 직접 코드분석은 하지 못하고 Virustotal, malwares.com의 분석 내용과 동적분석을 통해 종합한 내용이다. https://www.virustotal.com/ko/file/283d2b410989d3725e5156cc2edc9e7fc8eea04..
[13회 HDCON 해킹방어대회 문제풀이]사고분석1-1 문제 recme.zip파일을 다운로드 받아 hxd로 열어보았다. zip파일의 시그니처가 보이지 않는다. zip파일의 구조는 위와 같다. recme.zip 파일은 현재 Local File Header와 파일명까지 보이지 않으므로 그 부분까지 복구하면 된다. 복구하기 위해 Central Directory 구조를 보고 Header부분에 알맞게 채워주면 된다. 먼저 마지막 부분 End Central Directory Record를 보면 Total entries(Central Directory에 있는 항목의 수)가 1이다. 따라서 Central Directory 구조는 색칠된 부분이다. 이 부분을 보고 복구하면 된다. 맨 첫부분 시그니처부분은 504B 030..
[Python+GAE+Telegram Bot 오버워치 전적검색기] Python script를 다 만들고 Telegram Bot과 연동시키기 위해 http://bakyeono.net/post/2015-08-24-using-telegram-bot-api.html 페이지를 참고하여 많은 도움을 받았다. 작업환경은 Ubuntu 14.04LTS 에서 진행했다. 이유는 모르겠지만 리눅스에선 한글 인코딩 문제로 고생하지 않아도 되었다.나는 Telegram Bot의 이름을 oversearch_bot으로 만들었다. 위 블로그의 내용대로 app.yaml파일과 main.py파일을 만든 후 내가 만든 python파일의 내용을 main.py에 추가했다. 실행시켜 보았더니 mechanize와 beautifulsoup를 impor..