권장 : ASP와 JSP의 차이와 연결 나는 오늘 포럼에 가서 Netizen Bluesky가 ASP 또는 JSP가 더 나은 질문을하는 것을 보았습니다. 차이점은 무엇입니까? ASP에 대한 스레드 안전 문제가없는 것 같지만 JSP에는 스레드 안전 문제가 있습니다. 그렇다고해서 ASP가 양호하다는 것을 의미하지는 않습니다. 반대로 ASP는만큼 좋지 않다는 것을 의미합니다.
인터넷 개발로 인해 웹 기술은 매일 매일 변화하고 있습니다. 일반 게이트웨이 인터페이스 (CGI)에 이어 ASP (Active Server Pages)는 일반적인 서버 측 웹 디자인 기술이며 온라인 뱅킹, 전자 상거래 및 검색 엔진과 같은 다양한 인터넷 응용 프로그램에서 널리 사용됩니다. 동시에 Microsoft가 엔진으로 표준 제트기로 시작한 데스크탑 데이터베이스 시스템으로서 액세스 데이터베이스는 간단한 작동과 친숙한 인터페이스로 인해 큰 사용자 기반을 가지고 있습니다. 따라서 ASP+Access는 많은 중소형 온라인 응용 프로그램 시스템에 선호되는 솔루션이되었습니다. 그러나 ASP+Access 솔루션은 편의를 제공하지만 무시할 수없는 보안 문제도 가져옵니다.
ASP+Access의 보안 위험 ASP+Access 솔루션의 주요 보안 위험은 Access 데이터베이스의 보안에서 비롯되며 둘째는 ASP 웹 디자인 프로세스의 보안 취약점에 있습니다.
1. 액세스 데이터베이스의 저장 위험
ASP+Access Application 시스템에서 액세스 데이터베이스의 스토리지 경로 및 데이터베이스 이름을 얻거나 추측하는 경우 데이터베이스를 로컬로 다운로드 할 수 있습니다. 예를 들어 : 온라인 서점의 액세스 데이터베이스의 경우 사람들은 일반적으로 it book.mdb, store.mdb 등을 지명하며 스토리지 경로는 일반적으로 URL/데이터베이스이거나 단순히 루트 디렉토리 (URL/)에 배치됩니다. 이런 식으로 주소를 입력하기 만하면 URL/Database/Store.mdb 브라우저 주소 표시 줄에 STORE.MDB를 로컬 컴퓨터로 쉽게 다운로드 할 수 있습니다.
2. 액세스 데이터베이스 암호 해독의 숨겨진 위험
액세스 데이터베이스의 암호화 메커니즘은 매우 간단하기 때문에 데이터베이스에 암호 세트가 있어도 암호 해독이 쉽습니다. 데이터베이스 시스템은 고정 키로 사용자가 입력 한 암호를 Xoring하여 암호화 문자열을 형성하고 주소 및 H42에서 *.mdb 파일에서 시작하는 영역에 저장합니다. XOR 작업은 두 개의 XORS 후 원래 값을 복원하여 특징 지어 지므로이 키를 사용하여 두 번째 XOR 작업과 *.MDB 파일의 암호화 문자열을 수행하여 액세스 데이터베이스의 비밀번호를 쉽게 얻을 수 있습니다. 이 원칙에 따라 암호 해독 프로그램을 쉽게 준비 할 수 있습니다.
데이터베이스 비밀번호가 설정되어 있는지 여부에 관계없이 데이터베이스가 다운로드되는 한 정보에는 보안이 없음을 알 수 있습니다.
3. 소스 코드의 보안 위험
ASP 프로그램은 컴파일되지 않은 언어를 사용하기 때문에 프로그램 소스 코드의 보안이 크게 줄어 듭니다. 누구나 사이트에 입력하는 한 소스 코드를 얻을 수있어 ASP 응용 프로그램의 소스 코드가 누출됩니다.
4. 프로그래밍의 안전 위험
ASP 코드는 양식을 사용하여 사용자와 상호 작용하는 기능을 실현하며 해당 콘텐츠는 브라우저 주소 표시 줄에 반영됩니다. 적절한 보안 조치가 채택되지 않은 경우 이러한 내용을 적어두면 확인을 우회하여 특정 페이지로 직접 이동할 수 있습니다. 예를 들어, 브라우저에서 양식 페이지를 통과하지 않고 x = 1 조건을 충족하는 페이지를 직접 입력 할 수 있습니다. 따라서 확인 또는 등록 페이지를 설계 할 때 이러한 문제를 피하기 위해 특별한 조치를 취해야합니다.
액세스 데이터베이스 암호화 메커니즘이 너무 간단하기 때문에 데이터베이스 보안 개선은 ASP+액세스 솔루션의 보안을 향상시키는 데 최우선 과제가되었습니다.
1. 비 전통적인 명명법
데이터베이스가 발견되는 것을 방지하는 쉬운 방법은 액세스 데이터베이스 파일에 복잡하고 비 전통적인 이름을 부여하여 다중 계층 디렉토리에 저장하는 것입니다. 예를 들어, 온라인 서점 데이터베이스 파일의 경우 단순히 Book.mdb 또는 store.mdb의 이름을 지정하지 말고 비 전통적인 이름을 제공하십시오.
FAQ19JHSVZBAL.MDB, 그런 다음 ./AKKJJ16T/KJHGB661/ACD/AVCCX55와 같은 깊은 디렉토리에 넣습니다. 이러한 방식으로 추측을 통해 액세스 데이터베이스 파일 이름을 얻는 불법 액세스 방법을 효과적으로 방지 할 수 있습니다.
2. ODBC 데이터 소스를 사용하십시오
ASP 프로그래밍에서는 ODBC 데이터 소스를 사용하려고 시도하고 프로그램에서 데이터베이스 이름을 직접 작성하지 않아야합니다. 그렇지 않으면 데이터베이스 이름은 ASP 소스 코드와 함께 비밀을 잃게됩니다. 예를 들어:
| dbpath = server.mappath (./ akkjj16t/ KJHGB661/ACD/AVCCX55/FAQ19JHSVZBAL.MDB) Conn.open 드라이버 = {Microsoft Access Driver (*.mdb)}; dbq = & dbpath |
데이터베이스 이름이 아무리 이상하거나 숨겨진 디렉토리가 얼마나 깊지 않더라도 ASP 소스 코드가 손실 된 후 데이터베이스를 쉽게 다운로드 할 수 있습니다. ODBC 데이터 소스를 사용하는 경우 그러한 문제가 없습니다.
conn.open odbc-dsn 이름
ASP 소스 코드 누출을 효과적으로 방지하기 위해 ASP 페이지를 암호화하면 ASP 페이지를 암호화 할 수 있습니다. 일반적으로 ASP 페이지를 암호화하는 두 가지 방법이 있습니다. 하나는 구성 요소 기술을 사용하여 프로그래밍 로직을 DLL에 캡슐화하는 것입니다. 다른 하나는 Microsoft의 스크립트 인코더를 사용하여 ASP 페이지를 암호화하는 것입니다. 저자는 구성 요소 기술을 사용하는 데있어 주요 문제는 각 코드 조각이 구성되어 있어야한다고 생각합니다. 스크립트 인코더를 사용하여 ASP 페이지를 암호화하는 것은 간단하며 결과가 좋습니다.
스크립트 인코더 방법에는 많은 장점이 있습니다.
1.html은 여전히 매우 편집 가능합니다. 스크립트 인코더는 HTML 페이지에 포함 된 ASP 코드 만 암호화하고 다른 부분은 변경되지 않으므로 FrontPage 또는 DreamWeaver와 같은 일반적인 웹 편집 도구를 사용하여 HTML 부품을 수정하고 개선 할 수 있습니다. 그러나 ASP 암호화 부품을 수정할 수 없으며, 그렇지 않으면 파일이 유효하지 않습니다.
2. 간단한 작동. 몇 가지 명령 줄 매개 변수를 마스터하십시오. 스크립트 인코더의 실행 프로그램은 Screnc.exe이며 다음과 같이 사용됩니다.
| Screnc [/s] [/f] [/xl] [/l deflanguage] [/e defextension] inputfile outputfile |
공유 : ASP 최적화 : ASP 성능 향상을위한 몇 가지 최고의 선택 ASP 개발자는 설계 프로젝트에서 더 나은 성능과 확장 성을 얻기 위해 지속적으로 노력하고 있습니다. 다행히도, 이것에 대한 훌륭한 조언을 제공하는 많은 책과 사이트가 있습니다. 그러나 이러한 제안의 기초는 ASP 플랫폼 작업의 구조에서 도출 된 결론입니다.
전체 이전 페이지 12의 2 페이지 다음 페이지