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. 원룸 인터넷 속도 개선 질문입니다.

    안녕하세요. 다름이 아니옵고 원룸건물에 요즘 세입자가 불어나서인지.... 트레픽이 많아져서인지.....같은 라인(건물에 반반해서 라인이 분리되있습니다.) 인터넷이 많이 느려진 느낌이 나더군요. 집에서도 가족이 무선인터넷을 많이 쓰...
    Date2016.12.07 질문 By발암의나라 Reply29 Views8871 file
    Read More
  2. 3Dmark질문입니다!

    요새 컴퓨터에 문제가 좀있는거같아서 기글한분꼐서 3Dmark를돌려보시라고하셔서 돌렸더니 Your score was invalid for the following reasons - Time measurement data not available. The validity of the result cannot be determined....
    Date2016.12.05 질문 ByNaziCube Reply5 Views2913 file
    Read More
  3. 네트워크 공격을 받고 있는 중입니다.

        카스퍼스키 인터넷 시큐리티 사용중인데 며칠전부터 계속해서 네트워크 어택이 차단되었다고 나오는군요. 하루에도 몇 번씩... 제가 모르는 사이 뭔가 설치가 된 건 아니겠죠?
    Date2016.12.04 질문 Bytitle: AI아즈텍 Reply3 Views1816 file
    Read More
  4. No Image

    시놀로지 NAS/Asus RT-AC5300 FTP 포트포워딩 관련 질문입니다.

    일단 스펙부터 간단히 설명드리자면 시놀로지 나스(DS916+)에 Asus RT-AC5300 공유기에 멀린 펌웨어 물려서 돌리고 있습니다. 둘다 펌웨어 버젼은 최신입니다. 기글에서 얼마전에 공유기 펌웨어 버젼 업데이트로 문제 해결됬다는 글이 올...
    Date2016.12.02 질문 By청염 Reply11 Views4319
    Read More
  5. [해결] FTP 내부망 속도가 이상합니다

      메인 컴퓨터로 파일질라 FTP 를 사용하고 있습니다   로컬로만 사용하기에 별다른 이상이 없어야 할터인데       안드로이드로 FTP 접속시 전송속도가 500 KB/s 300 KB/s 로 제한되는 느낌입니다 (AndFTP 사용) (오늘해보니 300KB/s ......
    Date2016.11.27 질문 ByR.Review Reply2 Views3816 file
    Read More
  6. 에드웨어 같은데 도저히 못잡겠습니다.

      이런형태에 에드웨어입니다만.. 도저히 못찾겠습니다 구글크롬 사용할때마다 야동? 이상한사이트가 새로 생성되고 심지어 오리진 메인페이지 까지 저모양으로 만들어 버리네요.. 다시키면 그만이지만 너무 심할정도입니다 안전모드 진...
    Date2016.11.24 질문 ByIwish Reply9 Views1367 file
    Read More
  7. No Image

    토렌트 클라이언트 뭐가 종을까요?

    24시간 시딩 할 용도입니다.   utorrent를 쓰니깐 있는대로 램을 다 긁어써서 얘는 도저히 쓸수가 없더군요... 8기가 꼽아놨는데 파일캐시로 7기가를 사용...;;   그래서 vuze를 깔았는데 이거는 또 상대측에서 연결을 너무 못 하네요. 거...
    Date2016.11.24 질문 By케닌 Reply10 Views4190
    Read More
  8. 포토샵 투명도 관련 질문드립니다.

      안녕하세요 포트폴리오를 제작하다 이미지 작업을 해야하는 상황이 생겼는데   제가 원하는대로 깔끔하게 따지지가 않아서 질문드립니다.   gif를 보시면 아시겠지만 캐릭터와 이펙트의 테두리 부분에 RGB가 (255,0,255) [마젠타]로 제...
    Date2016.11.22 질문 By노력 Reply10 Views882 file
    Read More
  9. AMD 그래픽 드라이버 동시사용 관련해서 질문드립니다.

    안녕하세요. 기억하실지는 모르겠지만 오랜만에 인사드립니다.   동영상 재생용 서브컴 구성중에 애로사항이 생겨서 능력자님들 조언좀 구하고자 글쓰게 됐습니다.   현재 집에 굴러다니는 HD5770과 A10-7700K 시스템이 있습니다.   7700K...
    Date2016.11.17 질문 By가을귀 Reply9 Views967 file
    Read More
  10. 윈도우 10 로그인 질문

      로그인 화면에서 Bluetooth 보안 태그를 사용하여 인증 바랍니다. 라는 옵션이 뜨더군요. 이걸 제거할 수 있는 방법이 있을까요? 설정에서 찾아도 못찾겠더라구요. ㅠㅠ
    Date2016.11.15 질문 By도개주 Reply1 Views2075 file
    Read More
  11. No Image

    유튜브 버퍼링 해결방법 있나요?

    안녕하세요   KT회선으로 보이는 기숙사 인터넷을 사용하고 있습니다.   유독 유튜브 버퍼링이 심한데요.   속도가 느리기도하지만 자주 멈추는 느낌을 받습니다.   이상한점은 영상을 다운로드시 속도가 괜찮게 나오더군요.   버퍼링이 ...
    Date2016.11.15 질문 By링크 Reply6 Views1461
    Read More
  12. No Image

    질문 하나 더.. 거의 끝나갑니다.

    mCursor = dbhelper.getMatchPatt(password); //password가 DB의 patt column 중에 있다면 해당 row의 num을 받아서 전화걸기 if (mCursor.getCount() > 0){ pnum = mCursor.getString(2); Intent intent = new Intent(Intent.ACTION_CAL...
    Date2016.11.14 질문 By아스트랄로피테쿠스 Reply4 Views283
    Read More
  13. 윈도우 무한 업데이트.

    넵 윈도 무한 업데이트. 저 상태에서 하룻동안 둬도 진행이 없네요..  이런 경우 해결책이 있을까요?   운영체제는 8.1 with bing입니다. 어머니 쓰시던거라 윈10으로 업그레이드가 안됐네요.   그냥 이 김에 윈도 파티션 날려버릴까 싶...
    Date2016.11.14 질문 ByΦloteer Reply3 Views818 file
    Read More
  14. No Image

    안드로이드 프로그래밍 질문입니다;;

    public void onClick(View v) { EditText name = (EditText) findViewById(R.id.tname); EditText num = (EditText) findViewById(R.id.tnum); String temp1; Intent intent = new Intent(QDialList.this, GetQdPatt.class); startActivi...
    Date2016.11.13 질문 By아스트랄로피테쿠스 Reply6 Views324
    Read More
  15. No Image

    사업장에서 고스트 대용할 프로그램 있을까요?

    친하게 지내는 어르신이 한분 계신데 산업용PC 제조업을 하십니다. 예상외로 컴맹(?)이셔서 백업, 복구 프로그램은 고스트밖에 사용할줄 모르십니다. 이것도 제가 들를때마다 수차례 가르쳐 드리고, 노트에 적어드리고 해서 겨우 터득하셨...
    Date2016.11.12 질문 ByPLAYER001 Reply11 Views3754
    Read More
  16. 워드 잘 다루시는 분 질문 드립니다.

      단지 그냥 평범한 수식이지만, 뭔가 이상한 부분이 보이실 겁니다.  i와 j에서 위의 점이 사라졌지요.    혹시나 latex식으로 재 입력하면 될까 했는데 역시나 해결은 되지 않았습니다. (이건 cambria math)    이걸 어떻게 하면 i로 바...
    Date2016.11.10 질문 By냐아 Reply21 Views822 file
    Read More
  17. No Image

    배틀필드1 렌더링 스케일?

    이번에 배틀필드1 이 출시되었는데 예전 베타랑은 다르게 해상도 렌더링 스케일이 0%~200%까지 설정할수가 있더군요 저는 1920x1080 모니터를 쓰고 있는데 100%에다 맞추는게 맞는건가요? 아니면 수치를 조정을 해야하나요?  
    Date2016.11.06 질문 By니코다이스키 Reply2 Views1108
    Read More
  18. 윈도우에 우분투설치중 오류질문!

    학교에서 배우는 과목중에 리눅스 환경이 편한 과목이 1~2과목씩 껴있어서 그냥 우분투나 다시깔자 하면서 윈도우 10 + 우분투 이렇게해서 번갈아가면서 사용을 할 생각이었는데 설치중에 여러가지 실패를해서 시간을 많이 날렸습니다.   ...
    Date2016.11.02 질문 ByNaziCube Reply4 Views1015 file
    Read More
  19. No Image

    심심하면 오피스,윈도우7 인증이 풀리는 이유가 뭘까요?

    고객센터에 왜 이 난리냐고 물어봐야 하나...   (애초에 전화해보니 안내를 위해선 따로 요금을 내야 한다더라구요. 왓?)   돈을 냈으면 버그는 둘째치고 인증풀리는건 없어야 하는거 아닌지...   아침부터 중요한 문서 작업해야 해서 워...
    Date2016.11.01 질문 By타미타키 Reply2 Views1014
    Read More
  20. No Image

    윈도우에 쓸만한 사전 프로그램은 없을까요?

    인터넷을 쓸 수 없는 환경인데 사전이 필요합니다   맥을 우연히 만지다가 사전을 사용해봤는데 굉장히 강력하더군요   반면, 윈도우는 그런사전을 본적이 없습니다   혹시, 윈도우에는 그런 사전이 없을까요?
    Date2016.10.31 질문 Byhjk9860 Reply9 Views5702
    Read More
목록
Board Pagination Prev 1 ... 64 65 66 67 68 69 70 71 72 73 Next
/ 73

최근 코멘트 30개
조마루감자탕
16:26
uss0504
16:20
냥뇽녕냥
16:14
뚜찌`zXie
16:13
냥뇽녕냥
16:09
냥뇽녕냥
16:02
냥뇽녕냥
15:58
마초코
15:57
neon
15:56
난젊어요
15:55
영원의여행자
15:53
하아암
15:53
오꾸리
15:42
책읽는달팽
15:33
미주
15:33
책읽는달팽
15:32
TundraMC
15:32
세라프
15:30
툴라
15:27
그림자
15:27
툴라
15:26
PAIMON
15:20
PAIMON
15:15
그림자
15:14
까르르
15:13
카토메구미
15:11
까르르
15:11
툴라
15:11
까르르
15:10
툴라
15:09

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

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


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

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


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

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

설치 취소