Luv{Flag}
보호되어 있는 글입니다. 내용을 보시려면 비밀번호를 입력해주세요.
article thumbnail
[Docker] 도커 컨테이너에서 python print() 를 출력하지 않을때
ETC 2024. 5. 25. 01:19

요즘 CTF 나 워게임에서 감사하게도 도커파일까지 주는 경우가 많다.기왕받은 도커파일을 잘 활용하여 취약점 분석에 도움이 되기 위해 값을 직접 찍어본다던지, 중간중간 로그들을 출력하여 payload에 대한 값을 찍어보며 문제를 푸는경우가 많아졌다.  주어진 소스코드가 node.js 파일인 경우 console.log 로 간단하게 값을 출력하고PHP인 경우 echo로 간단하게 변수값을 확인해 볼 수 있다.그런데 python의 flask / fast api / Django 등 으로 빌드된  서버의 경우 print 로 값을 확인해 보려 하지만 뜻대로 도커에서 출력되지 않아 굉장히 답답했던 경험이 있다.  flush = True간단한 해결방법은 print의 flush옵션을 true로 설정해 주는 것이다.print..

보호되어 있는 글입니다. 내용을 보시려면 비밀번호를 입력해주세요.
보호되어 있는 글입니다. 내용을 보시려면 비밀번호를 입력해주세요.
toLowerCase(), toUpperCase() 유니코드 우회
Web/Website security 2024. 4. 2. 06:01

이해를 돕기 위해 아래에 극단적인 코드 예시를 가져왔다. app.post('/login',function(req,resp){ var id = req.body.id if (id.toLowerCase()!=='hiroo' && id.toUpperCase() === "HIROO") { res.render('alert',{contents:'hello admin!',red:'/admin'}) } } 언뜻 보기엔 말이 되지 않는 코드, 통과할 수 없는 if 문 이지만, 이는 얼마든지 우회, 통과가 가능하다. toLowerCase(), toUpperCase() 함수를 사용하여 비교구문을 작성할때, 예상치 못한 결과가 도출될 수 있음에 주의하자. Javascript(혹은 여타 언어) 의 toLowerCase(), to..

보호되어 있는 글입니다. 내용을 보시려면 비밀번호를 입력해주세요.
보호되어 있는 글입니다. 내용을 보시려면 비밀번호를 입력해주세요.
보호되어 있는 글입니다. 내용을 보시려면 비밀번호를 입력해주세요.

검색 태그

loading