DAY30
DAY30

미션1: virtual.izerone.co.kr을 공격하라

1. 스캔 nslookup virtual.izerone.co.kr >125.240.93.27 nmap -v -sT -O virtual.izerone.co.kr >21,80,8080 dnsenum virtual.izerone.co.kr nikto -host virtual.izerone.co.kr hydra -L account.txt -P passwd.txt.0 virtual.izerone.co.kr ftp (account.txt에 master 추가!!) (master/bDj6la0Y) Bootstrap Example

test1.py 기본틀


def main():
  print("start program")


if __name__ == "__main__";
  main()


Bootstrap Example

test1.py


def main():
  f = open("account.txt",'r')
  line = f.readlines() //전부 읽어라
#  line = f.readline() //앞줄만 읽어라
  print("start program")
  print(line)
  print(f)
  print(type(f))
  f.close()

if __name__ == "__main__":
  main()

=>start program
['admin\n', 'root\n', 'board\n', 'hacker\n', 'master\n']
< _io.TextIOWrapper name='account.txt' mode='r' encoding='UTF-8'>
< class '_io.TextIOWrapper'>

--------------------------------
중간 수정

  for id in line:
    print(id.strip())
=> 아이디를 엔터(\n)없이 출력


def main():
  f = open("account.txt",'r')
  line = f.readlines() #전부 읽어라
#  line = f.readline() #앞 줄만 읽어라
  print("start program")
  print(line)
  print(f)
  print(type(f))
  for id in line:
    print(id.strip())
  f.close()

if __name__ == "__main__":
  main()

--------------------------------
최종
def main():
  fid = open("account.txt",'r')
  fpw = open("passwd.txt.0",'r')
  fid = fid.readlines()
  fpw = fpw.readlines()
#  line = f.readline() #앞 줄만 읽어라
  print("start program")
#  print(line)
#  print(f)
#  print(type(f))
  cnt=0
  for id in fid:
    for pw in fpw:
      print(pw.strip())
      cnt=cnt+1
      print(cnt)
#  fpw.close()
#  fid.close()

if __name__ == "__main__":
  main()

--------------------------------
ssh = SSH()
telnet = TELNET()
ftp = FTP()
ftp.connect()
ftp.login()

등을 이용해보자!


virtual.izerone.co.kr의 보안조치는 적절한가?
적절하지 않다면 어떤 조치가 필요한가?

사용자 아이디가 틀릴 경우 사용자가 없다고 알려주는 것은 보안에 취약할 수 있다.




Bootstrap Example

test2.py 쓰레드 이용하기


import threading
import time

# 쓰레드에서 실행할 함수 정의
def print_numbers():
    for i in range(1, 6):
        print(f"숫자: {i}")
        time.sleep(1)

def print_letters():
    for letter in ['A', 'B', 'C', 'D', 'E']:
        print(f"문자: {letter}")
        time.sleep(1)

# 쓰레드 생성(스타1캐리어)
thread1 = threading.Thread(target=print_numbers)
thread2 = threading.Thread(target=print_numbers)
thread3 = threading.Thread(target=print_numbers)
thread4 = threading.Thread(target=print_numbers)
thread5 = threading.Thread(target=print_numbers)
thread6 = threading.Thread(target=print_numbers)
thread7 = threading.Thread(target=print_numbers)
thread8 = threading.Thread(target=print_numbers)

thread2 = threading.Thread(target=print_letters)

# 쓰레드 시작(병렬)
thread1.start()
thread2.start()
thread3.start()
thread4.start()
thread5.start()
thread6.start()
thread7.start()
thread8.start()

# 쓰레드가 끝날 때까지 기다림
thread1.join()
thread2.join()

print("모든 작업이 완료되었습니다.")



Bootstrap Example

test3.py > Attack6.py에 추가 수정


test3.py
import requests

def main():
  print("start program");
  target = "http://virtual.izerone.co.kr/auth/lo>
  payload = {"id_param":"jyb","pw_param":"123456>
  response = requests.request('POST',target)
  print(response.text)

if __name__ == "__main__":
  main()

=> ci4에서는 작동되지 않는다!! (보안 good)
php는 될 수도 있음 ~~



Bootstrap Example

미션2 PASS와 비슷한 인증 시스템을 만들어보자


패스 인증시스템 구축
도메인과 AD의 관계
도메인 설치시 AD는 설치 되지 않음
AD 설치시 반드시 도메인 설치됨
윈도우 사용자는 Active Directory에게 ??

방화벽정책
스노트정책
감사정책
악성코드 흔적 찾기
DNS를 윈도우 서버로 전환
-------------------------------------
win2025 설치하기

active directory domain services
dns server 
이용하기

korean
i agree 체크
TUI,CUI
GUI > 윈도우 (맨아래 윈도우 데스크탑 선택)

INSTALL

P@SSW0RD!@123

설정 > 시간 및 언어설정  > TIME ZONE SEOUL
LANGUAGE > KOREA > OPTIONS > DOWNLOAD LANGUAGE PACK 

WINMAnager > 어댑터에 브릿지 설정

WIN2025 안에 WINMANAGER를 넣을 거임(통합관리)
+winmanager의 설치권한 삭제하기

WINMANAGER
제어판 > 관리도구 > 컴퓨터관리 > 매니저 암호 123456

> REBOOT

IP DHCP > 192.168.0.XXX

DNS 192.168.0.222 (모든 도메인을 222번에게 물어보겠다~~)

시작 > 컴퓨터 > 오른쪽 마우스 > 속성
작업 그룹 < - 중요! (SAMBA)

설정 변경 > 변경 > 작업그룹 대신 도메인 그룹으로 변경 가능 !
=>도메인이 작동되고 있어야 한다~~
도메인:st.kr >>> 222번에 설치할 것(아직안됨)
winmanager
pc이름: PC109
재부팅

~~~한글 패치 완료 및 설정 완료시 스냅샷걸기~~~

이후 설정 미리보기

win2025
pc 이름 변경
시스템 > 정보 > 이름 바꾸기

222번 그룹으로 들어가기
dns 
active directory domain services 설치하기
(->gns->switch 5-6개 설치->window붙이기->찾아내는지 확인......할수도...)

서버 역할 선택
win2025
고정ip 필요
10.0.2.15 255.255.255.0 10.0.2.2 10.0.2.15

DNS서버 설치 필요
설치

배포구성
ROOT도메인 :  st.kr

dns 222
도메인 그룹으로 변경 


등등등 다음 시간에 ^___^~