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. 가상화폐 채굴업자 137곳이 미국 전체 전력의 2.3%를 사용

    미국 에너지 정보청 EIA가 발표한 가상화폐 채굴과 전력 사용량의 보고서입니다. 2024년 1월 기준으로 137개의 가상화폐 채굴장을 식별했는데, 이곳이 미국 전체 전력 사용량의 0.6~2.3%를 소모한다고 합니다. 좀 다르게 표기하면, 미국의...
    Date2024.02.10 소식 By낄낄 Reply8 Views1156 file
    Read More
  2. 윈도우 11 인사이더 프리뷰 빌드 26052의 변경점

    윈도우 11 인사이더 프리뷰 빌드 26052의 변경점입니다. 우선 Sudo 명령어를 쓸 수 있게 됐습니다. 설정-시스템-개발자로 이동헤 sudo 명령을 켜야 쓸 수 있습니다. 블루투스 LE를 사용하는 보청기 지원이 강화됐습니다. 빠른 설정 UI에서...
    Date2024.02.10 소식 By낄낄 Reply2 Views772 file
    Read More
  3. 애플 연구팀, 자연어 기반 이미지 편집 오픈 소스 AI 모델 출시

    애플과 캘리포니아 주립대학 연구팀이 자연어 기반으로 이미지 편집이 가능한 오픈 소스 AI 모델인 MGIE(MLLM-Guided Image Editing)을 출시했습니다. 밝기, 대비, 선명도, 스케치 효과 적용, 이미지의 특정 영역이나 오브젝트의 모양/크...
    Date2024.02.10 소식 By낄낄 Reply1 Views464 file
    Read More
  4. No Image

    보안 업계 종사자가 애플 툴을 악용해 돈을 훔침

    노아 로스킨-프레지라는 사람이 캘리포니아주 쿠퍼티노에 위치한 A 회사의 기프트 카드를 사용해 앱스토어에서 파이널 컷 프로를 구입했습니다. 회사 A라고만 썼지만 누가 봐도 애플이죠. 그리고 비밀번호 재설정 툴을 사용해 애플에 고객...
    Date2024.02.10 소식 By낄낄 Reply1 Views539
    Read More
  5. AMD, 리눅스에 RDNA4 GPU 패치를 추가

    AMD가 리눅스에 RDNA4 GPU 패치를 추가했습니다. 새로운 IP 블럭, 데이터 관리와 내부 통신을 위한 ATHUB 4.1, LSDMA 7.0, IH 7.0, HDP 7.0 등이 포함됩니다. 이것만 가지고선 RDNA4가 어떤 식으로 나올지는 알지 못하고, 새로운 GPU가 ...
    Date2024.02.09 소식 By낄낄 Reply0 Views391 file
    Read More
  6. 클리어 리눅스에서 APX, AVX10을 지원

    클리어 리눅스에서 APX와 AVX10 컴파일 바이너리가 추가됩니다. APX와 AVX10은 인텔이 올해 말에 출시할 그래닛 래피드에서 지원하는 새 명령어입니다. APX는 범용 레지스터를 16개에서 32개로 늘려 로드와 스토어 부담을 줄여줍니다.
    Date2024.02.09 소식 By낄낄 Reply0 Views439 file
    Read More
  7. MS, 기습적으로 윈도 11 인사이더에 sudo 명령어 삽입

    sudo 설명은 이걸로 땡합니다.   여하튼, 지금은 삭제된 포스트에서 윈도 11 인사이더 프로그램에 sudo가 들어갔습니다. 빌드번호는 26052 입니다. 현재 퍼블릭은 26040이구요.   윈도에서 관리자 얻기는 여러 방법이 있지만, 리눅스같은...
    Date2024.02.09 소식 Bytitle: 폭8책읽는달팽 Reply13 Views1588 file
    Read More
  8. No Image

    Autodesk 창립자 존 워커 별세

    AutoCAD 등으로 유명한 Autodesk의 창립자 John Walker께서 세상을 떠나셨습니다. 고인의 명복을 빕니다.
    Date2024.02.09 소식 By헥사곤윈 Reply3 Views596
    Read More
  9. No Image

    ASUSTOR NAS, 심각한 취약점 발견

    ASUSTOR의 제품에서 심각한 취약점이 발견됐습니다. 이를 악용하면 이 회사 NAS의 운영체제인 ADM에서 악성 코드를 설치하고 권한을 높일 수 있다고 합니다. ASUSTOR은 비밀번호 변경, 강력한 비밀번호 사용, http/https 포트 변경, 사용...
    Date2024.02.09 소식 By낄낄 Reply2 Views668
    Read More
  10. MS, AI 정확성과 개인 정보 보호 문제를 해결하는 AI 컨트롤러 인터페이스 발표

    마이크로소프트가 대규모 언어 모델의 출력 제어를 쉽게 도와주는 AI 컨트롤러 인터페이스(AICI)를 발표했습니다. LLM이 생성하는 컨텐츠 정확도를 높이고, 프롬프트 기반 프로그램 인터페이스를 통해 사용자 코드와 LLM 출력 생성을 통합...
    Date2024.02.09 소식 By낄낄 Reply2 Views349 file
    Read More
  11. No Image

    구글, 바드, 제미나이로 명칭 변경, 새로운 앱 제공

    구글은 바드를 통해 이용자들이 AI 모델에 직접 액세스할 수 있도록 노력하고 있으며, 여기서 제미나이는 구글의 가장 유능한 AI 모델군입니다. 이러한 점을 반영하여 이제 ‘바드’는 ‘제미나이’가 됩니다. 오늘부...
    Date2024.02.09 소식 By낄낄 Reply3 Views445
    Read More
  12. No Image

    지포스 551.46 핫픽스 드라이버, 미세한 끊김 현상 수정

    지포스 551.46 핫픽스 드라이버가 나왔습니다. 551.23을 기반으로 하여 수직 동기화를 켰을 때 발생하는 미세한 끊김 현상, 웹브라우저 스크롤 시 생기는 끊김 현상, 옵티머스 노트북의 끊김 현상, 게임 안정성 문제를 해결했습니다.
    Date2024.02.09 소식 By낄낄 Reply1 Views398
    Read More
  13. No Image

    블렌더 4.1 베타, AMD RNDA3 내장 그래픽 지원

    블렌더 4.1 베타 버전이 나왔습니다. 이제 OpenImageDenoise GPU 가속을 AMD RDNA2, RDNA3 그래픽에서 쓸 수 있습니다. 내장 그래픽에서도 쓸 수 있습니다. 또 NVIDIA GTX 16xx, 타이탄 V, 모든 RTX 시리즈 GPU에서도 가능합니다. RDNA3 A...
    Date2024.02.09 소식 By낄낄 Reply0 Views238
    Read More
  14. No Image

    라즈베리 파이 피코로 쉽게 비트락커 깨기

    Bitlocker 이야기를 먼저 해야 겠군요. 윈도 프로 이상으로 설치되는 디스크 암호화 소프트웨어입니다. XTS-AES 모드로 암호화(FIPS 인증)을 수행합니다.     그런데, 여기 아주 친절하게 비트락커를 라즈베리 파이 피코로 뚫어뻥하는 것...
    Date2024.02.08 소식 Bytitle: 폭8책읽는달팽 Reply7 Views809
    Read More
  15. No Image

    (내용추가) 아파트 특정 방 인터넷 속도가 100m으로 락 걸릴 수 있나요?

    kt 베이직 요금제 (500Mbps 150gb? 사용시 100mbps 제한) 사용중입니다. 방 두개에 각각 pc가 설치 되어 있는데 한쪽은 440~500 이렀게 잘 나오고 (라이젠 2700 아수스 a320 ex 보드) 지금 이 피시만 90~99 이렀게 나옵니다. 뭐가 문제일...
    Date2024.02.08 질문 By암둥이280 Reply16 Views879
    Read More
목록
Board Pagination Prev 1 ... 13 14 15 16 17 18 19 20 21 22 ... 577 Next
/ 577

최근 코멘트 30개
고자되기
22:32
렉사
22:32
렉사
22:31
고자되기
22:31
아이들링
22:23
celinger
22:13
투명드래곤
22:12
투명드래곤
22:10
까르르
22:09
포인트 팡팡!
22:08
아이들링
22:05
아이들링
22:05
까르르
22:03
포인트 팡팡!
21:52
까마귀
21:51
까마귀
21:51
탐린
21:47
투명드래곤
21:37
투명드래곤
21:36
타미타키
21:29
타미타키
21:28
白夜2ndT
21:18
Addition
21:08
buildByFx0
21:00
copyleft
20:54
개념확립
20:53
buildByFx0
20:53
buildByFx0
20:52
급식단
20:45
이유제
20:44

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

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


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

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


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

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

설치 취소