내 연락처 정보
우편메소피아@프로톤메일.com
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
kali: kali에서 docker 컨테이너 환경을 구축합니다. 여기서는 주로 첫 번째 환경을 사용합니다.
데이터베이스로서 redis는 ssrf 요청을 사용하여 서버가 자체 공개 키를 작성하여 비밀번호 없는 로그인을 실험할 수 있도록 합니다.
Redis는 데이터를 키 값 형식으로 저장합니다. 여기서는 docker로 구축된 centos 환경을 사용합니다.
다음 명령을 사용하여 centos 컨테이너를 입력하십시오.
docker exex -it 容器的编号 /bin/bash
centos에는 이미 redis-server를 실행하기 위한 스크립트가 있으므로 컨테이너에서 redis-cli만 활성화하면 됩니다.
정상적으로 작성이 가능한지 테스트해 보세요. 그림과 같이 작성된 내용이나 디렉터리를 수정할 수 있습니다.
파일 이름도 수정할 수 있으므로 공개 키를 생성하고 이를 대상 서버에 기록하여 비밀번호 없이 로그인할 수 있습니다.
수정 후 저장하시면 그림과 같이 글쓰기 성공!
서버를 연결할 수 없는 상황이 발생하면 ./start.sh를 사용하여 이 스크립트를 실행할 수 있습니다.
서버를 통해 요청을 위조하고, gopher 프로토콜이나 time dict를 사용하여 redis를 요청하고, 파일을 작성합니다.
요청을 하고 위의 내용을 붙여넣은 후 Fetch를 클릭하면 됩니다.
처음 Fetch를 해보니 해당 파일이 존재하지 않는 것을 발견했는데, 이는 centos 환경에서 자체 공개키가 생성되지 않아 작성이 불가능했기 때문이었습니다. 사전에 centos의 공개 키.
공개 키가 대상 서버에 성공적으로 기록된 것을 볼 수 있습니다.
그러면 비밀번호 없이 ssh를 통해 로그인이 성공한 것을 볼 수 있습니다!
Dockerfile 환경에는 docker 이미지의 포트 22가 시작되지 못하게 하는 몇 가지 문제가 있으므로 파일이 수정되고 /usr/sbin/sshd를 실행하여 sshd를 시작합니다.
위에서 언급한 다운로드 실패가 발생하면 아래 그림과 같이 파일을 초기화하면 됩니다.
Centos와 Ubuntu의 단계는 Redis의 보호 메커니즘으로 인해 다음 오류가 발생하여 일부 속성을 수정할 수 없다는 점을 제외하면 거의 동일합니다. 해결 방법은 보호 모드를 끄고 다음을 사용하는 것입니다. 명령;
config set protected-mode no
Redis 버전 제한으로 인해 7.2.5의 보안이 너무 높아서 비밀번호 없는 SSH 로그인이 실패할 수 있으므로 여기로 가져왔습니다.
버전 5.0.5
그런 다음 동일한 작업을 사용하여 비밀번호 없이 로그인할 수 있습니다.