일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- Bandit
- 모듈구조도
- usecase description
- ssh
- status diagram
- gof design pattern
- madia designer ui design
- nc reverse shell
- 생성패턴 행위패턴 구조패턴
- base64
- sofrware architeture
- 디자인패턴
- telnet
- cron
- ui 디자인 기본원칙
- fan-in fan-out
- 클래스 관계
- 암표거래
- 상태다이어그램
- 구조적 설계
- strucuture charat
- 객체 상속 속성 인스턴스 메소드 오퍼레이션
- 소프트웨어공학 디자인패턴
- factory metohd pattern
- 팬인과 팬아웃
- prototypepattern 예시 example
- UseCase
- 매크로를 바라보는 시각
- 리버스쉘
- bandit21
- Today
- Total
목록HACKING (41)
2.log
1. SSH 로 서버에 로그인 $ ssh @ 2. 관리자 권한으로 sshd_config 파일 열기 $ sudo vim /etc/ssh/sshd_config 3. 포트를 변경 / 추가 하려면 해당하는 줄의 주석(#) 제거하고 포트 번호 입력 / 다른 포트 번호 추가 (기본 : 22) #port 22 Port [바꿀 포트번호] 4. SSH 서비스 재시작 $ sudo service ssh restart #or $ sudo systemctl restart sshd
Bash Unix/Llinux 시스템에서 사용되는 기본 shell 중 하나로, 사용자와 컴퓨터 간 상호작용을 도와주는 인터페이스 command line을 통해 사용자의 입력내용을 컴퓨터가 해석 및 실행할 수 있게 도와주는 프로그램 SSH 접속 시 bash 를 사용하면 어떻게 되는가 ssh 접속 시 bash 를 실행하는 경우, 원격 서버에 로그인 할 때 로그인한 사용자 계정으로 직접 bash shell을 실행하게 됨 즉, 일반적인 ssh 접속과 달리 로그인한 사용자의 '로그인 셸' 과 상관없이 'bash 셸'을 실행 할 수 있고 이에 따라, 접속 후 새로운 bash 셸 을 실행하게 되므로, 기본 로그인 셸에 비해 다양한 기능을 사용할 수 있게 됨 이 때 로그인 셸에서 제공하지 않는 기능이란, 사용자가 일반..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/b0oXam/btr8w6Y0ifA/B5h6RcOf2GuZouRsKcfEUK/img.png)
sudo, su, chmod ... 이 모든 명령어가 먹히지 않아 파일 권한변경을 할 수 없을 때 install 명령을 통해 권한변경을 시도해 볼 수 있음 install 명령어파일 복사, 파일 소유자, 그룹 및 권한 변경에 사용되는 명령어로, install 명령어 사용하여 파일 복사하면, 복사된 파일이 기존 파일과 동일한 권한을 상속함. 즉, 복사된 파일은 복사를 수행한 사용자 및 그룹에 대한 권한을 가지게 됨 사용법-m 옵션을 사용하여 권한 지정하고 파일과 경로 지정$ install -m 4755(권한설정) file.txt /path/to/destination 예를들어 기존 bandit20-do 파일은 소유자가 bandit20 이지만 install 명령으로 복사를 수행한 /tmp/bandit20-do ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/TCyHA/btr8vG7fyoG/5bh3Jnnbc8nAkrT53uC1ok/img.png)
setuid? UNIX/Linux 시스템의 파일 특별 권한 중 하나로, setuid 가 설정된 프로그램 / 파일 실행 시, 실행한 사용자 대신 파일 소유자의 권한으로 실행이 이루어짐. 이는 권한 없는 사용자가 권한을 부여받을 시 root 권한으로 실행되어 악용될 수 있기에 주의 필요함 설정방법 #문자모드 $ chmod u+s [파일명] #숫자모드 $ chmod 4755 [파일명] bit 모드로 설정 시 4는 setuid(4000), 755 는 rwx (4,2,1) 권한 조합을 나타내며, setuid 설정이 되면 파일 소유자 권한이 x 대신 s 로 표시됨 예를들어 해당 파일의 경우 소유자에게 rwx 권한이 있는데 setuid 가 설정되어 x 대신 s 가 부여되었고, 나머지 그룹과 기타 사용자에게는 r-x ..
Shell 사용자(user)와 커널(Kernel) 사이에서 매개체 역할하는 프로그램 사용자로부터 명령을 받아 프로세싱 하기 위해 커널에 넘겨주어 사용자가 커널에 직접 명령 내릴 수 있게 함 bashrc Bourne Again Shell 의 축약어로, 리눅스에서 가장 널리 사용되는 쉘 보통 5개의 공통된 설정 파일 가지며 일반적으로 전역 파일은 /etc 디렉토리, 지역 파일(특정 사용자에게만 영향 끼치는 파일)은 사용자의 홈 디렉토리에서 숨김파일( ' . ' 으로 시작) 형태로 존재함 파일종류 /etc/profile ~/.bash_profile ~/.bashrc /etc/bashrc ~/.bash_logout 파일설명 /etc/profile 환경변수와 bash 가 수행될 때 실행되는 프로그램 제어하는 전역..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bidnfD/btr7hyCvUSJ/MpEq5W7F1SHCUxcuJlY1x1/img.png)
원인 키 권한 관련 에러 개인키는 소유자 외의 사용자가 접근/수정하면 안되기 때문에 권한이 너무 open 되어있으면 permission deny 뜸 solution : chmod 400 권한 축소시켜서 사용 # chmod 400 [경로]/{key_name} $ chmod 400 /tmp/private
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bWkyXf/btr7d8LuArP/xduKJKmsFYW3WU6zSWKsY0/img.png)
diff (differences) 두 파일 사이 내용 비교하는 명령어로 cmp 보다 직관적인 정보 보여주며, 문서의 줄 사이 변경 사항 보여줌 (+ diff3 : 3개의 파일 비교 가능) 명령어 #diff $ diff [option] [file1] [file2] #diff3 $ diff [option] [file1] [file2] [file3] 옵션 -c 두 파일 간 차이점 출력 -d 상세 출력 -r 두 디렉토리간 차이점 출력, 서브디렉토리까지 비교 -i 대소문자 차이 무시 -w 모든 공백 차이 무시 -s 두 파일이 같을 때 알림 -u 두 파일의 변경되는 부분과 근처 내용까지 함께 출력 [ex] -c option [ex] -d option [출처] https://m.blog.naver.com/PostVi..
URL 접속 시 리다이렉트 or 포워드가 일어나면 작업중인 페이지가 전환되는데 리다이렉트는 페이지 전환 주체가 클라이언트, 포워드는 서버임 이 때, 클라이언트가 주체가 되면 처음 접속 요청한 URL이 아닌 서버에서 응답받은 다른 URL로 재요청을 보내야 하지만 서버가 주체가 되면 클라이언트측에서 요청정보 변경 할 필요 없이 서버측 내부 동작을 통해 최종 응답 바로 받을 수 있음 Redirect 서버에서 클라이언트가 요청한 URL에 대한 응답으로 다른 URL로의 재접속 명령(300번대 코드) 보냄 [ex] - 클라이언트가(브라우저) a 를 요청하면 서버는 redirect b 를 응답함 - 클라이언트는 b 로 다시 요청 날리고 서버는 c라는 결과 응답 >> 클라이언트 측에서 요청이 총 2번 발생, 리소스 변..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/V7iKv/btr53DYDbjB/x7qBtKW52eZx1fYDtuVr70/img.png)
OpenSSL SSL/TLS 프로토콜을 구현한 라이브러리 중 하나로, 통신전문과 문서를 암호화 할 수 있음 s_client (SSL/TLS client program) SSL/TLS 를 사용하는 원격 호스트에 접속하기 위한 일반적인 SSL/TLS client를 구현하는 명령어 openssl 로 운영중인 웹서버의 SSL 인증서 정보 살펴볼 수 있음 사용법 $ openssl s_client [옵션] s_client 옵션 -connect host:port 접속할 host, port / 기본값은 localhost:443 -ssl2, -ssl3, -tls1, -dtls1 설정한 프로토콜만 통신 no_를 앞에 붙이면 설정한 프로토콜 제외하고 통신 (ex. -no_ssl2) -msg 프로토콜 메시지 출력 -CAfil..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/u0tfM/btr6pFjep8r/ixV4u0GlvKxw9l1KEloDPk/img.png)
Insecure_Client_Initiated_Renegotiation 암호화 통신 시 재협상 제한이 미흡해서 일어나는 취약점 재협상 종류 Client-initiated secure renegotiation Client-initiated insecure renegotiation Server-initiated secure renegotiation Server-initiated insecure renegotiation 확인방법 점검하고자 하는 사이트에서 명령어를 통해 재협상 시도후 리턴 값 확인해 취약 유무 판별 $ openssl s_client -connect IP:PORT --- read R BLOCK 이 뜨면 대문자 R (RENEGOTIATING), 재협상 시도하는 명령 입력 R 명령 입력 시 위와 같..