운영 및 유지보수 안전 SDK가 강화되지 않은 경우 보안 위험은 무엇입니까?

SDK가 강화되지 않은 경우 보안 위험은 무엇입니까?

May 23, 2023 pm 05:05 PM
sdk

SDK가 강화되지 않으면 어떤 보안 위험이 있나요?

1 경쟁 제품이나 악의적인 당사자가 내부 구현 세부 사항이나 내부 호출 프로세스를 쉽게 엿볼 수 있으며 심지어 개인 데이터가 유출될 수도 있습니다.

Android 플랫폼 SDK의 대부분은 Java 언어로 작성되어 쉽습니다. 디컴파일됩니다. 단순한 난독화는 내부 구현 세부정보를 노출할 수 있지만 SDK 내의 개인 데이터는 유출될 가능성이 더 높습니다. 이러한 세부사항이 핵심기술의 구현 방식을 드러낸다면 이는 핵심기술의 유출과 다름없다.

2. 악의적인 행위자가 바이트코드 삽입 등을 통해 악성코드를 이식한 후 다시 패키징하여 출시합니다.

SDK의 특성상 앱과 같은 서명 검증 로직이 없으므로 일단 악의적인 행위자 귀하의 SDK에 일부 악성코드나 악성 광고가 심어져 재게시될 경우, 이를 탐지하기 어렵고 개발자의 브랜드 이미지와 평판에 심각한 영향을 미치게 됩니다.

3.크랙된 사람은 핵심 로직을 우회하여 경제적 손실을 초래합니다

SDK에 결제 기능이 있고 악의적인 행위자가 분석하여 결제 로직을 찾아내는데, 결제 관련 로직이 잘 검증되지 않는 경우가 발생합니다. 서버 측에서는 악의적인 행위자가 AOP를 사용하여 이러한 결제 로직을 제거하면 유료 서비스를 무료로 사용할 수 있습니다.

4. SDK 자체에는 취약점이 있을 수 있으며 악의적인 당사자가 쉽게 악용할 수 있습니다.

SDK 개발자는 개발 중에 기능 구현에 중점을 두는 경우가 많으며 일반적으로 보안에 너무 많은 관심을 기울이지 않습니다. 자체 개발한 SDK에는 취약점이 없다고 보장하기 어렵습니다. 따라서 SDK에 일부 보안 취약점이 존재하고, 이러한 취약점이 악의적인 행위자에 의해 알려지고 악용되면 언제든지 폭발할 수 있는 지뢰를 설치하는 것과 같습니다. SDK 개발자의 평판은 데이터 및 개인 정보 보안에 대한 위협으로 인해 영향을 받을 뿐만 아니라 문제가 발생할 경우 금전적 보상 책임을 져야 할 수도 있습니다.

해결 방법

위의 보안 위험 분석을 통해 문제의 핵심은 악의적인 사용자가 SDK의 구현 로직을 쉽게 얻을 수 있다는 점을 알 수 있습니다. 따라서 개발자는 다음과 같은 보호 조치를 취하는 것이 좋습니다.

1. 주요 데이터 수정은 서버 측 검증을 통과해야 합니다. 예를 들어 위에서 언급한 결제 관련 로직에서 잔액 또는 결제 금액과 관련된 데이터 수정이 먼저 이루어져야 합니다. 서버 측 검증을 통과한 후 결과를 클라이언트에 동기화합니다.

2. 기본 레이어에서 핵심 로직을 구현합니다. Java 레이어의 일부 핵심 로직을 JNI 레이어로 전송하고 이를 C/C++로 구현합니다.

3. 문자열 처리 암호화: 코드의 문자열, 특히 민감한 정보가 포함된 문자열은 런타임에 암호화되고 해독되어야 합니다.

그러나 위의 사항을 달성하는 것만으로는 충분하지 않으며 일반 개발자를 막을 수 있을 뿐입니다. 우리가 열심히 개발한 SDK가 전문 크래커의 손에 들어가는 대포 사료가 되어 재정적 손실을 초래할 수도 있습니다.

따라서 Yidun의 SDK 강화 서비스 등 타사 보안 서비스에 연결하는 것이 좋습니다.

Yidun SDK 강화 소개

Yidun SDK 강화를 소개하기에 앞서 현재 대부분의 개발자들이 사용하고 있는 난독화 방식인 Proguard를 먼저 소개하겠습니다. Proguard는 Android 플랫폼에서 가장 널리 사용되는 난독화 기술로, 추상 구문 트리를 통해 구문 수준에서 처리되므로 처리된 코드를 읽고 이해하기 어렵습니다. 아래와 같이:

SDK가 강화되지 않은 경우 보안 위험은 무엇입니까?

그러나 클래스 이름과 메서드 이름을 "a, b, c"와 같은 의미 없는 임의의 문자열로 변경하면 크래커를 읽고 이해하는 데 드는 비용이 증가할 수 있지만 분명히 효과는 극히 제한적입니다. 크래커의 경우 코드의 의도를 파악하는 것은 시간 문제일 뿐입니다.

그렇다면 이둔의 SDK 강화 솔루션은 무엇일까요? 다음으로 소개해드릴 내용은

1. Yidun SDK 강화 VMP 솔루션

보호할 클래스의 메소드를 추출하고 추출된 명령어를 암호화한 후 런타임 시 커스텀 가상머신을 통해 실행하여 크랙을 가능하게 하는 것입니다. 독자는 원래 코드 논리를 얻을 수 없습니다.

효과는 다음과 같습니다.

SDK가 강화되지 않은 경우 보안 위험은 무엇입니까?

2. Yidun SDK 강화 Java2c 솔루션

이 솔루션은 보호하려는 클래스의 메소드를 Nativeize하는 동시에 원래의 함수 구현 로직을 변환하는 것입니다. Native 레이어에 해당하는 C/C++로 코드 실행 시 해당 Native 함수를 직접 실행합니다. 그 효과는 다음과 같습니다.

SDK가 강화되지 않은 경우 보안 위험은 무엇입니까?강화 전 예시

SDK가 강화되지 않은 경우 보안 위험은 무엇입니까?
SDK가 강화되지 않은 경우 보안 위험은 무엇입니까?

SDK가 강화되지 않은 경우 보안 위험은 무엇입니까?

강화 후 예시

정적 분석의 관점에서 Proguard 난독화와 비교하면 강화 후의 방식이 명백합니다. 네이티브화되었으며 로직이 구현되었습니다. Java 레이어에서는 완전히 보이지 않습니다. Java 계층의 원래 기능 로직을 JNI 계층의 C/C++ 코드 구현으로 변환하는 동시에 생성된 Native 계층 SO를 암호화하여 모든 측면에서 크래킹 난이도를 개선합니다.

(참고: 위 그림에서 더 명확하게 볼 수 있도록 강화된 방법은 해당 네이티브 레이어 구현으로 변환되었으며 생성된 네이티브 레이어 SO는 암호화되지 않습니다. 실제로 Yidun SDK 강화 Java2c 솔루션은 암호화를 위해 강화 후 네이티브 레이어 생성)

위 내용은 SDK가 강화되지 않은 경우 보안 위험은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 채팅 명령 및 사용 방법
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Microsoft는 Windows 11을 위한 새로운 흐림 효과를 개발하고 있습니다. Microsoft는 Windows 11을 위한 새로운 흐림 효과를 개발하고 있습니다. May 13, 2023 am 09:04 AM

빌드 22523용 새로운 Windows 11 SDK는 Microsoft가 Windows 11을 위한 새로운 흐림 효과를 개발하고 있음을 밝혔습니다. 이 효과는 Tabbed라고 하며 아크릴과 운모에 추가됩니다. 22523 SDK의 새로운 DWMWA_SYSTEMBACKDROP_TYPE, Mica, Acrylic의 공개 Win32 API 및 이상한 새로운 "탭" 혼합: pic.twitter.com/dbsu7ZFiIi — It's All Back(@StartIsBack) 2021년 12월 15일 다음 SDK의 샘플 애플리케이션에서 사용 가능

Java Hikvision SDK의 2차 개발을 위한 필수 기술을 습득하세요. Java Hikvision SDK의 2차 개발을 위한 필수 기술을 습득하세요. Sep 06, 2023 am 08:10 AM

Java Hikvision SDK의 2차 개발을 위한 필수 기술을 습득합니다. 소개: 정보 기술의 급속한 발전으로 영상 감시 시스템이 다양한 분야에서 널리 사용되고 있습니다. 국내 최고의 영상 감시 솔루션 제공업체로서 Hikvision의 제품과 기술은 항상 시장에서 중요한 위치를 차지하고 있습니다. 다양한 프로젝트의 요구 사항을 충족하기 위해 Hikvision은 개발자가 2차 개발을 수행할 수 있는 SDK를 제공합니다. 이 기사에서는 Java Hikvision SDK의 2차 개발을 마스터하기 위한 몇 가지 필수 기술을 소개하고 해당 코드 예제를 첨부합니다. 1. 하이크비전 이해하기

Windows App SDK 1.2가 이제 온라인에 출시되었습니다. 새로운 기능은 다음과 같습니다. Windows App SDK 1.2가 이제 온라인에 출시되었습니다. 새로운 기능은 다음과 같습니다. May 12, 2023 pm 06:07 PM

WindowsAppSDK는 개발자가 Windows 애플리케이션에서 Windows 10(버전 1809 이상) 및 Windows 11을 사용하는 다양한 장치에 "일관된" 기능을 제공하는 데 사용할 수 있는 도구 및 API 세트입니다. .NET 또는 Windows SDK와 같은 기존 애플리케이션 유형을 대체하는 것이 아니라 기존 애플리케이션을 보완하는 데 사용할 수 있는 통합 API 도구 세트를 제공한다는 점을 이해하는 것이 정말 중요합니다. 오늘 Microsoft는 많은 새로운 기능이 포함된 Windows App SDK 버전 1.2를 출시했습니다. 이번 릴리스의 하이라이트는 타사 개발자일 수 있습니다.

SDK는 무엇입니까? SDK는 무엇입니까? Jan 06, 2023 pm 03:26 PM

SDK의 전체 이름은 "소프트웨어 개발 키트"이며 중국어로 "소프트웨어 개발 키트"를 의미합니다. 하드웨어 플랫폼, 운영 체제(OS) 또는 프로그래밍 언어 제조업체가 제공하는 도구 세트입니다. SDK는 소프트웨어 개발자가 특정 플랫폼, 시스템 또는 프로그래밍 언어용 애플리케이션을 만드는 데 도움을 줍니다. 기본 SDK는 일반적으로 컴파일러, 디버거 및 API(애플리케이션 프로그래밍 인터페이스)로 구성되지만 문서, 라이브러리, 런타임/개발 환경, 테스트/분석 도구, 네트워크 프로토콜 등과 같은 다른 콘텐츠도 포함될 수 있습니다.

WeChat 미니 프로그램 PHP SDK 설치 및 사용 WeChat 미니 프로그램 PHP SDK 설치 및 사용 Mar 27, 2024 am 09:33 AM

WeChat 미니 프로그램 PHPSDK 설치 및 사용 모바일 인터넷의 급속한 발전과 함께 WeChat 미니 프로그램은 점점 더 많은 기업이 비즈니스를 수행하고 제품을 홍보하는 새로운 방법이 되었습니다. WeChat Mini 프로그램 PHPSDK는 개발자에게 편리하고 빠른 개발 도구를 제공하여 개발 효율성을 크게 향상시킬 수 있습니다. 이 기사에서는 WeChat 애플릿 PHPSDK의 설치 및 사용 방법을 소개합니다. 1. SDK 설치 1. GitHub에서 프로젝트 파일을 다운로드합니다. WeChat 애플릿 PHPSDK는 오픈 소스 프로젝트입니다. GitHub에서 다운로드할 수 있습니다.

리눅스의 SDK 폴더는 무엇입니까 리눅스의 SDK 폴더는 무엇입니까 Jul 11, 2023 pm 01:38 PM

Linux의 SDK는 컴파일러, 디버거, 라이브러리 파일, 헤더 파일 등과 같은 도구와 리소스가 포함된 폴더입니다. SDK는 소프트웨어 개발 키트(Software Development Kit)의 약어로, 개발자가 특히 Linux 운영 체제에서 실행되는 응용 프로그램을 개발하고 구축할 수 있도록 제공되는 통합 환경입니다.

PHP는 오픈 소스 Kafka SDK를 구현합니다. PHP는 오픈 소스 Kafka SDK를 구현합니다. Jun 18, 2023 am 09:18 AM

인터넷의 급속한 발전으로 인해 많은 양의 데이터를 전송하고 처리해야 하기 때문에 메시징 시스템은 데이터 전송 및 처리의 고전적인 응용 프로그램 중 하나로 인터넷 아키텍처에서 없어서는 안될 부분이 되었습니다. Kafka는 실시간 데이터 처리를 지원하는 확장 가능한 고성능 분산 메시징 시스템으로 엔터프라이즈 데이터 아키텍처에서 널리 사용됩니다. Kafka를 사용할 때 중요한 문제는 Kafka의 API를 어떻게 호출하느냐이다. 개발팀은 이를 위해 다국어 오픈소스 클라이언트를 제공하고 있으며, PHP로 구현된 오픈소스 KafkaS

PHP에 Alipay SDK를 설치하는 방법에 대한 자세한 설명은 무엇입니까? (가이드 공유) PHP에 Alipay SDK를 설치하는 방법에 대한 자세한 설명은 무엇입니까? (가이드 공유) Mar 22, 2023 am 11:24 AM

이 기사에서는 개발자가 몇 가지 간단한 단계로 SDK 설치를 완료할 수 있도록 PHP Alipay SDK에 대한 자세한 설치 가이드를 제공합니다.

See all articles