クラスノダールの市長になる方法





ご想像のとおり、この記事ではFoursquareに焦点を当てます。



Foursquareの統計は印象的です。 ロシアだけでも、100万人がこのソーシャルネットワークを使用しています。 隣人がこのチェックインカードで 4sqを使用しているかどうかを確認できます。



主要な「チップ」4sqの1つはバッジです。これは、さまざまな場所を訪れることで得られる特別な成果です。

合計で多くのバッジがあります。







しかし、私たちは非常に具体的なバッジに興味を持っています-市長のバッジ。



市長バッジは、1か所で定期チェックインの最大回数を持つユーザーに発行されます。

次の2つのことが価値をもたらします。



1.市長のアバターがその場所のページに表示されます(その場所が人気がある場合、非現実的なクールになります!);

2.市長の場合、多くの場合、さまざまな割引やプロモーションがあります。







市長になるには何が必要ですか(EPのメンバーシップを除く)。





さらに、4sqにはフラッディングに対する保護があります。





実生活と同様に、市長になるには、「クラシック」オプションをバイパスするいくつかの方法があります。 これについてさらに説明します。



最初の方法。 偽のGPS座標。



小切手を市長のために「カウント」するためには、必要な地理オブジェクトを直接見つけなければなりません。 これを行う最も簡単な方法は、GPSの動作をエミュレートする電話でユーティリティを実行することです。







この方法の利点は、正しいチェックが100%保証されることです。 短所-100%手作り。



2番目の方法。 開発者API。



4sq開発者APIを介してサーバーにコマンドを直接送信できるのに、なぜ電話をモックするのでしょう!







残念ながら、DevAPIでの作業中に、POSTリクエストのユーザー-エージェントカーブ、ドキュメント化されていないパラメーターが欠落し、最も重要なことに、この方法で受信したチェックは市長にカウントされません(明らかに、同じユーザー用のフィルターがあります)エージェント)。



3番目の最後の方法。 スマートフォンのなりすまし。



Instagramとは異なり、4sqは安全なhttps接続を使用して動作します。 したがって、デバイスとサーバー間のすべてのトラフィックは暗号化されます。

電話からのhttpsトラフィックを傍受するには、次のものが必要です。



PortSwigger CAを電話のユーザー証明書ストアに追加し(そこから削除することを忘れないでください)、PCのBurp Suiteでプロキシモードをオンにし、電話のProxyDroidでプロキシ設定を指定し、プロキシを介してすべてのトラフィックをラップします。



このスキームでは、Burp Suiteがhttps接続でMITM攻撃を実行し、証明書ストア内の信頼できるBurp CA証明書により、電話機がそれを検出できなくなります。



その結果、電話機と4sqサーバーの間のHTTPSトラフィックは明確になります。







すぐに目を引くのは、DeveloperAPIに文書化されていない一連のパラメーター(メトリック、CheckinComposeActivity、VenueActivityなど)が存在することです。 私はそれらがなぜ必要なのか理解していません...

Burpのクエリジェネレーターを使用すると、再パッケージ化によって再チェックが行われることがわかります=>切望されている投稿から一歩離れました!



AutoCheckを起動します



チェックインプロセスを自動化するために、Linuxファームウェアとcronでホームルーターを使用することにしました。

クラスノダール準州の管理におけるチェック用の最後のbashスクリプトは次のようになります。



#! /bin/bash curl -k -X POST \ "https://api.foursquare.com/v2/checkins/add" \ -H "Accept-Language: en-US" \ -H "Accept-Encoding: gzip" \ -H "Connection: Keep-Alive" \ -H "Content-Type: application/x-www-form-urlencoded" \ -H "Host: api.foursquare.com" \ --user-agent "com.foursquare.android:2013040200:20130402:4.2.2:GT-I9100:release" \ --data "ll=45.0247440%2C38.9695560&llAcc=27.0&venueId=4bc4419874a9a593308fd5f6&shout=&broadcast=public&oauth_token=<bla-bla-bla>&v=20130402"
      
      





ここで、llはジオオブジェクトの緯度と経度(Googleマップで確認できます)、AccはGPS精度(メートル)、venueIdはジオオブジェクトの識別子です(4sq Webサイト上のオブジェクトのWebページのアドレスバーを見ると確認できます)、oauth_tokenは秘密キーですこれは、Burpスイートを使用したダンプパッケージ、またはDeveloperAPI(ログインして、Try it out!ボタンを使用してテストリクエストを送信)で確認できます。

最後のパラメーターは、Oauth_tokenがサーバーによって生成された日付です。 ご覧のとおり、4月のトークンはまだ生きています。



いくつかのbashスクリプトでcronを開始した後、私はすでにfoursquareについて忘れていました。 したがって、市と地域の市長が同時にメーデーを目覚めるのは特に楽しかったです。










All Articles