728x90

https://github.com/laravel/framework/pull/25408#issuecomment-418123476


보안 관련 문제로 인해 블레이드 템플릿의 @lang 지시어가 패치되었다고 한다.


기존에는 @lang("main.welcome") 과 같이 사용하면 다국어 설정의 HTML 태그들이 렌더되어 출력되었는데,


최근 버전(정확한 버전은 모르고 개인적으로 5.5.42 부터 확인했음)에서는 태그들이 그대로 출력된다.


XSS 관련 이슈이며, 이후에도 롤백되지 않을것이라고 한다.


대안은 trans(or __) 함수로, {!! __("main.welcome") !!} 와 같이 사용해야 한다.



새로 배포한 사이트 메인에 태그가 다 보여서 개당황...


@lang으로 HTML포함된 문자열을 많이 가지고 있다면 당연히 전부 찾아서 바꿔줘야 한다.

  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기