- جۇغلانما
- 8154
UID8582
تىزىملاتقان2012-7-7
ئاخىرقى قېتىم2015-8-10
توردا1027 سائەت
باشقۇرغۇچى
  
- نادىر
- 2
- جۇغلانما
- 8154
- ئاقچا
- 16


|

بۇ يازمىنى ئاخىرىدا Sabirjan تەھرىرلىگەن. ۋاقتى 2015-7-8 17:11
ئەسسالاممۇ ئەلەيكۈم ،يېقىندىن بېرى شىركەتنىڭ بىر قسىم تۈرلىرى بىلەن ئالدىراش بولۇپ كېتىپ ،ئانچە تور دۇنياسىغا يېقىنلشالمىدىم....
ئاندرويد كۆچمە ئۈسكىنە سىستېمىسى ئېلان قىلىنغاندىن تارتىپ ،شىنجاڭغا ئومۇملاشقىلىمۇ خېلى بولۇپ قالدى ....مۇشۇ جەرياندا دىيارىمىزدىكى يۇمشاق دېتال شىركەتلىرى بولسۇن ،ياكى يەككە قىزىققۇچىلار بولسۇن ۋەياكى چەت ئەلدىكى قېرىنداشلار بولسۇن نۇرغۇنلىغان ئۇيغۇرچە قوللىنىشچان ئەپ ھەم ئويۇنلارنى مۇستەقىل ياساپ ،ياكى باشقا تىللاردىكى ئەپلەرنى كۈچنىڭ يېتىشچە يەرلىكلەشتۇرۇپ مىللىتىمىزنىڭ مۇشۇ جەھەتتىكى تەرەقىياتىنى تولۇقلاپ كېلۋاتىدۇ...
مەن بۇ تېمىنى يېزىشتىن بۇرۇن تېمىغا ئىككى - ئۈچ قېتىم ئىسىم قويۇپ باقتىم ،ھەم تېمىنىمۇ بىر قانچە بۆلەككە بۆلۈپ تەپسىلىي يېزىش ئويغىمۇ كەلگەن ئىدىم،لېكىن ۋاقىت سەۋەب تۈپەيلى مەن بۇ تېمىنى مۇشۇنداق ئاددىي چۈشەنچە بېرىپ ئۆتۈپ كېتەي،مېنىڭچە بۇ پەقەت يان تېلېفون ئەپكىلا قارىتىلغان ئەمەس ،مەنمۇ بۇ تەجىربىنى بىر قانچە يىل ئەپ يېزىش ھەم باشقىلارنىڭ ھەر خىل ئۇچۇر بىخەتەرلىك جەھەتتىكى تەلەپلىرىنى ھەل قىلىش جەرياندا يىغىلغان تەجىربەمنى يەكۈنلەپ يېزىپ قويدۇم،ئەلۋەتتە بۇ پەقەت مېنىڭ ھېس قىلغانلرىم ،بىلمىگەنلار ياكى ھېس قىلمىغانلار بۇنىڭدىن كېيىن دېققەت قىلىشىنى ئۈمىد قىلمەن.
بىز بىلىمىز ،بىر قىسىم تور ئۇلىنىشلىرى(ئادىرېسلارنى دېمەكچى) بىر مەزگىل ۋاقىت ئۆتكەندىن كېيىن ئېچىلمايدىغان ياكى نورمال ئۇچۇر قايتمايدىغان ئەھۋاللار بار.
يەنە بىر قىسىم ئادىرېسلار بولسا مۇلازىمىتېرى ھەم باش تور بەت نورمال بولسا مەڭگۈ بىر خىل ئۇچۇرنى قايتۇردۇ...
مەسىلەن : سىز بەيدۇدىن تور دېسكىسىدىن مەلۇم بىر ھۆججەتنىڭ ئەسلى ئادىرېسىغا ئېرشكەن بولسىڭىز ، بىر قانچە كۈندىن كېيىن شۇ ئادىرېسنى قايتا ئاچسىڭىز ھۆججەت مەۋجۇت ئەمەس دەپ چىقۋالدۇ....
ئۇنداق بولسا ،بىز ئەپ ياساش ياكى ئۇچۇر يېزىش ھەم ئوقۇش جەرياندا مۇشۇ ئىشلارغا دېققەت قىلدۇقمۇ؟
مەن تۆۋەندە بىر كىچىك تەجىربە ئېلىپ باراي:
خەنزۇچە 抓包工具 دەپ ئىزدىسەك ،نۇرغۇن ئادىرېس تۇتىدىغان قوراللار بار .بۇنىڭ ئىچىدە مەن دائىم ئىشلىتىدىغىنى بولسا :
Windows --> Fiddler
Mac OS --> Charles
مەن نۆۋەتتە ئىشلىتىۋاتقان كومپيۇتېر سىستېمىسى ئالما شىركىتنىڭ MAC OS شۇڭا ،مەن Charles نى ئىشلەتتىم.
Charles نى ياكى باشقا مۇشۇنىڭغا ئوخشاش دېتاللارنى قاچىلاپ تەڭشەپ بولغاندىن كېيىن ،يانفوننى تورىنى مۇشۇ كومپيۇتېرنىڭ IP سىغا تەڭشەيمىز ،(مېنىڭ بۇ يەردە دېمەكچى بولغان ئاساسلىق مەقسىتم بۇ بولمىغاچقا ،قانداق تەڭشەش توغۇرلۇق مەزمۇنىلارنى تەپسىلىي يازمىدىم ،قىزىققۇچىلار توردىن ئىزدەپ ئىزدىنىپ باقسا بولدۇ)
تۆۋەندىكىسى بولسا ،مەلۇم بىر ئەپنىڭ قوزغالغاندىن كېينكى يوللىغان ھەم قوبۇل قىلغان سانلىق ئۇچۇرلىرى.
مېنىڭچە ھازىر ئۇچۇر بىخەتەرلىكى ئالاھىدە تەكىتلىنىدىغان دەۋىر ،مەيلى قانداق ئەپ بولۇشتىن قەتئىي نەزەر ،بەزى ئابونىتقا ۋەياكى ھەقلىق مەزمۇنغا مۇناسىۋەتلىك ئۇچۇرلار ئاشكارلىنىپ كەتسە ،شىركەت ياكى شەخىسكە بىۋاستە ياكى ۋاستلىك زىيان ئېلىپ كېلىشى مۇمكىن.
ئۇنداق بولسا مۇشۇنداق ئاقىۋەت چىقىشنىڭ ئالدىنى ئالغىلى بولامدۇ؟ ئەلۋەتتە بولدۇ ،گەرچە 100% بولمىسىمۇ ، لېكىن بىر قانچە خىل ئۇسۇللارنى بىرلەشتۇرۇپ ،شۇنىڭغا يېقىنلاشتۇرغىلى بولدۇ.
مېنىڭ نەچچە يىلدىن بېرى ماتىريال كۆرۈش ھەم بىر قىسىم ئۇسۇللارنى قوللىنىش جەرياندا ھېس قىلغانلىرىمنى بۇ يەرگە يېزىپ چىقىرىپ قويۇشنى لايىق تاپتىم.
بۇ ئۇسۇللار پەقەت مېنىڭ شەخسىي كۆز قارىشىم ھەرگىزمۇ چوقۇم مۇشۇنداق قىلىمىز دېگەنلىك ئەمەس ،بەلكىم سىز نۆۋەتتىكى ئېھتىياجىڭىز ھەم قابىلىيىتىڭىزغا ئاساسەن بۇنىڭدىنمۇ ياخشى ئۇسۇللارنى تېپىپ چىقىشىڭىز مۇمكىن.
مەن ئۇچۇر بىخەتەرلىكنى ئۆستۈرۈش نۇقتىسىدىن چىقىپ ئۆز ئۇسۇلىمنى چۈشەندۇرەي.
1.GET نى ئاز ئىشلىتىپ POST ئۇسۇلنى كۆپىرەك ئىشلىتىشىڭىزنى تەۋسىيە قىلىمەن.
نېمىشكە دېسىڭىز ،ھەممىمىز بىلىمىز ، GET نىڭ پارامىتىرلىرى ھەممىسى ئادىرىسقا بىۋاستە يېزىلدۇ( بەلكىم ئىپادىلەش ئۇسۇلىمدا چاتاق باردۇ ،مېنىڭچە چوقۇم چۈشەندىڭىز)،بىر مۇكەممەل تولۇق بولغان GET شەكلىدىكى ئادىرىستىن ئۇنىڭ يوللىغان پارامىتېرلىرىنى مانا مەن دەپ كۆرگىلى بولدۇ ،مۇنداق ئادىرىس نەگىلا بارمىسۇن پارامىتىرى بىللە بولدۇ ،ھەم كىشلەر ئاسان ئۆزگەرتەلەيدۇ.
لېكىن POST شەكلىدىكى ئىلتىماس ئۇسۇلى ئۇنىڭدىن سەل مۇرەككەپ ،مەخسۇس ئادىرىس كۆردىغان ،ئىلتىماس (请求) كۆرىدىغان قوراللار بىلەن كۆرمىسە ،كىشلەر بىر قاراپ ئۇنىڭ پارامېترلىرىنى كۆرگىلى بولمايدۇ.بۇنداق ئادىرىسنىڭ تارقىلىپ كېتىشىمۇ GETقا قارىغاندا تۆۋەن بولدۇ.شۇڭا ئامال بار POSTشەكلىدىكى ئىلتىماس ئۇسۇلنى قوللانغان ياخشى.ئەلۋەتتە ،بۇنىمۇ ئۆزىڭىزنىڭ ئېھتىياجىغا ئاساسەن تاللىغىنىڭىز ياخشى،بىز بۇ يەردە ئۇچۇر بىخەتەرلىك نۇقتىسىدىن چىقىپ سۆزلەۋاتقاندىن كېيىن ،ئەڭ بىخەتەر بولغان ئۇسۇلنى تەۋسىيە قىلىمىز.
2. ئەگەردە سىزنىڭ نۆۋەتتىكى ئادىرىسىڭىز پەقەت يانفوندىلا ئېچىلدىغان ئادىرىس بولسا ،ئامال بار Headerنى تەكشۇرۇپ قايسى خىل تېرمىنالدىن كەلگەنلىكى تەكشۈرۈڭ ،كومپيۇتېردىن كەلگەن بولسا بىۋاستە چەكلەڭ .
بۇنداق بولغاندا ،سىزنىڭ بىر قىسىم ئادىرىسىڭىز ئاشكارلىنىپ كەتكەن تەقدىردىمۇ ،بىر قىسىم ئاددىي كومپيۇتېر ئىشلەتكۈچىلەرنىڭمۇ بۇ ئادىرىستىن پايدىنىلىپ كېتىشنىڭ ئالدىنى ئالغىلى بولدۇ.
سىزنىڭ تارقىلىپ كەتكەن ئادىرىسىڭىز ئەگەر يانفون ئەپ ئىچىدىكى ئادىرىس بولسا ،سىز ئۇنى دەرھال چەكلىۋىتەلمەيسىز ،چۈنكى بەلكىم نۇرغۇن ئابونىتلىرىڭىز مۇشۇ ئادىرىسنى ئىشلىتىشى مۇمكىن.
3.token ياكى key نى شەكللەندۇرۇپ ، مۇلازىمىترىدا تەكشۈرۈش
بۇ دەل مەن بۇ تېمىدا ئاساسلىق قىلىپ سۆزلىمەكچى بولغان مەزمۇن. بۇنىڭ ھەر خىل ئۇسۇللىرى بار ، مەن تۆۋەندە مەن ۋە مېنىڭ نۆۋەتتىكى گۇرپپام قانداق ھەل قىلغان ھەم داۋاملىق قانداق قىلماقچى توغىرسىدا توختىلىپ ئۆتەي ،بىر قىسىم مۇشۇ توغۇرلۇق ئىزدىنىۋاتقان پىروگىرممېرلارغا ئازىراق بولسىمۇ چىقىش يولى ھەم بۇنىڭدىن كېيىن دېققەت قىلدىغان بىر نۇقتا بولۇپ قالسا ئەجەپ ئەمەس.
مەن ئالدى بىلەن بىر سىناق ئادىرىسنى قالدۇراي ،سىز تۆۋەندىكى ئادىرىسنى ئېچىپ سىناپ بېقىڭ ، نورمال ئېچىلدۇ ،لېكىن سىز پارامىتېرنى ئۆزگەرتىپ سىناپ بېقىڭ.
http://izda.zerak.biz/sinak/index1.php?action=getMenuData&time=1436343337824&key=fb4f77f772a3b7&
تۆۋەندىكىسى بولسا ،نورمال توغرا قايتقان ئۇچۇر مەزمۇنى (ئۇچۇر مەزمۇنى بولسا JSON , بەلكىم ئادەتتىكى تور كۆرگۈچتە بىۋاستە كۆرسىڭىز نورمال كۆرۈنمەسلىكى مۇمكىن ،ئەگەر شۇنداق بولسا ،مەزمۇننى كۆچۈرۈپ ،بۇ تور بېكەتتىن پايدىلىنىپ كۆرۈڭ : tool.oschina.net/codeformat/json)
ئەمدى مەن يۇقارقى ئادىرىسنىڭ خالغان بىر پارامېترنى ئۆزگەرتىپ قايتا ئىلتىماس يوللاپ باقاي
مەسىلەن مەلۇم بىر ئۇچۇر تىزىملىكى بولسا ، بەتلەرگە بۆلۈپ ئالدىغان ،ئەگەردە چەكلىمە قويمىساق ،خالغان بەتنىڭ ئادىرىسىنى تېپۋالسا ،بەلكىم ھەممە بەتنىڭ ئۇچۇرنى ئالالىشى مۇمكىن.
تۆۋەندىكىسى بولسا ،جاۋا پىروگىراممىدا ئىلتىماس قىلماقچى بولغان پارامىتېر ئۇچۇرلىرىنى شەككىلەندۇرۇش ئاددىي سىناق كودى:
- package biz.zerak.testRequest;
- import java.util.HashMap;
- import java.util.Iterator;
- public class Test1 {
- private static final String KEY = "ZerakForAppID20151002";
- /**
- * @param args
- */
- public static void main(String[] args) {
-
- try
- {
- HashMap mapParams=new HashMap();
- mapParams.put("action", "getMenuData");
- mapParams.put("time",System.currentTimeMillis()+"");
- String key=getKey(mapParams);
- mapParams.put("key",key);
- String url="index1.php?";
- Iterator iter = mapParams.keySet().iterator();
- while (iter.hasNext()) {
- String paramKey= iter.next();
- url+= paramKey+"="+mapParams.get(paramKey)+"&";
- }
- System.out.println(url);
- }
- catch(Exception ex)
- {
- System.out.println(ex.getMessage());
- }
-
- }
- private static String getKey(HashMap params) throws Exception {
- String result = "";
- try {
- StringBuffer buf = new StringBuffer();
- Iterator iter = params.keySet().iterator();
- while (iter.hasNext()) {
- String key = iter.next();
- String val = params.get(key);
- buf.append(val);
- }
- // if (buf.length() < 16) {
- // for (int i = buf.length() - 1; i < 16; i++) {
- // buf.append(i);
- // }
- // }
- String tempKey =buf+KEY; //buf.substring(2, 6) + buf.substring(8, 12) + KEY;
- String key = MD5.GetMD5Code(tempKey);
- if (key != null && key.length() == 32) {
- result = key.substring(1, 7) + key.substring(4, 12);
- } else {
- throw new Exception(
- "error:getkey error\n"
- + " نومۇر شەككىلەندۇرۇشتە خاتالىق يۈز بەردى،قايتا سىناڭ ياكى تەكشۈرۈڭ");
- }
- } catch (Exception ex) {
- throw new Exception("error:getkey error\n" + ex.getMessage());
- }
- return result;
- }
- }
مەزمۇننى كۆچۈرۈۋېلىش
MD5 شەككىلەندۇرۇش جاۋا ئۆزى بىۋاستە تەمىنلىگەن ئېغىز بولمىغانلىقتىن ، تۆۋەندىكى ئادىرىستىكى كودتىن پايدىلاندىم .(ئەمەلىي قوللىنىش جەرياندا ئۆزىڭىزنىڭ ئېھتىياجى بويچە مەخپىي سىفىرلانغان كودنى شەككلەندۇرۇش ئۇسۇلنى تاللىسىڭىز بولدۇ)
http://www.cnblogs.com/computer-lzy/archive/2011/04/28/2031649.html
يۇقىرقى كودنى ئىجىرا قىلساق (Test1.java) ، ئاخىرقى نەتىجە تۆۋەندىكىدەك : ( بەللىم سىستېمنىڭ ۋاقىت ئۆزگىرشنىڭ ئالدى كەينى تەرتىپى بويچە،مېنىڭ شەككىلەندۇرگەن كود بىلەن سىزنىڭ ئوخشىماسلىقى مۇمكىن)
ئەمدى مۇلازىمىتېردا قانداق تەكشۈرىمىز ؟ بۇنىڭ تەكشۈرۈش ئۇسۇلى ئابونىت مەركىزىدە شەككىلەندۇرگەنگە ئوخشاش .
تۆۋەندىكىسى سىناق كودى PHP)
-
- header('Content-Type: text/json; charset=utf-8');
-
- checkUser();
- function checkUser()
- {
- $paramkey=$_GET['key'];
- $paramtime=$_GET['time'];
- $buf="";
- foreach($_GET as $key=>$value)
- {
- if($key!="key")
- $buf=$buf.$value;
- }
-
- if(!isset($paramkey)||!isset($buf)||!isset($paramtime))
- {
- showError("-999");
- }
- else
- {
- $KEY = "ZerakForAppID20151002";
- $tempKey =$buf.$KEY;// substr($buf,2,4).substr($buf,5,4).substr($buf,8,4).$KEY;
- $newKey=md5($tempKey);
- $newKey= substr($newKey,1,6).substr($newKey,4,8);
- if($newKey==$paramkey)
- {
- getData();
- }
- else{
- showError("-999");
-
- }
-
-
- }
-
-
-
- }
- function showError($errorCode)
- {
- $result=array();
- $result['result']=$errorCode;
- $result['msg']="خاتا يوللانغان پارامېتېر";
- echo json_encode($result);
- exit(0);
- }
-
- function getData()
- {
-
- $result=array();
- $result['result']='0';
- $result['msg']='OK';
- $menu=array();
- //..... Bu yarga Ozigezning Sanlik Melumat Qikidigan Codeni Yezing.
- $result['menu']=$menu;
- echo json_encode($result);
-
- }
-
- ?>
مەزمۇننى كۆچۈرۈۋېلىش
يۇقارقى ئاددى بولغان بىر خىل قوشۇمچە پارامېترنى ئەۋەتىپ ، باشقىلارنىڭ قالايمىقان ئۇچۇر ئېلۋالماسلىق ياكى ئادىرىسنىڭ ئاشكارلىنىپ كەتكەن تەقدىردىمۇ مۇلازىمىتېرغا ياكى پۈتكۈل سىستېمىغا باشقا خەتەر ئېلىپ كېلىشنىڭ ئالدىنى ئالغىلى بولدۇ.
يۇقارقى ئۇسۇلدا بىر قانچە كەمچىلىك بار:
1.سىزنىڭ ئابونتىڭىز ئالاھىدە يۇقىرى بولغاندا (مەسىلەن : سىكۇنتىغا نەچچە يۈز ياكى مىڭ ئىلتىماس قوبۇل قىلدىغان ئەھۋالدا) ، بەلكىم ھېسابلاش جەرياننىڭ ئاددىي مۇرەككەپ بولۇشغا ئاساسەن ،مۇلازىمىتېرغا مەلۇم ساندىكى بېسىم ئېلىپ كېلشى مۇمكىن ،نېملا دېگەن بىلەن ئارتۇقچە ھېسابلاش
2.ئەگەر ئەپنىڭ ئىچىدىكى شەككىلەندۇرۇش كودىڭىزنى ياخشى بىر تەرەپ قىلمىسىڭىز ،بەلكىم سىزنىڭ شىفىر شەككىلەندۇردىغان كودىڭىز ئاشكارلىنىپ كېتىشى مۇمكىن ، مەسىلەن ئاندىرويىد يانفونلارنىڭ ئەپنى كەينىگە ياندۇرۇش ئۇسۇلى ئارقىلىق كودنى ئىزدەپ تېپىش دېگەندەك.
بۇنىڭ ئالدىنى ئالغىلى تامامەن بولدۇ . مەسىلەن : ئەپنى بولاقلىغاندا قالايمىقانلاشتۇرۋىتىش ، JNI قىسىمىنى ئىشلىتىش دېگەندەك
ئارتۇقچىلىقى : بەلكىم ئۇچۇرىڭىزغا ،سانلىق مەلۇماتىڭىزغا كۆڭۈل بۆلسىڭىز ،مەندىن بەكرەك ھېس قىلدىڭىز .
4.base auth ئارقىلىق تەكشۈرۈش
بۇ خىل ئۇسۇلنى بىز بۇ يىل 2-ئايدا تاشيول تىرانسىپورت باشقۇرۇش ئىدارىسىنىڭ بىر سىستېمىسىنى قىلىش جەرياندا ئىشلەتتۇق. بۇ خىل ئۇسۇل ئاساسلىق ئاۋال تىزىملىتىپ كىردىغان سىستېمىلارغا نىسبەتەن كۆپىرەك ئىشلىندۇ.مەسىلەن :مەلۇم بىر ئەپنى سىستېمىغا كىرمىسە ئىشلەتكىلى بولمىسا ،مۇشۇنداق ئەپلەرگە مۇشۇ خىل تەكشۈرۈش ئۇسۇلنى ئىشلىتشنى تەۋسىيە قىلمەن.
ئەمەليەتتە بۇ خىل ئۇسۇلمۇ پارامېتر يوللاپ تەكشۈرۈشنىڭ بىر خىل ئۇسۇلى ...
بۇنىڭدىن باشقا نۇرغۇن ئۇسۇللار بولىشى مۇمكىن ، ھازىر ئاندىرويد يانفون ئەپلىرىنىڭ ،توردا پۇل تۆلەش ،ئىش بېجىرىش ئۇسۇللىرنىڭ قولايلىق بولشىغا ئەگىشىپ يانفون ،تور بەت جەھەتتىكى بىخەتەرلىك مەسىلىسى ،بىر ئەپ ياكى تور بەت ياسايدىغان شىركەت ۋە ياكى شەخسىكە نىسبەتەن بىر مۇھىم نۇقتا بولۇپ قېلۋاتىدۇ...
كۆپچىلىكنىڭ بۇنىڭدىن باشقا ئۇسۇللىرى بولسا ،مۇشۇ تېما ئاستىغا ئورتاقلىشىشنى ئۈمىد قىلمەن.
ھۆرمەت بىلەن : سابىرجان.نائىل
شىنجاڭ زېرەك يۇمشاق دېتال شىركىتى بىزنىڭ كۈچلۈك قوشۇنىمىزغا قوشۇلۇپ ،كەلگۈسىدىكى ئارزۇ -ئارمانلىرىڭىزنى ئەمەلگە ئاشۇرشقا چاقىردۇ!
2015- يىل ئىيۇل
---------------------------------------------------------------------------------------------------
ئەسكەرتىش : بۇ پەقەت ئالدىنى ئېلىش ئۈچۈن سۆزلەنگەن ئاددىي دەرسلىك ،سىز بۇنىڭىدىن پايدىلىنىپ باشقىلارنىڭ ئەجىرنى قوچۇپ يۇرمەسلىكىڭىزنى ئۈمىد قىلمەن.
تېما مەزمۇنى سەل چولتا بولۇپ قالدى ،بۇ تېمىنىمۇ نەچچە كۈنگە بۆلۈپ يازدىم
ئىشلەتكەن بىر قىسىم سىناق ھۆججەتلەرنى قوشۇمچە ھۆججەت شەكلىدە يوللاپ قويدۇم.
|
باھالاش
-
باھا خاتىرىسى
|