Skip to content

기글하드웨어기글하드웨어

인터넷 / 소프트웨어 : 윈도우즈, 리눅스, 기타 운영체제, 각종 어플리케이션, 프로그램, 소프트웨어, 인터넷, 인터넷 서비스에 대한 이야기, 소식, 테스트, 정보를 올리는 게시판입니다.

Extra Form

제가 apk를 만들고 배포했을때
다른 사람이 프로그램을 변조했을때에 대한 걱정인데요.


제가 앱파일을 해싱해서 비교하는 코딩을 해도 어차피
디컴파일해서 그 부분만 수정하면 되는데
그래서 앱을 인증하는 코딩을 많이 해도 어차피 그 부분만 true리턴하게
만들면 끝날꺼 같습니다.


그렇다면 보안프로그램을 이용해서 내 앱 실행 전 
앱파일의 해싱이나 변조 여부를 체크 후 실행하면 될텐데
보안프로그램도 변조하면 그만 아닌가요?
보안프로그램도 변조하고 내 앱도 변조하고요.

 

그래서 궁금한데요
보안프로그램은 자신을 보호하는 기술있는지요?
앱파일의 해싱과 그리고 자신이 메모리에 로드 되었을때
메모리에 있는 코드를 해싱하고 서버에서 버전과 코드의 해싱값이 맞는지
비교하는 기술이 있는지 궁금합니다. 물론 결국 변조하면 그냥 끝나지만요.

 

그래서 제조사는 운영체제를 핸드폰에 설치할때 안전하게 디바이스에 설치해서 판매하고 
미리 안전한 보안을 위해서 권한 획득 여부에 대한 변조는 반드시 못하도록
운영체제를 만들고요. 만약 이걸 지키지 않는다면 보안은 굉장히 취약해질꺼 같아요.

그렇다면 결국 어찌됐던간에 누군가가 모든 권한(메모리에 접근)을 가진거 자체가 문제이므로
모든 권한이 풀린 디바이스는 답이 없는건가요?


그래서 구글은 디바이스에 운영체제를 처음 설치할때 
권한 보호를 위한 가이드를 제공할꺼고
안전한 디바이스는 안전한 앱 마켓을 통해서 배포하고
미리 루팅된 폰(권한이 많은)에서는 돌아갈 수 없게 옵션 처리한것인가요?

 

또한 그리고 윈도우는 어떻게 대비하는지 그리고
이런 것들을 대비할 수 있는 프로젝트(구입해서요) 또는 커뮤니티가 있을까요?



  • profile
    title: AMDKylver      ヾ(*´∀`*)ノ   컴퓨터가 몬가요? 하하하하 2018.11.03 04:58
    타 플랫폼은 모르지만 윈도우쪽은 보통은 난독화를 하지않나요?
  • profile
    title: 폭8Henduino      The Power of Dreams. 2018.11.03 09:20
    말씀의 요지가 그냥 어떻게 막느냐 인거같아서 그 관점에서 설명드리자면,

    1. 앱을 디컴파일하는것은 막을 수 없습니다.
    그냥 classes.dex 까면 나오기는 합니다. 이거때문에 프로텍터 붙이거나 배포버전용은 따로 변수명을 난독화 시켜서 내보냅니다.

    2. 윈도우는 UAC가 반 이상 거릅니다.
    그래서 인증된 인증서가 들어있지 않는 프로그램은 일반 프로그램이라도 알림을 띄워서 확인을 누르게 합니다. 변수명 난독화 구조 난독화등은 기본이구요.

    3. 말씀하신 true값을 전달해서 체크됬다 하는 방법이 가장 많이 쓰이는 우회법입니다(...)
    하지만 이거도 다른 확인작업을 거치게 한다면 우회하는데 시간이 걸리게 할 수 있습니다.

    결론적으로는 완벽한 보안, 뚫리지 않는 앱은 없습니다. 단지 지속적인 유지보수로 그걸 막는거 뿐이지요.
  • ?
    제발청소하자 2018.11.03 09:58
    댓글 감사합니다.
    2번이 정답 같네요
  • ?
    바볼 2018.11.03 11:12
    윈도우 등에서는 코드사이닝으로 보호하기도 합니다. 비대칭 키로 암호화하는 것이죠. 윈도우에서는 x64 드라이버를 신뢰가능한 루트 CA에서 발급한 인증서로 코드사이닝 할 것을 의무화하고 있습니다.
  • ?
    nsys 2018.11.04 04:49
    안드로이드 기준으로

    난독화만 적용 한 경우엔 변수/함수 이름에서 의도가 보이지 않기 때문에, 분석할때 함수 이름만 가지고는 분석 할 수 없고 함수의 내용을 다 일일이 확인 해야 됩니다.
    - 자바를 알면 시간 들이면 분석 가능한 레벨.

    다음 단계로 중요 로직은 C/C++ 라이브러리로 빼는겁니다. 빌드 이후엔 함수 내용이 어셈블리로 되어 있는데다 그 마저도 컴파일러의 기계최적화 때문에 분석하기 어렵습니다.
    - 어셈블리 까지 알아야 분석 가능한 레벨.

    여기서 더? 라이브러리를 암호화 해놨다가 분석하기 어렵게 함수 여러게 타고 수천번 루프타는 코드를 짜고 그 코드로 복호화해서 가지고 있다가 메모리에 올려서 쓰는겁니다.
    - OS 전반적으로 잘 알고 각종 디버깅 과정에 익숙해야 분석 시작 가능한 레벨.

    근데 결국엔 분석이 되긴 된단말이죠. 분석 되면 변조 가능해지고요.
    코드에 대한 보안은 뚫을 방법이 없었던적이 한번도 없었고, 다만 그 뚫는데 들어가는 시간과 비용을 기하급수적으로 늘려서 가성비(?)를 떨어트리게 하는겁니다.
    데누보도 결국엔 뚫렸죠. 요즘엔 의미없을 정도로 많이 줄었지만 예전엔 연단위로 걸렸었죠...

    결국에는 온라인 기능으로 "악의적 사용자"가 쉽게 접근 할 수 없는 외부 서버에서 값의 검증을 하는게 최종이죠...
    초당 요청량이 많지 않으면 받는대로 바로 실시간 검증을 해도 되겠고, 실시간성 요구되면 사용 기록의 사후검증을 할수도 있겠네요.
  • ?
    제발청소하자 2018.11.04 10:37
    ^^ 답변 감사합니다
  • ?
    Minny      Main System : Microsoft Surface Go (Model 1824) Intel® Pentium® Proces... 2018.11.04 22:20
    요즘은 제가 만져보질 않아서 잘 모르겠는데, 예전에 모토로이 시리즈 커스텀 펌웨어 만들때를 생각하면,,,

    일단 기본적으로 코드 난독화로 가독성을 떨어뜨리는건 다 하구요, 대체로 중요 라이브러리는 C/C++로 빼놓고, 그걸 호출하는식으로 해서 사실상 자바쪽은 Call과 View의 역활 정도만 처리하는 방식을 씁니다. 대체로 요정도 까지만 처리를 하고,,, 인증과 관련된 부분은 사실 단독으로는 불가능하고, DB로 인증서버 하나 구축해서 처리는 방식이 가장 간단하면서 가장 효과적인 방법입니다... 물론 이것도 결국 어셈블리 분석이 가능하다면 뚤리기야 하겠지마는...
  • ?
    연서기 2018.11.06 17:35
    다른방법으로는 함수, 변수명을 꼬아놓는것도 방법입니다.
    단순히 난독화가 아니구요.

    예를들어 로그인이라면 GetUserId, 이렇게 사용하는것을 GetUserPassword 로 바꿔버리면

    대놓고 써있는데 당연히 패스워드라고 생각하고 작업할겁니다. 이렇게 착실히 적어논걸 의심할리 없죠.

    하지만 모듈갔다쓰면 에러 뿜뿜.

작성된지 4주일이 지난 글에는 새 코멘트를 달 수 없습니다.


  1. No Image

    코인베이스, 도지코인의 선물 거래를 미국에 신청

    가상화폐 거래소인 코인베이스가 도지코인, 라이트코인, 비트코인 캐시의 미국 정부 규제 선물 거래를 미국 삼품선물거래위원회 CFTC에 신청했습니다. 신청일은 3월 7일이며 CFTC가 거부하지 않는 한 선물 거래는 4월 1일부터 시작됩니다.
    Date2024.03.23 소식 By낄낄 Reply1 Views481
    Read More
  2. 어도비 서브스탠스 3D, 생성 AI 기능 추가

    어도비 서브스탠스 3D에 생성 AI 기능이 추가됐습니다. 이건 문장 입력으로 생성된 3D 오브젝트 텍스처입니다. 이건 배경 생성 기능으로 만든 이미지입니다. 3D 오브젝트가 정말 저 위치에 있는 것처럼 보이는 이미지를 문장 입력만드로 ...
    Date2024.03.22 소식 By낄낄 Reply0 Views397 file
    Read More
  3. No Image

    중국 가상화폐 투자자, 2023년에만 11억 5천만 달러의 수익 창출

    중국의 가상화폐 투자자가 2023년에만 11억 5천만 달러의 수익을 냈다고 합니다. 미국, 영국, 베트남에 이어 세계 4위입니다. 중국 정부가 가상화폐 거래를 금지하고 있지만, 중국에서 뭐 그런거 지켜가면서 돈을 벌겠나요.
    Date2024.03.22 소식 By낄낄 Reply0 Views453
    Read More
  4. 애플의 멀티모달 대규모 언어 모델, MM1

    애플이 멀티모달 대규모 언어 모델인 MM1의 논문을 공개했습니다. 최대 300억 패러미터의 LLM과 70억 패러미터의 MoE(Mixture-of-Experts)을 쓸 수 있습니다. 고성능 멀티모달 대규모 언어 모델을 구축하면서 사전 학습이나 알고리즘 설계...
    Date2024.03.22 소식 By낄낄 Reply0 Views630 file
    Read More
  5. No Image

    타오바오 모바일 주소 pc 주소 변환

    타오바오 모바일 링크는 PC 웹으로 이동해도 PC 웹으로 변경되지 않고 모바일 웹으로 유지되더군요.   그래서 모바일 링크 - PC 링크로 변환해주는 사이트들이 있긴 한데...   https://taobaotools.github.io/   모바일 주소를 변환하면 ...
    Date2024.03.22 질문 By투명드래곤 Reply2 Views449
    Read More
  6. No Image

    AcidPour, 러시아가 만든 새로운 사이버 무기

    우크라이나에서 데이터 와이퍼인 AcidRain의 변종인 AcidPour가 발견되었습니다.   이 AcidPour나 AcidRain에 감염되면 라우터나 위성 모뎀의 펌웨어를 날려버리는 걸로 악명 높습니다. 실제로 2022년 미국 Viasat의 약 만개 이하의 위성 ...
    Date2024.03.22 소식 Bytitle: 폭8책읽는달팽 Reply5 Views762
    Read More
  7. No Image

    몬테레그로 검찰청 권도형 한국행 불복

    몬테레그로 검찰은 법무부장관이 고유권한인 송환국 결정을 하급심 법원이 결정 하여 법령을 위반했으며 대법원에서 최종판결을 가리게 되었습니다    기각되면 한국행 인용되면 다시 가려야 하나 법무부장관은 미국행을 원한다고 합니다
    Date2024.03.22 소식 Bytitle: 명사수툴라 Reply8 Views882
    Read More
  8. No Image

    세계 3위 이통사 텔레포니카 "이제 망사용료 합의 도출할 때"

    글로벌 통신사들은 구글이나 넷플릭스와 같은 글로벌 콘텐츠 사업자들이 망사용료를 부담해야한다고 입을 모으고 있습니다. 특히 스페인 최대 이통사 텔레포니카는 이제 망사용료 관련 합의를 도출하고 싶다며 강한 의지를 드러냈는데요. ...
    Date2024.03.22 소식 By낄낄 Reply9 Views1078
    Read More
  9. Rufus로 32GB 이상 USB FAT32로 포맷하기

    윈도우 자체 디스크 포맷에서는 32GB 보다 큰 용량의 USB를 FAT32로 포맷할 수 없습니다.   리눅스 컴퓨터 같은게 있다면 거기서 포맷해오는 방법도 있겠지만 그렇지 않다면 USB 하나 포맷하자고 OS를 새로 설치하기엔 배보다 배꼽이 더 ...
    Date2024.03.21 일반 ByYukirena Reply7 Views748 file
    Read More
  10. 농어촌 NR 국내 로밍 보도자료 정리

    [참고] * 이 정책은 읍/면 지역에 한정됩니다. 시범지역 표시에서 전체라고 되어 있으면 전체 읍/면을 의미하는 겁니다. 예로 평택시 전체라고 해서 비전동 동삭동 고덕동 포함되는 것 아닙니다. 과기정통부, 농어촌 5세대 이동통신(5G) ...
    Date2024.03.21 소식 Bytitle: 컴맹임시닉네임 Reply9 Views533 file
    Read More
  11. No Image

    애플, KISA Root CA 인증 철회.

    2차 출처: https://twitter.com/kid1ng/status/1770459410688790794   ------------------------------------------------   애플이 KISA(그 알고있는 KISA 맞습니다.) 의 Root CA 1 인증을 철회 했습니다.   해당 인증서는 CA 제공자가 ...
    Date2024.03.21 소식 Bytitle: 가난한카토메구미 Reply10 Views1783
    Read More
  12. No Image

    '테라·루나' 권도형, 한국 송환 최종 확정

    '테라·루나' 사태의 핵심 인물 권도형 씨의 한국 송환이 최종 확정됐습니다. 몬테네그로 항소법원은 현지시간 20일 권 씨 변호인 측의 항소를 기각하고 한국 송환을 결정한 포드고리차 고등법원의 판단을 확정했다고 밝혔...
    Date2024.03.21 소식 By낄낄 Reply10 Views661
    Read More
  13. No Image

    xAI, Grok을 오픈 소스로 공개

    일론 머스크의 AI 회사인 xAI 만든 AI, Grok이 오픈 소스로 공개됐습니다. 용량은 318GB이며 필터링 처리가 되어 있지 않아 마음대로 활용이 가능합니다. 성능은 GPT-3.5보다 조금 더 나은 수준입니다.
    Date2024.03.20 소식 By낄낄 Reply1 Views628
    Read More
  14. 구글 'DeepMind(딥마인드)' 공동 창업자, 마이크로소프트 'AI(인공지능)'로 합류 발표

    ▶ 마이크로소프트, 구글 'DeepMind(딥마인드)' 공동 창업자를 '마이크로소프트 AI(CEO)'로 합류 - 전임 구글 'DeepMind(딥마인드)' 공동 창업자 : 무스타파 술레이만(Mustafa Suleyman) - 마이크로소프트의 합류 이후 직함 : '마이크로소...
    Date2024.03.20 소식 By블레이더영혼 Reply1 Views635 file
    Read More
  15. No Image

    YouTube, '사실적인' AI 생성 동영상에 대한 새로운 규칙 제시

      YouTube AI 비디오 규칙: YouTube는 인공지능으로 만들어진 비디오에 대한 새로운 규칙을 발표했습니다. 실제와 유사하게 보이는 인공지능 비디오를 업로드하는 사용자는 투명성을 위해 비디오에 라벨을 붙여야 합니다.   라벨 요구사항...
    Date2024.03.20 소식 Bytitle: AI아무개 Reply5 Views612
    Read More
목록
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 11 ... 577 Next
/ 577

최근 코멘트 30개

더함
MSI 코리아
한미마이크로닉스
AMD

공지사항        사이트 약관        개인정보취급방침       신고와 건의


기글하드웨어는 2006년 6월 28일에 개설된 컴퓨터, 하드웨어, 모바일, 스마트폰, 게임, 소프트웨어, 디지털 카메라 관련 뉴스와 정보, 사용기를 공유하는 커뮤니티 사이트입니다.
개인 정보 보호, 개인 및 단체의 권리 침해, 사이트 운영, 관리, 제휴와 광고 관련 문의는 이메일로 보내주세요. 관리자 이메일

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소