권장 사항: ASP 프로그램의 일반적인 SQL 방지 주입 공격 코드를 해석합니다. SQL 주입 일반적인 http 요청은 get 및 post에 불과하므로 post의 매개변수 정보에서 모든 불법 문자를 필터링하거나 파일에서 요청을 가져오는 한 SQL 주입 공격을 방지할 수 있습니다. IIS가 asp.dll에 전달한 get 요청은 문자열 형식입니다. 데이터가 Request.QueryString에 전달되면 asp 파서는 Request.QueryString을 분석합니다.
먼저 편집기의 몇 가지 기본 기능을 소개합니다.기본 로그인 admin_login.asp
기본 데이터베이스 db/ewebeditor.mdb
기본 계정 관리자 비밀번호 admin 또는 admin888
Baidu/google에서 inurl:ewebeditor를 검색하세요.
기본 기능을 갖춘 웹사이트가 최소 수천 개 이상 있으므로 기본 백엔드를 사용해 보세요.
http://www.xxx.com.cn/admin/ewebeditor/admin_login.asp
기본 계정과 비밀번호로 로그인해 보세요.
eWebEditor를 사용하여 WebShell을 얻는 단계는 대략 다음과 같습니다.
1. 웹사이트가 eWebEditor를 사용하는지 확인하세요. 일반적으로 우리는 게시물(기사)이 게시된 페이지에 유사한 표시된 아이콘이 있는지 여부만 주의하면 대략적인 판단을 내릴 수 있습니다.
2. 소스코드를 보고 eWebEditor의 경로를 찾습니다. 소스 코드를 보려면 클릭하여 <iframesrc='/edit/ewebeditor.asp?id=content&style=web'frameborder=0scrolling=nowidth='550'HEIGHT='350'></iframe>과 유사한 명령문이 있는지 확인하세요. 소스 코드에서. 실제로 그러한 진술의 존재를 발견해야만 이 웹사이트가 eWebEditor를 사용하고 있음을 확신할 수 있습니다. 그런 다음 src='***'에 ***를 적습니다. 이것이 eWebEditor 경로입니다.
3. eWebEditor의 관리 로그인 페이지를 방문하세요. eWebEditor의 기본 관리 페이지는 admin_login.asp이며 ewebeditor.asp와 동일한 디렉터리에 있습니다. 위 경로를 예로 들면, 로그인 페이지가 나타나는지 확인하기 위해 방문한 주소는 http://www.***.net/edit/admin_login.asp 입니다.
그런 페이지가 보이지 않는다면 관리자가 관리 로그인 페이지를 삭제했다는 뜻입니다. 하하, 뭘 기다리고 계시나요? 그냥 나가서 다른 곳에서 시도해 보세요. 그러나 일반적으로 관리자가 이 페이지를 삭제하는 경우는 거의 없습니다. 기본 사용자 이름: admin, 비밀번호: admin888을 사용해 보세요. 어때요? 성공하셨나요(기본 계정이 아닐 경우 아래 글을 참고해주세요)!
4. 업로드 파일 형식을 추가합니다. 스타일 관리를 클릭하고 목록 하단에 있는 스타일 설정을 선택하세요. 목록 하단에 있는 스타일을 선택해야 하는 이유는 무엇인가요? eWebEditor에 포함된 스타일은 수정이 허용되지 않기 때문에 물론 새로운 스타일을 복사하여 설정할 수도 있습니다.
그런 다음 업로드된 파일 형식에 asa 형식을 추가합니다.
5. ASP 트로이 목마를 업로드하고 WebShell을 구합니다. 다음으로, ASP 트로이 목마의 확장자를 asa로 변경하면 간단히 ASP 트로이 목마를 업로드할 수 있습니다. 업로드 방법을 묻지 마세요. 미리보기를 보셨나요? 미리보기를 클릭한 다음 버튼을 선택하면 다른 파일을 삽입할 수 있습니다.
취약점 원칙
취약점을 악용하는 원리는 매우 간단합니다. Upload.asp 파일을 참조하세요.
ASP 스크립트 파일 업로드는 어떠한 경우에도 허용되지 않습니다.
sAllowExt=바꾸기(UCase(sAllowExt),ASP,)
eWebEditor는 ASP 파일만 필터링하기 때문입니다. eWebEditor를 처음 사용했을 때 궁금했던 기억이 납니다. 작성자는 이미 asp 파일을 필터링해야 한다는 것을 알고 있었는데 asa, cer 및 기타 파일을 동시에 필터링하면 어떨까요? 어쩌면 이것은 무료 사용자에 대한 무책임의 표시일 수도 있습니다!
고급 애플리케이션
eWebEditor 취약점을 악용하기 위한 몇 가지 팁도 있습니다.
1. 기본 사용자 이름과 비밀번호를 사용하여 로그인할 수 없습니다.
db 디렉토리에 있는 ewebeditor.mdb 파일을 직접 다운로드해 보십시오. 사용자 이름과 비밀번호는 eWebEditor_System 테이블에 있으며 md5로 암호화되어 있습니다. 다운로드할 수 없거나 크랙할 수 없다면 운이 좋지 않다고 생각하십시오.
2. asa 유형을 추가한 후에도 여전히 업로드할 수 없는 것으로 나타났습니다.
웹마스터가 어떤 코드를 알고 직접 Upload.asp 파일을 수정해야 하는데, 일반 사람들의 사고 습관에 따르면 sAllowExt=Replace(UCase(sAllowExt),ASP 문장에서 직접 수정하는 경우가 많습니다. ,) 한 웹마스터가 이를 다음과 같이 수정한 것을 보았습니다.
sAllowExt=바꾸기(바꾸기(바꾸기(바꾸기(바꾸기(UCase(sAllowExt),ASP,),CER,),ASA,),CDX,),HTR,)
언뜻 보면 모든 것이 필터링되어 있지만 업로드 유형에 aaspsp를 추가하기만 하면 asp 파일을 직접 업로드할 수 있습니다. 하하, 천재적인 아이디어 아닌가요? aaspsp가 asp 문자를 필터링한 후 asp로 바뀌었습니다! 그런데, 사실 동왕포럼 7.0sp2에서도 비슷한 방법으로 확장자 필터링을 우회할 수 있다는 사실을 알려드립니다.
3. asp 파일을 업로드한 후 해당 디렉터리에 스크립트를 실행할 수 있는 권한이 없는 것을 발견했습니다.
하하 정말 멍청하네요. 업로드 유형은 변경이 가능하지만 업로드 경로도 수정은 안되나요?
4. 2번의 방법을 사용했지만 여전히 asp 유형을 업로드할 수 없습니다.
웹마스터는 ASP 작성의 달인인 것 같지만 우리는 그를 처리할 수 있는 마지막 트릭이 있습니다. eWebEditor는 원격 파일의 자동 저장 유형을 설정할 수 있고 ASP 유형을 추가할 수 있습니다. 하지만 소스 코드 형식으로 저장될 asp 파일에 대한 원격 액세스를 어떻게 활성화할 수 있습니까? 많은 방법이 있지만 가장 간단한 방법은 IIS의 응용 프로그램 파일 매핑에서 ASP를 삭제하는 것입니다.
공유: ASP가 데이터를 쿼리할 때 얻은 레코드 키워드를 빨간색으로 표시합니다. % response.write 교체(rs(필드 com/]