PHP 취약점 검증 실험 'Steal My Bitcoin', 서버에 $500 상당 비트코인 숨겨두고 5일째 무성공
- 서버에 0.00625104 BTC(약 $502) 상당의 비트코인 키를 숨기고, PHP 사용자 계정이 print-flag 바이너리로 접근할 수 있게 해둠
- PHP2SHELL CVE가 공개되기 전 버전의 PHP를 골라 올렸고 nginx 1MB 요청 본문 제한 뒤에 둬 난도를 조정함
- 모든 트래픽을 로깅한다고 공지했고, 취약 머신이라 프라이버시를 보장하지 않으며 다른 공격자가 활동과 데이터를 볼 수 있다고 밝힘
- 첫 번째로 지갑을 얻은 사람이 상금을 가져가고, 돈이 필요 없으면 givewell.org 기부를 권함
- 게시 후 5일이 지나도록 획득자가 없고, 누군가 추가로 넣어 상금이 $1004로 늘어남
Hacker News 의견들
CTF로 딱 좋네. LLM이 이거 털면 어떻게 했는지 라이트업 좀 올려줬으면.
$500이면 PHP RCE 하나 검증하는 값으로 꽤 센 편인데, 진짜 안전하다고 확신하는 거겠지.
돈을 주는 게 아니라 익스플로잇 쓰는 법을 $500에 사는 셈임. 이 사이트엔 그 정도가 푼돈인 사람도 많고.
선의로 하는 거겠지만, 마음먹고 나쁘게 쓰면 남의 서버 공격할 익스플로잇을 아주 싸게 사는 셈이 되지.
이건 가격 신호임. 5일째 안 털렸다는 건 인터넷에 연결된 PHP 서버를 자동으로 긁어가는 봇 떼가 아직 없다는 얘기니까.
서버가 과부하라 원문 텍스트 옮겨둠. 0.65시간째 무성공이고 지갑엔 0.00625104 BTC, 약 $502.35 들어 있음.
트래픽 전부 로깅한다는 게 제일 걸리는데. $500 보고 로그 뒤져서 새 익스플로잇 건져 팔 수도 있다는 거잖아. 로그를 실시간 공개했으면 훨씬 낫겠음.
누군가 펀드에 돈 더 넣어서 지금 $1004임.
nginx 1MB 바디 제한 뒤에 있는 것도 난이도를 올리는 요소임.
솔직히 $15k에서 25k는 돼야 바로 털림. $500은 이미 익스플로잇 가진 사람이 굳이 나설 이유가 없음.
그 논리면 상금 없는 서버는 아예 안 털린다는 소린데 말이 안 되지. 다들 그냥 재밌으라고 하는 거임.
PHP 8.4.26에 nginx 돌고 있고 찾은 페이지가 전부 정적이라 PHP 엔트리포인트가 없으면 PHP2SHELL이랑 상관없음.
키가 진짜 서버에 있다는 증명이 없는데, 게임이론적으로 볼 때 왜 시도하겠음.
시도 비용이 싼데 안 할 이유가 있나. 1% 확률로 100만 달러면 1달러는 쓸 만하지.
php2shell은 하나로 다 털리는 익스플로잇이 아직 없어서 타깃마다 서버 설정을 알아야 함. 그래서 여기선 딱히 손해 볼 것도 없음.