XXE Injection 취약점을 효과적으로 방어하기 위한 핵심 보안 대책은 무엇일까요? 답) XML 파서에서 외부 엔티티 및 DTD 처리 기능 비활성화 문제가 이런식으로 되어있고, 답이 외부 엔티티 참조 기능 비활성화인데 왜 그런지 이해가 되질 않습니다. XXE Injection 취약점을 효과적으로 방어하는 것은 XML 데이터 형식을 JSON 으로 변경하거나 서비스가 불필요한 경우 XML Parsing 기능을 제거하는 것이 가장 효과적인게 아닌가요? 만약 아니라면 외부 개체 참조 기능을 비활성화 하는것이 가장 효과적이란 것이고, 그렇다면 단순히 소스 코드에서 외부 개체 참조 기능을 비활성화만 하면 되는데 왜 굳이 JSON 형식으로 변환하는 등의 대응 방안이 추가로 제시되는 건가요?? 개발자 입장에선 데이터 포맷을 XML 에서 JSON 으로 변경하는 것보다 코드 1~2줄 추가하는 것이 더 간단하지 않나요?? 아니면 시스템 운영 상황에 따라 외부 엔티티 참조 기능을 비활성화를하지 못하는 경우가 따로 있는걸까요?? 만약, 그렇다면 혹시 예시도 함께 들어주실 수 있을까요?? 질문이 너무 난잡하지만 요약하면 아래와 같습니다. 효과적인 대응 방안이 왜 외부 엔티티 참조 기능 비활성화 인지 만약 그렇다면 어째서 간단하고 효과적인 대응 방안(외부 엔티티 참조 기능 비활성화)이 있는데 굳이 더 복잡한 대응 방안인 JSON 형식으로 변환하는 등의 추가적인 대응 방안이 제시되는지 외부 엔티티 참조 기능을 비활성화 했을때 운영중인 서비스에 문제가 가는 경우도 있는지 만약 그렇다면 예시도 함께 들어주실 수 있는지 긴 질문 읽어주셔서 감사합니다.
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] Settings -> Build, Execution, Deployment -> Gradle에서 기존의 Gradle 둘 모두 IntelliJ IDEA로 변경한 후, SpringBootApplication이 실행되지 않습니다... 이유가 뭔지 궁금해서 이렇게 질문드립니다! 아래 사진은 저의 인텔리제이 콘솔에 출력된 에러 로그 및 build.gradle 입니다. plugins { id 'java' id 'war' id 'org.springframework.boot' version '3.5.4' id 'io.spring.dependency-management' version '1.1.7' } group = 'hello' version = '0.0.1-SNAPSHOT' description = 'Demo project for Spring Boot' java { toolchain { languageVersion = JavaLanguageVersion.of(24) } } configurations { compileOnly { extendsFrom annotationProcessor } } repositories { mavenCentral() } dependencies { implementation 'org.springframework.boot:spring-boot-starter-web' compileOnly 'org.projectlombok:lombok' annotationProcessor 'org.projectlombok:lombok' providedRuntime 'org.springframework.boot:spring-boot-starter-tomcat' testImplementation 'org.springframework.boot:spring-boot-starter-test' testRuntimeOnly 'org.junit.platform:junit-platform-launcher' } tasks.named('test') { useJUnitPlatform() }
김영한의 실전 데이터베이스 입문 - 모든 IT인을 위한 SQL 첫걸음(SQL부터 차근차근)
ifnull(인자1, 인자2) 은 인자1이 null이면 인자2를 값으로 사용한다고 설명하셨는데요. 이것을 보고 생각나는 것이 테이블 생성시에 필드에 지정하는 default 가 생각나는데요. 이 default도 필드 값이 null이면 지정한 default값을 사용하는데 그렇다면 ifnull()과 default의 차이점은 뭔가요? 당장 제 수준에서 생각나는건 ifnull()은 매 쿼리 작성할때 기본값을 유연하게 변경할 수 있다? 이정도일 것 같은데 이것말고 특별한 차이점 같은 것이 있을까요?
안녕하세요. 준형님. 강의와는 조금 벗어나는 얘기라서 답변을 해주시지 않아도 괜찮습니다.! 복제를 구성하는 경우 복제 지연에 대해서 고민을 하게 되었는데, 마땅한 대안을 내지 못해서 이렇게 질문드리게 되었습니다. 혹시 실무에서나 일반적으로 복제 지연을 대응(해결)하기 위한 해결책에는 어떤것이 있을까요...???
AWS 공인 클라우드 전문가(CLF-C02) 시험은 클라우드 컴퓨팅의 탄탄한 기반을 구축하고자 하는 사람들에게 필수적인 자격증입니다. AWS 클라우드 개념, 핵심 서비스, 가격 및 보안에 대한 응시자의 이해를 검증하여 기술 전문가 및 비기술 전문가 모두에게 적합합니다. 특히 클라우드 여정을 시작하는 초보자에게 유용한 이 자격증은 고급 AWS 자격증 취득을 위한 명확한 시작점을 제공하기 때문입니다. 오늘날의 디지털 환경에서 기업들은 확장성, 효율성 및 비용 절감을 위해 클라우드 기술에 점점 더 의존하고 있습니다. CLF-C02 자격증을 취득하면 클라우드 활용 능력을 입증하여 신뢰도를 높이고 취업 기회를 넓힐 수 있습니다. 또한 AWS 솔루션 관련 비즈니스 의사 결정에 기여하는 데에도 도움이 됩니다. 효과적인 준비를 위해서는 최신의 신뢰할 수 있는 학습 자료를 활용하는 것이 중요합니다. Pass4success와 같은 플랫폼은 포괄적인 서비스를 제공합니다. CLF-C02 연습 시험 실제 시험 상황을 시뮬레이션한 학습 자료를 제공하여 응시자가 자신감을 키우고 첫 시도에서 성공할 수 있도록 돕습니다.
안녕하세요. 강의 잘 듣고 있습니다. ADC 변환 단계 설명자료에서 8bit는 step이 256이라고 되어 있습니다. 그런데, 8비트는 0~255로 2^8-1 = 255. 3.3V / 255 = 약 12.94mV로 계산되는 것이 맞지 않나 싶어서 문의드립니다. 10비트 = 1024-1, 12비트 = 4096-1, 16비트 = 65536-1 로 마찬가지입니다. 확인 부탁드립니다. 감사합니다.
안녕하세요 강사님 main 브랜치를 최상위 브랜치로 놓고 거기서 하위 브랜치인 dev 브랜치가 나오고 dev 브랜치에서 이걸 상위 브랜치로 갖는 다른 브랜치를 만드는 방법이 있나요? 로컬에서 여기서 설정 하는 거 말고 혹시 다른 방법이 있나요? 여기서 만들고 계속 동기화해서 올리고 있습니다.
TOdo List 라는 툴도 설명해주셔서 감사드립니다. AI 가 생각보다 멍청하다 라는 말이 인상깊었는데요. 제가 궁금한 건 TODO List 를 작성해야하는 이유는 우리가 개발을 하다가 다시 다음 날 한다고 했을때, TODO List 를 설명하지 않고, 기억하고 있겠지 ? 라고 하면서 그대로 진행하는 것보다는 TODO List 로 한번 상기시켜주는 것이 좋다 라고 해석하면 될까요 ? 제가 아마 잘 못 따라간 것 같은데, 정확히 언제 쓰는게 맞는건지 조금만 더 구체적으로 설명해주시면 감사드리겠습니다.
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 안녕하세요~ 문제와 풀이2의 문제2(모든 상품 옵션 조합에 재질 추가하기)에서 선생님 실행 결과가 (사이즈) S -> M -> L -> XL 순서로 나오던데요, 제 생각에는 기본 문자열 정렬이라면 L -> M -> S -> XL 순서가 맞는 것 아닌가요? 혹시 제가 놓친 부분이 있을까요?