Risky App Permission trong Android
[ 2015-11-28 10:47:50 | Tác giả: nuong ]
[size=12] Các hệ điều hành Android là một nền tảng mở dựa trên Linux, tích hợp vào các thiết bị di động, đồng hồ thông minh, máy tính bảng và thậm chí tivi và ô tô. Các cơ hội để tạo ra các ứng dụng trên vô số các thiết bị đặt ra các vấn đề về an ninh, mà tôi tin rằng sẽ là thách thức lớn nhất của Android.
Android vẫn duy trì mức độ bảo mật ứng dụng bằng cách sử dụng một điều khoản đầy đủ cơ chế bảo mật dựa cho phép người dùng hạn chế truy cập các thành phần ứng dụng. Quyền có thể ngăn chặn các ứng dụng độc hại từ làm hư dữ liệu, tiếp cận với các thông tin nhạy cảm, hoặc làm việc sử dụng quá mức hoặc trái phép các tài nguyên phần cứng hoặc các kênh truyền thông bên ngoài khi học lập trình android
Theo mặc định không có ứng dụng Android có quyền để thực hiện bất kỳ hoạt động đó sẽ tác động đến các hệ điều hành, người sử dụng dữ liệu cá nhân hoặc các ứng dụng khác. Nhưng mà không được phép sử dụng bất cứ điều gì, một ứng dụng Android không phải là một ứng dụng hữu ích.
Vấn đề an ninh
Android sử dụng quyền hạn để lọc các khả năng của một ứng dụng và nó lên để người dùng có chấp nhận các điều khoản của một ứng dụng sau khi cài đặt. Vấn đề là người dùng có xu hướng không quyền đọc và chấp nhận họ không suy nghĩ. Điều này có thể dẫn đến một loạt các vấn đề bảo mật thông tin cá nhân từ chảy vào hệ điều hành Android và tồi tệ hơn, sự biến đổi hạt nhân.
Trong bài viết này tôi sẽ thảo luận về các manifest Android và cho phép. Các tập tin manifest chứa thông tin về các gói phần mềm ứng dụng, bao gồm cả quyền truy cập, các nhà cung cấp nội dung, dịch vụ, hoạt động và các máy thu phát sóng.
Dưới đây là một cấu trúc chung của tập tin manifest để hiển thị, nơi quyền đi trong biểu hiện.
Android Manifest
Các quyền ứng dụng nguy hiểm nhất
Để đánh giá những quyền gì để chấp nhận, mỗi người sử dụng phải giữ cho các chức năng của các ứng dụng được cài đặt trong tâm trí. Ví dụ: "Tại sao một trò chơi cần sự cho phép cho các liên hệ của tôi hoặc yêu cầu sự cho phép gửi tin nhắn SMS?". Bạn không cần phải gửi tin nhắn SMS trong một trò chơi. Quyền này có xu hướng trở nên nguy hiểm và bị rò rỉ thông tin người dùng tin.
Permissions bạn có thể muốn xem xét lại
1. gốc Permission
Những người sử dụng gốc là người quản trị hệ thống và có kiểm soát trên toàn hệ thống, mà không có giới hạn. Theo mặc định, người dùng Android không có quyền truy cập vào các tính chất gốc vì người thiếu kinh nghiệm có thể làm thiệt hại nghiêm trọng cho hệ điều hành của họ. Root có được là do một quá trình gọi là "rễ các thiết bị Android". Không có giới hạn trong những gì một ứng dụng độc hại có thể làm gì khi họ nhận được sự cho phép từ người sử dụng root.
Dưới đây là một ví dụ nhỏ của một ứng dụng chạy một kịch bản với quyền superuser cho khởi động lại thiết bị Android.
Bằng việc sử dụng "su" ra lệnh cho các ứng dụng sẽ chạy với các đặc quyền của USER SUPER và nếu thiết bị được bắt nguồn từ nó sẽ khởi động lại.
Thiết bị khởi động lại
Khi đang chạy trên một thiết bị không bắt nguồn từ, một tin nhắn sẽ xuất hiện bánh mì nướng.
superuser
Nếu bạn muốn thêm sự cho phép này để một ứng dụng sau đó thêm dòng sau vào file manifest của bạn.
2. Đọc / Viết phép dữ liệu cá nhân
Có một số điều khoản cho phép một ứng dụng để sử dụng dữ liệu cá nhân của người sử dụng. Nếu bạn muốn thông tin để được thử tư nhân để tránh những điều khoản trong các tập tin Android Manifest.
3. quyền tài chính
Một số điều khoản có thể chi phí người sử dụng tiền nếu họ vô tình được cấp. Những phù hợp nhất cho các ứng dụng điện thoại di động được tin nhắn SMS / MMS cho phép và cho phép cuộc gọi. Đây có thể gửi tin nhắn SMS trong các số điện thoại nền và cuộc gọi, ngay cả khi không đi qua các ứng dụng quay số. Những điều khoản có thể cho phép ứng dụng đọc tin nhắn SMS và MMSS trong nền vô hình của người dùng.
Các điều khoản cần thiết cho tin nhắn SMS, MMS và gọi hoạt động này là:
4. Địa điểm
Giấy phép vị trí cho phép một ứng dụng để truy cập vào vị trí của người dùng bất cứ lúc nào:
- Truy cập vị trí gần đúng: Các ứng dụng có thể truy cập vào vị trí gần đúng có nguồn gốc từ các tháp di động và Wi-Fi.
- Truy cập vị trí tốt: Các ứng dụng có thể truy cập vào một vị trí chính xác từ các nguồn vị trí như GPS, các tháp di động và Wi-Fi.
Các điều khoản cần thiết để làm việc với vị trí là:
Here is how to get the precise location of an Android device:
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission>
Các lớp java MainActivity thực hiện LocationListener để có được thông tin vị trí từ thiết bị.
Trong onCreate () requestLocationUpdates phương pháp () được gọi để có được vị trí hiện tại của thiết bị và mỗi khi nó thay đổi, onLocationChanged () được gọi và vị trí mới được hiển thị.
Phương pháp onProviderDisabled () được gọi là nếu thiết bị GPS bị vô hiệu hóa, chuyển hướng các ứng dụng để cài đặt vị trí của thiết bị.
Vị trí ứng dụng
5. Âm thanh và video cho phép
Những nghĩa là ai đó có thể nghe một cuộc trò chuyện hoặc sử dụng một máy ảnh điện thoại để surveil người sử dụng. Ví dụ như:
Các điều khoản cần thiết trong một file manifest là:
Đây có thể cài đặt các gói bổ sung vào điện thoại mà không cần người sử dụng biết. Người dùng không cần phải chấp nhận họ bởi vì các ứng dụng có sự cho phép làm như vậy.
Google đang làm gì để tiếp theo?
Tháng trước Google công bố Android M trong Google I / O năm 2015. Android M có nhiều đổi mới trong đó có một cơ chế Application Permissions mới. Quyền sẽ được yêu cầu lần đầu tiên một người dùng cố gắng để sử dụng một tính năng, không phải tại thời điểm cài đặt. Làm phát triển và kinh nghiệm người dùng tốt hơn nhiều.
Bài Viết Ngẫu Nhiên:
Văn thơ 9x - Học sinh thời @
Ngắm người đẹp dáng xinh Lý Băng Băng .....!
Không hiểu được Plăng đâu
Portable 4 in 1 Emulator AIO
100 in 1 Portable Software chạy trên Win 7
Better Homes And Gardens Home Designer Suite 8.0 - Bonus Content
SSW Code Auditor v13.27
Những niềm riêng !
Biển số xe Việt Nam full
[VBB] Skin loitraitim 3.8.1
Android vẫn duy trì mức độ bảo mật ứng dụng bằng cách sử dụng một điều khoản đầy đủ cơ chế bảo mật dựa cho phép người dùng hạn chế truy cập các thành phần ứng dụng. Quyền có thể ngăn chặn các ứng dụng độc hại từ làm hư dữ liệu, tiếp cận với các thông tin nhạy cảm, hoặc làm việc sử dụng quá mức hoặc trái phép các tài nguyên phần cứng hoặc các kênh truyền thông bên ngoài khi học lập trình android
Theo mặc định không có ứng dụng Android có quyền để thực hiện bất kỳ hoạt động đó sẽ tác động đến các hệ điều hành, người sử dụng dữ liệu cá nhân hoặc các ứng dụng khác. Nhưng mà không được phép sử dụng bất cứ điều gì, một ứng dụng Android không phải là một ứng dụng hữu ích.
Vấn đề an ninh
Android sử dụng quyền hạn để lọc các khả năng của một ứng dụng và nó lên để người dùng có chấp nhận các điều khoản của một ứng dụng sau khi cài đặt. Vấn đề là người dùng có xu hướng không quyền đọc và chấp nhận họ không suy nghĩ. Điều này có thể dẫn đến một loạt các vấn đề bảo mật thông tin cá nhân từ chảy vào hệ điều hành Android và tồi tệ hơn, sự biến đổi hạt nhân.
Trong bài viết này tôi sẽ thảo luận về các manifest Android và cho phép. Các tập tin manifest chứa thông tin về các gói phần mềm ứng dụng, bao gồm cả quyền truy cập, các nhà cung cấp nội dung, dịch vụ, hoạt động và các máy thu phát sóng.
Dưới đây là một cấu trúc chung của tập tin manifest để hiển thị, nơi quyền đi trong biểu hiện.
Android Manifest
Các quyền ứng dụng nguy hiểm nhất
Để đánh giá những quyền gì để chấp nhận, mỗi người sử dụng phải giữ cho các chức năng của các ứng dụng được cài đặt trong tâm trí. Ví dụ: "Tại sao một trò chơi cần sự cho phép cho các liên hệ của tôi hoặc yêu cầu sự cho phép gửi tin nhắn SMS?". Bạn không cần phải gửi tin nhắn SMS trong một trò chơi. Quyền này có xu hướng trở nên nguy hiểm và bị rò rỉ thông tin người dùng tin.
Permissions bạn có thể muốn xem xét lại
1. gốc Permission
Những người sử dụng gốc là người quản trị hệ thống và có kiểm soát trên toàn hệ thống, mà không có giới hạn. Theo mặc định, người dùng Android không có quyền truy cập vào các tính chất gốc vì người thiếu kinh nghiệm có thể làm thiệt hại nghiêm trọng cho hệ điều hành của họ. Root có được là do một quá trình gọi là "rễ các thiết bị Android". Không có giới hạn trong những gì một ứng dụng độc hại có thể làm gì khi họ nhận được sự cho phép từ người sử dụng root.
Dưới đây là một ví dụ nhỏ của một ứng dụng chạy một kịch bản với quyền superuser cho khởi động lại thiết bị Android.
try {
String[] reboot = new String[] { "su", "-c", "reboot" };
//-c will cause the next argument to be treated as a command
Process process = Runtime.getRuntime().exec(reboot);
process.waitFor(); //wait for the native process to finish executing.
} catch (Exception e) {
Toast.makeText(getApplicationContext()," Device not rooted.\n Could not reboot...",Toast.LENGTH_SHORT).show();
String[] reboot = new String[] { "su", "-c", "reboot" };
//-c will cause the next argument to be treated as a command
Process process = Runtime.getRuntime().exec(reboot);
process.waitFor(); //wait for the native process to finish executing.
} catch (Exception e) {
Toast.makeText(getApplicationContext()," Device not rooted.\n Could not reboot...",Toast.LENGTH_SHORT).show();
Bằng việc sử dụng "su" ra lệnh cho các ứng dụng sẽ chạy với các đặc quyền của USER SUPER và nếu thiết bị được bắt nguồn từ nó sẽ khởi động lại.
Thiết bị khởi động lại
Khi đang chạy trên một thiết bị không bắt nguồn từ, một tin nhắn sẽ xuất hiện bánh mì nướng.
superuser
Nếu bạn muốn thêm sự cho phép này để một ứng dụng sau đó thêm dòng sau vào file manifest của bạn.
<uses-permission android:name="android.permission.ACCESS_SUPERUSER"></permission>
2. Đọc / Viết phép dữ liệu cá nhân
Có một số điều khoản cho phép một ứng dụng để sử dụng dữ liệu cá nhân của người sử dụng. Nếu bạn muốn thông tin để được thử tư nhân để tránh những điều khoản trong các tập tin Android Manifest.
<uses-permission android:name="android.permission.READ_CALENDAR"></uses-permission>
<uses-permission android:name="android.permission.WRITE_CALENDAR"></uses-permission>
<uses-permission android:name="android.permission.READ_CALL_LOG"></uses-permission>
<uses-permission android:name="android.permission.WRITE_CALL_LOG"></uses-permission>
<uses-permission android:name="android.permission.READ_CONTACTS"></uses-permission>
<uses-permission android:name="android.permission.WRITE_CONTACTS"></uses-permission>
<uses-permission android:name="android.permission.WRITE_CALENDAR"></uses-permission>
<uses-permission android:name="android.permission.READ_CALL_LOG"></uses-permission>
<uses-permission android:name="android.permission.WRITE_CALL_LOG"></uses-permission>
<uses-permission android:name="android.permission.READ_CONTACTS"></uses-permission>
<uses-permission android:name="android.permission.WRITE_CONTACTS"></uses-permission>
3. quyền tài chính
Một số điều khoản có thể chi phí người sử dụng tiền nếu họ vô tình được cấp. Những phù hợp nhất cho các ứng dụng điện thoại di động được tin nhắn SMS / MMS cho phép và cho phép cuộc gọi. Đây có thể gửi tin nhắn SMS trong các số điện thoại nền và cuộc gọi, ngay cả khi không đi qua các ứng dụng quay số. Những điều khoản có thể cho phép ứng dụng đọc tin nhắn SMS và MMSS trong nền vô hình của người dùng.
Các điều khoản cần thiết cho tin nhắn SMS, MMS và gọi hoạt động này là:
<uses-permission android:name="android.permission.SEND_SMS"></uses-permission>
The permission used to send SMS and MMS messages.<uses-permission android:name="android.permission.CALL_PHONE"></uses-permission/CODE]
The permission used to initiate a phone call.
Here is a simple example of how to send a SMS to a specified number.
[code]String message = "Hello Android fans! ";
String number = "xxxxxxxxxxxx";
//it is preferable to use a complete international number
SmsManager.getDefault().sendTextMessage(number, null, message, null, null);
Remember this code will only work if this permission is included in the manifest file.The permission used to initiate a phone call.
Here is a simple example of how to send a SMS to a specified number.
[code]String message = "Hello Android fans! ";
String number = "xxxxxxxxxxxx";
//it is preferable to use a complete international number
SmsManager.getDefault().sendTextMessage(number, null, message, null, null);
<uses-permission android:name="android.permission.SEND_SMS"></uses-permission>
4. Địa điểm
Giấy phép vị trí cho phép một ứng dụng để truy cập vào vị trí của người dùng bất cứ lúc nào:
- Truy cập vị trí gần đúng: Các ứng dụng có thể truy cập vào vị trí gần đúng có nguồn gốc từ các tháp di động và Wi-Fi.
- Truy cập vị trí tốt: Các ứng dụng có thể truy cập vào một vị trí chính xác từ các nguồn vị trí như GPS, các tháp di động và Wi-Fi.
Các điều khoản cần thiết để làm việc với vị trí là:
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"></uses-permission>
To access approximate location.<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission>
To access precise location.Here is how to get the precise location of an Android device:
public class MainActivity extends Activity implements LocationListener {
private LocationManager locationManager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,
3000, 10, this);
}
@Override
public void onLocationChanged(Location location) {
String myLocation ="Location changed...\n\nYou are located at: " + "\nLatitude: " + location.getLatitude()
+ "\nLongitude: " + location.getLongitude();
Toast.makeText(getApplicationContext(), myLocation, Toast.LENGTH_LONG).show();
}
@Override
public void onProviderDisabled(String provider) {
Intent intent = new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS);
startActivity(intent);
Toast.makeText(getApplicationContext(), "Gps is turned off... ",
Toast.LENGTH_SHORT).show();
}
@Override
public void onProviderEnabled(String provider) {
Toast.makeText(getApplicationContext(), "Gps is turned on... ",
Toast.LENGTH_SHORT).show();
}
@Override
public void onStatusChanged(String provider, int status, Bundle extras) {
}
}
To run this code you have to include this permission to access the precise location:private LocationManager locationManager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,
3000, 10, this);
}
@Override
public void onLocationChanged(Location location) {
String myLocation ="Location changed...\n\nYou are located at: " + "\nLatitude: " + location.getLatitude()
+ "\nLongitude: " + location.getLongitude();
Toast.makeText(getApplicationContext(), myLocation, Toast.LENGTH_LONG).show();
}
@Override
public void onProviderDisabled(String provider) {
Intent intent = new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS);
startActivity(intent);
Toast.makeText(getApplicationContext(), "Gps is turned off... ",
Toast.LENGTH_SHORT).show();
}
@Override
public void onProviderEnabled(String provider) {
Toast.makeText(getApplicationContext(), "Gps is turned on... ",
Toast.LENGTH_SHORT).show();
}
@Override
public void onStatusChanged(String provider, int status, Bundle extras) {
}
}
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission>
Các lớp java MainActivity thực hiện LocationListener để có được thông tin vị trí từ thiết bị.
Trong onCreate () requestLocationUpdates phương pháp () được gọi để có được vị trí hiện tại của thiết bị và mỗi khi nó thay đổi, onLocationChanged () được gọi và vị trí mới được hiển thị.
Phương pháp onProviderDisabled () được gọi là nếu thiết bị GPS bị vô hiệu hóa, chuyển hướng các ứng dụng để cài đặt vị trí của thiết bị.
Vị trí ứng dụng
5. Âm thanh và video cho phép
Những nghĩa là ai đó có thể nghe một cuộc trò chuyện hoặc sử dụng một máy ảnh điện thoại để surveil người sử dụng. Ví dụ như:
Các điều khoản cần thiết trong một file manifest là:
<uses-permission android:name="android.permission.CAMERA"></uses-permission>
<uses-permission android:name="android.permission.CAPTURE_VIDEO_OUTPUT"></uses-permission>
<uses-permission android:name="android.permission.CAPTURE_AUDIO_OUTPUT"></uses-permission>
<uses-permission android:name="android.permission.RECORD_AUDIO"></uses-permission>
6. Gói<uses-permission android:name="android.permission.CAPTURE_VIDEO_OUTPUT"></uses-permission>
<uses-permission android:name="android.permission.CAPTURE_AUDIO_OUTPUT"></uses-permission>
<uses-permission android:name="android.permission.RECORD_AUDIO"></uses-permission>
Đây có thể cài đặt các gói bổ sung vào điện thoại mà không cần người sử dụng biết. Người dùng không cần phải chấp nhận họ bởi vì các ứng dụng có sự cho phép làm như vậy.
<permission android: name = "android.permission.INSTALL_PACKAGES"> </ permission> [/ CODE]
7. quá trình nền Kill
Điều này cho phép một ứng dụng gọi killBackgroundProcesses (String), trong đó cung cấp một ứng dụng sức mạnh để giết người khác đang chạy ở chế độ nền.
[[code]<uses-permission android:name="android.permission.KILL_BACKGROUND_PROCESSES"></uses-permission>
7. quá trình nền Kill
Điều này cho phép một ứng dụng gọi killBackgroundProcesses (String), trong đó cung cấp một ứng dụng sức mạnh để giết người khác đang chạy ở chế độ nền.
[[code]<uses-permission android:name="android.permission.KILL_BACKGROUND_PROCESSES"></uses-permission>
Google đang làm gì để tiếp theo?
Tháng trước Google công bố Android M trong Google I / O năm 2015. Android M có nhiều đổi mới trong đó có một cơ chế Application Permissions mới. Quyền sẽ được yêu cầu lần đầu tiên một người dùng cố gắng để sử dụng một tính năng, không phải tại thời điểm cài đặt. Làm phát triển và kinh nghiệm người dùng tốt hơn nhiều.
[Sửa lần cuối bởi:nuong, vào lúc 2015-12-03 02:06:13]
**************** Hãy cùng chia sẻ với bạn bè bằng cách ****************
Copy đường link dưới đây gửi đến nick yahoo bạn bè! |
Hiện chưa có lời bình nào cho bài viết này.