누가 로그켓 안보이는 문제(logcat empty)


누가 업데이트 후 로그켓이 안보이는 문제가 발생되어 확인해 보니 

ADT를 업데이트를 해야 정상 동작되네요.



방법은 2가지가 있네요.

1. bat을 실행하는 방법 

"sdk/tools/monitor.bat"

다운로드 받은 SDK폴더에서 위의경로로 들어가 monitor.bat 을 실행시키면 

따로 창이 나타나고 로그가 정상적으로 보시됩니다. 

이때, sdk는 최신버전으로 업데이트 해둔 상태여야합니다. 


open the directory "sdk folder/tools/"

and double click monitor.bat


2. adt업데이트

https://github.com/khaledev/ADT/releases

저의경우 최신버전인 (  ADT-24.2.0-20160729 ) 을 다운받은후 이클립스에 업데이트 해주었네요 .

업데이트 방법은 위의 파일을 다운받은후 

압축은 풀지마시고 이클립스를 실행시킵니다.

menu Help > Install New Software... > Add > Archive

의 순서대로 눌러 다운받은 파일을 선택 후 업데이트를 진행하면됩니다.


https://github.com/khaledev/ADT/releases

Download the zip file then in Eclipse menu Help > Install New Software... > Add > Archive... Just pick the downloaded zip and do the rest of the install process.




안드로이드 SSL인증서 오류 

 

참조사이트 : https://developer.android.com/training/articles/security-ssl

 

에러내용 : 

 E Conscrypt: ------------------Untrusted chain: ----------------------

 E Conscrypt: == Chain0 ==
 E Conscrypt: Version: 3
 E Conscrypt: Serial Number: 1

 

원인 : 

 

중개(체인) 인증서를 정상적으로 확인 하지 못해 신뢰하지 못하는 인증기관으로 인식

웹상에서는 문제없이 동작하나 모바일단말에서는 

서버 인증서의 발급자를 확인하지 못하는 경우가많아 중개(체인) 인증서가 필요함.

 

해결방법

1. 인증서 재발행 

>https://www.ibm.com/support/knowledgecenter/ko/SSHS8R_7.1.0/com.ibm.worklight.installconfig.doc/admin/c_ssl_config.html#c_ssl_config__self-signed_certs_vs_self-signed_CAs

 

위의 링크를 참조하여 제시된 해결방법에 따라 적용.

 

 

위과 수정전 아래가 수정 후
 
 

2. 앱상에서 해당 인증서를 가지고 직접 인증 

CertificateFactory cf = CertificateFactory.getInstance("X.509");

Certificate ca;

 

String certificateString = "-----BEGIN CERTIFICATE-----\n" +

                            "MIIG3DCCBcSgAwIBAgIMCtlb/Nurv8TlrjaNMA0GCSqGSIb3DQEBCwUAMGYxCzAJ\n" +

                            "BgNVBAYTAkJFMRkwFwYDVQQKExBHbG9iYWxTaWduIG52LXNhMTwwOgYDVQQDEzNH\n" +

                            "nlc/e3o5NtzmUPuuEnfbxPunmNX9w6v0WWppv8kkT3s=\n" +

                            "-----END CERTIFICATE-----";

ByteArrayInputStream derInputStream = new ByteArrayInputStream(certificateString.getBytes());

ca = cf.generateCertificate(derInputStream);

 

String keyStoreType = KeyStore.getDefaultType();

KeyStore keyStore = KeyStore.getInstance(keyStoreType);

keyStore.load(null, null);

keyStore.setCertificateEntry("ca", ca);

 

registry.register(new Scheme("https", new MySSLSocketFactory(keyStore), httpSport));

 

---------MysslSocketFactory------

 

class MySSLSocketFactory extends SSLSocketFactory {

    SSLContext sslContext = SSLContext.getInstance("TLS");

 

    public MySSLSocketFactory(KeyStore truststore) throws NoSuchAlgorithmException, KeyManagementException, KeyStoreException, UnrecoverableKeyException {

        super(truststore);

 

        TrustManagerFactory tmf = TrustManagerFactory.getInstance("X509");

        tmf.init(truststore);

 

        sslContext.init(null, tmf.getTrustManagers(), null);

    }

 

    @Override

    public Socket createSocket(Socket socket, String host, int port, boolean autoClose) throws IOException, UnknownHostException {

        return sslContext.getSocketFactory().createSocket(socket, host, port, autoClose);

    }

 

    @Override

    public Socket createSocket() throws IOException {

        return sslContext.getSocketFactory().createSocket();

    }

}

 

일반적으로 인증서 파일을 저장하여 파일로 읽어서 사용하는데, 별 차이는 없어 보여 String을 직접 넣었네요. 

2번째 방법 보단 인증서교체를 통한 방법이 좋습니다. 

 

그럼 도움이 됐길. !

 

DOZE 모드 테스트

 

doze 모드 관련 GCM 푸시 서비스를 테스트를 준비중 찾아보니 adb 명령어를 통한

doze모드 진입 방법이 있어 소개 해드립니다.

 

1. 케이블 충전 안되게 상태 변경(아래명령어 입력)

> adb shell dumpsys battery unplug 

2. 핸드폰 단말 화면 끄기 

3. adb shell dumpsys deviceidle step 명령어로 idle상태가 나올때까지 여러번 입력.

 

아래는 직접 명령어 입력한 과정입니다. 

그럼 도움이 됐길!!

 

 

아참. 배터리 상태를 되돌리는 명령어는 adb shell dumpsys battery reset 입니다.

우체국, 한진 택배등등 사칭 문자 스미싱, 피싱 앱 분석 후기[bit.ly ]

사칭문자 :

010-6648-8202

[CJ대한통운] 000주소가 틀려서 물건 배송이 안돼요.주소재확 bit.ly/~~~

이번 주말 마침 택배받을것도 있어서 위의 링크를 눌렀더니 앱을 다운받네요 . 

앱 이름과 마켓이 아닌 다운로드 링크를 통해 다운받는게 이상해서 해당 앱을 분석을 해봤는데 역시나.. 피싱앱이네요. 

 

혹여 저와 같은 문자를 받았거나 위의 전화번호로 온 앱이 있다면 다운받지마세요!

제일 좋은건 플레이스토어(마켓)에서 받은게 아니면 설치를 하지 않는게 좋습니다!

 

대충 파악해본 결과

농협, 신한, 하나,kb등등 여러 이름들이 보이죠 ??  

패키지명이라고 하는 앱의 고유 이름이 있는데, 위에 적혀 있는건 마켓에서 검색이 안됩니다. 

즉, 타앱을 사칭해서 만든 거죠!!! 

 

코드로 보면 해당 하는 앱이(농협 신한 하나 KB등등) 설치되어 있으면 지우고 

자기들이 만든 앱을 설치하도록 유도 되어 있네요. 

 

은행앱을 지우고 조작된 앱을 설치하도록 유도해서 정보를 빼가는거죠!

ex)피싱앱(검색안됨) : https://play.google.com/store/apps/developer?id=com.korea.kr_nhbank

실제 농협앱(검색됨) : https://play.google.com/store/apps/details?id=nh.smart.banking

 

NH스마트뱅킹 - Google Play 앱

● 앱 설치 선택 후 다운로드가 안 될 경우 조치 방법 ① 구글Play스토어 앱 왼쪽상단 메뉴 선택 ② 내 앱/게임 선택 ③ NH스마트뱅킹 외 업데이트 중단시 NH스마트뱅킹 우선 설치됨 - NH스마트뱅킹이 설치되시면, 고객님 필요에 따라 타 앱 "업데이트" 선택 ● 주요특징 NH스마트뱅킹이 NH금융상품마켓과 퇴직연금, 스마트인증(지문, 간편뱅킹)이 하나의 앱으로 통합 되었습니다. 개인화 된 서비스로 더욱 편리해진 NH스마트뱅킹 앱을 지금 만나보세요! ●

play.google.com

문구를 보면 새로운 앱이 업데이트 됐다고 피싱앱 설치를 유도하네요. 

설치하면 아이디/패스워드 정도 빼가고, 인증서 정보도 빼가겠죠 ? 

위의 부분은 핸드폰 SMS의 정보를 수신 하는 부분인데

SMS받는대로 전달하도록 해둔 부분입니다. 

즉, 자신이 타인에게 받은 문자가 자기도 모르게 다른사람 한테 공유가 되는거죠!!

정말 이부분은 악용을 할려고 하면 수도 없이 가능하겠네요.

 

문자로오는 개인정보들을 받아 돈을 빌려달라고 할 수도 있고, 

타인을 사칭해서 사기를 칠 수도 있구요;; 

 

현직이기도 해서 간단하게 분석을 해보았는데 

생각보다 훨씬 더 위험하네요.

핸드폰에는 각종 은행정보와 연락처, 문자 등등 수많은 개인정보들이 있기때문에 

치명적으로 다가올수 있습니다!!!

 

저렇게 변조된 앱만 설치하도록 유도만 한다면 악용할 방법은 정말많으니 

이상한 다운로드 링크로 가서 받지 마시고

플레이스토어를 이용하세요!!

 

요약

- 문자로 앱을 다운로드 하게 한다면 받지마세요; ( 정식 서비스 하는곳들은 플레이스토어로 링크를 겁니다 ) 

- 피싱앱을 통해 기존 은행앱을 지우고, 자기들이 가짜로 만든 은행앱 설치를 유도함. 

- 문자도 공유하고 연락처 정보도 빼돌림.

 

한분이라도 도움이 되길 바라요!

끝.

 

피싱앱분석 사례 2 : https://runlife.tistory.com/180

 

스미싱 앱 분석 2(대한통운 택배수령인 스미싱)

스미싱 앱 분석 2(대한통운 택배수령인 스미싱) 대한통운을 사칭해서, 택배 수령인이 없다 날짜 확인바란다는 문자를 보내 앱 설치 유도를 하는 스미싱유도 문자가 있어 해당 내용 공유합니다. http://psgbfdc.qvw..

runlife.tistory.com