이상을 꿈꾸는 몽상가.. 프로그래밍을 좋아함..


  • Weekly IT News 2025년 3월 첫째주


    1. GraphQL 소식
    2. Cloud & Infrastructure
    3. Database
    4. Security
    5. Java


  • 사이버 범죄 신고 텔레그램 봇


    요새 갑작스럽게 모르는 사람이 텔레그램 그룹방에 초대하는 일이 잦아졌습니다.
    수천~수만명이 모여있는 그룹방인데 몇명이 주식이야기를 하고 몇명이 바람을 잡는 느낌의 스캠성 방도 있었고
    동영상을 보고 마지막 장면을 캡쳐해서 올리면 2만원을 주겠다는 악성 프로그램을 심으려는 시도로 보이는 건도 있었습니다.

    이런 것을 수차례 반복시도하다보면 어쩌다가 낚이는 사람들이 있으니 계속 시도하는 것일텐데 신고된 케이스에 대해서 또 낚이는 케이스가 발생하지 않도록 도움을 주기 위해 생각해봅니다.

    보호 전략

    대화방 구성원 리스트 체크 후 위험여부 알림

    봇을 대화방에 초대하면 구성원들에 대해 다른 대화방에서의 신고상태를 파악하여 위험한 구성원이 있는지 알려 줌

    접수단계부터 주의 알림

    의심신고접수, 범죄신고접수가 이뤄지고 오(wrong)신고 인지 분류할 것임 (더 나아가서는 경찰 같은 각 국가별 공식기관으로부터 확정을 받으면 좋겠음) 이 과정을 진행하는데 시간이 걸리고 그로인해 효력이 크게 줄어 들수 있음

    • 접수 단계의 신고 건들도 최근 몇건의 신고 접수가 이뤄진 계정인지 공유해줌
    • 신고된 내역들을 공개해도 되는지 공개하려면 어느정도의 내용을 포함시켜야하는지 검토 필요

    비즈니스 모델

    광고 비지니스 모델

    신고되는 건수가 많아지면 보관해야하는 데이터가 많아져서 스토리지 비용 커지게 되고 초대되는 대화방이 많아진다면 감시해야하는 대화방 수가 많아져서 컴퓨팅 비용이 커지게 됨

    새로운 초대, 참여자 추가 등이 이뤄지더라도 비용적인 이슈로 현실적으로 실시간 처리가 불가능하니 그룹방 리스트를 관리하고 주기적으로 각 그룹방들을 체크해야함

    봇이 초대된 이후 사용자에게 제공해야할 메시지는 크게 안전함, 위험함 으로 두 종류임

    위험함 만 제공된다면 사용자에게는 현재 이 대화방이 위험성 체크가 이뤄졌는지 알수가 없으므로 특정 시점에 따라 주기적으로 안전함 메시지를 제공해야함

    • 봇이 초대된 시점 모든 참여자 체크
    • 새로운 멤버가 참여시 모든 참여자 체크
    • 구성원간의 대화가 이뤄지는 방에 대해서 주기적(1일? 1주일?)으로 모든 참여자 체크 (구성원의 위험도가 변경된 케이스 체크)

    안전함 메시지를 제공시 너무 딱딱하게 제공하는 것보다는 가벼운 느낌으로 전달하는 것이 좋아보이며 이 때 광고를 함께 제공

    부가 기능

    다국어 지원

    • 기존 대화방 목록을 확인해서 대화방별 지원해야할 언어 확인
    • 사용자가 지원 언어 가능하도록 처리
    • 명령어도 다국어로 지원하면 좋을 듯

    TODO

    텔레그램 봇 특성 확인

    • 그룹방의 일반 구성원이 봇을 초대할 수 있는지 확인 필요
    • 텔레그램내에서 유니크하게 식별가능한 그룹방의 구성원 목록을 봇이 조회할 수 있는지 확인 필요
    • 그룹방의 대화 내용을 봇이 조회할 수 있는지 확인 필요
      • 사용자명, 사용자 이름, 프로필 사진, 보낸 메시지 확인 가능
    • 봇의 개인정보 모드 (privacy mode)
      • https://www.telegram.pe.kr/bbs/board.php?bo_table=faq&wr_id=21&sca=%EB%B4%87
      • https://core.telegram.org/bots#privacy-mode

    텔레그램에서 공식적으로 제공하는 광고수익 모델이 있는지 확인

    • 1000명 이상의 채널 소유자는 채널에 광고를 표시할 수 있음 (50% 보상) - 사용불가
    • TON 기반 광고

    텔레그램 광고는 다른 앱의 광고와 매우 다릅니다. 그것들은 오직 대규모 공개 채널에서만 표시됩니다. 당신의 대화, 대화 목록 또는 다른 인터페이스에서는 절대 나타나지 않습니다. 텔레그램 광고는 사용자 데이터를 기반으로 하지 않습니다. 그것들은 오직 당신이 보는 채널에만 의존하며, 직접적으로 채널 소유자에게 혜택을 줍니다. 출처 : https://telegram.org/blog/monetization-for-channels/ko

    봇이 신고 당할 가능성

    • 아무런 이유로 신고당하면 선제재 후 해명 및 제재해제 방식으로 진행될까?
    • 커스텀 광고 : 공식 광고가 아닌 링크/이미지를 올려서 직접 광고를 노출하는 경우 신고 당할 수 있을까?
    • 저작권 : https://www.telegram.pe.kr/bbs/board.php?bo_table=faq&wr_id=74

    사이버 범죄 종류 확인

    • 스캠(Scam) : “신용 사기”를 뜻합니다. 가상자산 업계에서는 “수익률 수십 배, 미래 가치 수단, 몇몇 사람만 알려주는 정보” 등 사실과 다른 달콤한 말로 투자를 권유하고 돈을 받으면 잠적하는 행위를 지칭하는 단어로 쓰입니다.
    • 피싱(Phishing) : 가짜 금융기관 웹사이트나 위장 메일을 이용해서 개인 인증번호나 신용카드 정보, 계좌 정보 등을 불법적으로 알아내는 사이버 범죄를 의미한다.

    텔레그램 다계정 생성 가능여부

    특정 계정이 제재 계정으로 분류된다고 하더라도 새로운 계쩡을 생성해서 시도하면 효력이 크게 줄어들 수 있으므로 이에 대한 대응 방안이 필요함

    • 텔레그램에서 전화번호 외의 인증 방식이 있는지 확인 필요
    • 범죄를 이용해서 얻는 수익이 크다면 전화번호를 추가로 만드는 것은 어렵지 않을 수 있음
    • 가상 전화번호로 가입 가능해보임
      • TextNow 앱 활용 - https://dream.jinykimkim.com/information/%ED%85%94%EB%A0%88%EA%B7%B8%EB%9E%A8-%EA%B0%80%EC%83%81-%EC%A0%84%ED%99%94%EB%B2%88%ED%98%B8/


  • JWT 에 대한 경험담


    JWT Logo
    (이미지 출처 : https://jwt.io)

    JWT(JSON Web Token) 를 사용한 인증처리를 갖춘 시스템들을 구축해보면서 기억에 남았던 것들을 적어보겠습니다.
    JWT에 대한 기본적인 설명들은 다른 곳에서도 쉽게 접할 수 있으니 생략하도록 하겠습니다.



  • Unity Bricks Breaker 에셋 설치하기


    Brick Breaker
    (이미지 출처 : https://assetstore.unity.com/)

    Brick Breaker 라는 에셋을 구매했는데 설치과정에서 삽질을 좀 많이 했습니다.
    유니티 설치해본지도 2주 밖에 되지 않아서 기본 배경지식도 부족하고 첫 에셋 설치라 그런지 더 삽질을 하지 않았나 싶습니다.

    다른 분들과 나중에 또 설치할지 모를 미래의 저를 위해 기록을 남기고자 합니다.

    문제점을 간략하게 설명하면 다른 에셋과 의존관계 때문입니다.

    This package requires an external plug-in. Refer to the Guide documentation included in the package. This asset uses the free DOTween / JSON .NET For Unity / spine-unity Unity 3.8 package asset.

    가장 먼저 부딪힌 어렴움은 overview를 읽지 않고 진행했다는 점이었고 그 다음부터 겪은 어려움들을 적어보겠습니다.



  • HammerSpoon을 이용한 macOS 장비 세팅


    HammerSpoon Logo
    ( 이미지 출처 : https://www.hammerspoon.org/ )

    Windows , Ubuntu 환경에 익숙하던 사용자로써 MacOS 를 처음 사용하며 겪은 어려움, 찾아낸 HammerSpoon이라는 해결법 그리고 숨겨진 장점 등을 소개합니다.
    그리고 제 개인적으로 사용하는 hammerspoon-config를 공유하며 단축키를 설명합니다.



  • LoadBalancer 관련 GCP 트러블슈팅


    GCP Load-Balancing
    (이미지 출처 : https://cloud.google.com)

    GCP를 이용해서 프로젝트를 진행하면서 겪은 트러블슈팅 중 load-balancer 와 과련된 건들을 공유합니다.



  • Git CLI 개인환경 설정


    Git
    ( 이미지 출처 : https://git-scm.com )

    git-cli 세팅 후 필요한 개인적인 환경설정 작업들을 기술합니다.



  • Windows WSL2를 이용한 Ubuntu, Docker, Kubernetes 환경구성


    wsl teminal
    ( 이미지 출처 : https://docs.microsoft.com )

    Windows 환경에서 Ubuntu를 사용하기 위한 WSL 세팅 후 필요한 개인적인 환경설정 작업들을 기술 합니다.



  • Docker 빌드 성능 개선 : dockerignore, node_modules


    Docker Logo
    (이미지 출처 : https://www.docker.com)

    “도커 빌드가 예전에는 빨랐는데.. 요즘 왜 이렇게 느리지?” 라는 생각이 드신다면 이 글이 도움이 될 수 있습니다.



  • 프로그래밍하면서 유용한 사이트


    프로그래밍하면서 유용하게 자주 사용하는 사이트들을 기록해 나갈 예정입니다.