반응형

잡담, 뻘글 5

Quiz: File Vulnerability

Quiz: File Vulnerability | Dreamhack (로그인 필요)  로그인 | Dreamhack dreamhack.io답을 도저히 모르겠어서 https://dreamhack.io/forum/qna/2234 이거 보고 알아냈다.Q3. 파일 다운로드 취약점이 발생하는 코드이다, "filename" 인자에 어떠한 값을 넣어야 현재 실행중인 프로세스의 메모리 정보를 볼 수 있는가? 해당하는 답안을 모두 고르시오.@app.route("/download")def download(): filename = request.args.get("filename") content = open("/data/uploads/" + filename, "rb").read() return content정답..

잡담, 뻘글 2025.02.01

네이버는 검색 결과에 다크 모드를 지원하지 않는다.

요즘 Google, Bing을 써 봤는데 내가 원하지도 않는 인공지능 검색 결과를 강제로 보여주는 게 마음에 들지 않았다. 그래서 Google과 Bing 검색 엔진을 대체할 수 있는 다른 검색 엔진을 찾으려고 했다. 네이버가 그 후보 중 하나여서 들어가봤다. 근데 메인 화면에는 다크 모드를 지원하는데 검색 결과 화면에는 설정 버튼 자체가 없다. 네이버를 자주 이용하진 않았지만 지금까지 네이버가 다크 모드를 지원하는 줄 알았는데 뭔가 속은 느낌이다. Dark Reader 확장 프로그램이 있으니까 다크 모드를 지원 안 해도 상관은 없다. 근데 다크 모드 때문이 아니더라도 검색 결과의 질이 떨어져서 네이버는 쓰지 못 하겠다. 현재는 Yahoo! JAPAN을 써 보고 있다. 가끔 검색 결과가 일본어로 나온다는 ..

잡담, 뻘글 2024.11.30

언어 포팅은 어려운 것 같다.

언어를 옮기려면 포팅하려는 소스 코드 뿐만 아니라 그 언어로 만들어진 라이브러리와 프레임워크 등을 전부 다 끌어와야 한다는 건데, 설령 그렇게 한다고 해도 언어를 포팅하는 의미가 있나 싶다. Python을 C#으로 1대1 포팅하려고 시도할 때 든 생각이다. C#에서도 dynamic keyword를 사용해서 duck typing을 구현할 수 있지만 쓰다 보니 이럴거면 뭐하러 C#으로 옮길까 하는 생각이 들었다. 각 언어에는 그 언어만의 장점이 있는데 1대1 포팅을 하면 언어의 이점을 누리지 못 하게 된다. 결국 프로그램의 논리를 다른 언어로 옮기려면 1대1로 옮기는 건 매우 어렵고, 구현 목적과 주요 API의 기능을 잘 정의하는 것이 중요하다. 코드보단 주석과 문서가 중요해진다.

잡담, 뻘글 2024.11.09

방금 되게 신기한 사실을 깨달았다.

0보다 크고 1보다 작은 유리수 x/y (x,y는 양의 정수이며 x1/2보다 작으면서 1/3보다 큰 수를 만드려면 어떻게 해야 하지?y=4일 때는 불가능하다. 1/4 y=5일 때는 가능하다. 1/2 > 2/5 > 1/3 이기 때문이다.근데... y=6일 때는 불가능하다. 1/6 y=5일 때 가능한 게 y=6일 때는 불가능하다. 수를 5등분할 때는 조건을 만족시킬 수 있지만 6등분을 하면 못 한다.정말 신기하다. 6조각으로 등분한 게 5조각으로 등분한 것보다 더 잘게 쪼개지는 건데, 왜 1/2보다 작으면서 1/3보다 큰 수를 y=5일 때는 만들 수 있고 y=6일 때는 못 만드는 걸까?

잡담, 뻘글 2024.11.04
반응형