<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>抓包 on 阿珏酱のBlog</title>
    <link>https://zh.moejue.cn/ja/tags/%E6%8A%93%E5%8C%85/</link>
    <description>Recent content from 阿珏酱のBlog</description>
    <generator>Hugo</generator>
    <language>ja</language>
    
    <managingEditor>xxx@example.com (MoeJue)</managingEditor>
    <webMaster>xxx@example.com (MoeJue)</webMaster>
    
    <copyright>本ブログのすべての文書は、特に指定されていない限り、BY-NC-SAライセンスに従っています。引用の際は出典を明記してください！</copyright>
    
    <lastBuildDate>Thu, 17 Oct 2024 01:09:54 +0000</lastBuildDate>
    
    
    <atom:link href="https://zh.moejue.cn/ja/tags/%E6%8A%93%E5%8C%85/index.xml" rel="self" type="application/rss&#43;xml" />
    

    
    

    <item>
      <title>マルチプラットフォーム記事同期ブラウザ拡張機能 - ArticleSync</title>
      <link>https://zh.moejue.cn/ja/posts/218/</link>
      <pubDate>Wed, 16 Oct 2024 11:02:49 &#43;0000</pubDate>
      <author>xxx@example.com (MoeJue)</author>
      <guid>https://zh.moejue.cn/ja/posts/218/</guid>
      <description>
        <![CDATA[<h1>マルチプラットフォーム記事同期ブラウザ拡張機能 - ArticleSync</h1><p>著者: MoeJue(xxx@example.com)</p>
        
          <h2 id="articlesync---マルチプラットフォーム記事同期プラグイン">
<a class="header-anchor" href="#articlesync---%e3%83%9e%e3%83%ab%e3%83%81%e3%83%97%e3%83%a9%e3%83%83%e3%83%88%e3%83%95%e3%82%a9%e3%83%bc%e3%83%a0%e8%a8%98%e4%ba%8b%e5%90%8c%e6%9c%9f%e3%83%97%e3%83%a9%e3%82%b0%e3%82%a4%e3%83%b3"></a>
ArticleSync - マルチプラットフォーム記事同期プラグイン
</h2><p>ArticleSyncは、ユーザーが複数のソーシャルプラットフォームに記事を簡単に同期・公開できるブラウザ拡張機能です。ローカルの下書きから、知乎（Zhihu）やBilibiliなどの主要プラットフォームに記事を公開することをサポートしています。これにより、異なるソーシャルメディアプラットフォーム間で記事を同期する作業が、シンプルかつ効率的になるワンストップソリューションを提供します。</p>
<p>ブラウザ拡張機能の仕組みに基づき、ローカルでログインしているアカウントを自動的に検出し、アカウント情報の漏洩や環境の異常といったリスクを防ぎます。</p>
<p>Chrome Manifest V3ブラウザ拡張機能の標準に基づいて開発されており、カーネルのバージョン要件にご注意ください。</p>
<h3 id="背景">
<a class="header-anchor" href="#%e8%83%8c%e6%99%af"></a>
背景
</h3><p>ご存知の通り、私は最近、いくつかのブログプラットフォームと多くのソーシャルサイトを新たに使い始めました。もし、それらすべてで活発に更新を続けたいと思ったらどうすればいいでしょうか。（私がまだ生きていることを証明するために）ついでに、ワンクリックで記事を転載することもできます。</p>
<p>私が最も頻繁に更新するのは自分の小さなサイトですが、他のプラットフォームはたまにしか更新しません。しかし、毎回手動で投稿するのは面倒です。そこで、ローカルでログインしているアカウントを自動検出し、自動で投稿してくれるプラグインが作れないかと考えました。</p>
<p>「自分のことは自分でやる」ということわざの通り、数日間いじくり回して、なんとか使えるものができました。残りの部分は時間があるときに更新します。お金をくれるなら話は別ですが。</p>
<p>このプラグインにはまだ多くの未完成な部分があり、本番環境で複数のプラットフォームでのテストも行っていません。エラーが発生するのはごく普通のことですので、その際はIssueを提出するか、自分で修正してPRを送ってください。てへぺろ〜</p>
<p>話の邪魔にならないように、スクリーンショットは最後に載せておきました。</p>
<p>それと、オープンソースは大変なので、スターを付けてくれると嬉しいです。へへへ〜</p>
<p>本当は、私のコミュニティプラットフォームを自動でフォローするような、個人的な機能を追加しようかとも思いました。</p>
<h3 id="機能と特徴">
<a class="header-anchor" href="#%e6%a9%9f%e8%83%bd%e3%81%a8%e7%89%b9%e5%be%b4"></a>
機能と特徴
</h3><ul>
<li><strong>マルチプラットフォーム対応</strong>：知乎（Zhihu）、Bilibiliなどの主要プラットフォームや、自作のオープンソースCMSシステムをサポートしています。</li>
<li><strong>ステータス追跡</strong>：プラグインのインターフェースで記事の同期状況を確認できます。</li>
<li><strong>アカウント管理</strong>：プラグインに連携されている各プラットフォームのアカウント情報を確認できます。</li>
<li><strong>高い拡張性</strong>：開発者はアダプターパターンを通じて、簡単により多くのプラットフォームに拡張できます。</li>
<li><strong>安全性と信頼性</strong>：ブラウザ拡張機能の仕組みに基づいているため、アカウントの安全性を確保し、情報漏洩などのリスクを回避します。</li>
</ul>
<h3 id="todoリスト">
<a class="header-anchor" href="#todo%e3%83%aa%e3%82%b9%e3%83%88"></a>
Todoリスト
</h3><ul>
<li>[ ] 独立した記事エディタ</li>
<li>[ ] 画像のワンクリック同期</li>
<li>[x] MarkdownとHTMLの相互変換</li>
<li>[ ] サードパーティの画像ホスティングサービス</li>
<li>[ ] 複数アカウント管理</li>
<li>[ ] マルチOSクライアントバージョン</li>
<li>[ ] ワンクリックAI要約</li>
<li>[ ] 動画の同期</li>
<li>[ ] タグ、カテゴリのサポート</li>
<li>[ ] より親切なエラーハンドリング</li>
<li>[ ] より多くのプラットフォームへの対応</li>
</ul>
<h3 id="対応プラットフォーム">
<a class="header-anchor" href="#%e5%af%be%e5%bf%9c%e3%83%97%e3%83%a9%e3%83%83%e3%83%88%e3%83%95%e3%82%a9%e3%83%bc%e3%83%a0"></a>
対応プラットフォーム
</h3><table>
  <thead>
      <tr>
          <th style="text-align: left">メディア</th>
          <th style="text-align: left">カテゴリ</th>
          <th style="text-align: left">ステータス</th>
          <th style="text-align: left">URL</th>
          <th style="text-align: left">対応形式</th>
          <th style="text-align: left">更新日時</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td style="text-align: left">Bilibili (哔哩哔哩)</td>
          <td style="text-align: left">主要セルフメディア</td>
          <td style="text-align: left">対応済み</td>
          <td style="text-align: left"><a href="https://bilibili.com/">https://bilibili.com/</a></td>
          <td style="text-align: left">HTML</td>
          <td style="text-align: left">2024/10/13</td>
      </tr>
      <tr>
          <td style="text-align: left">知乎 (Zhihu)</td>
          <td style="text-align: left">主要セルフメディア</td>
          <td style="text-align: left">対応済み</td>
          <td style="text-align: left"><a href="https://www.zhihu.com/">https://www.zhihu.com/</a></td>
          <td style="text-align: left">HTML</td>
          <td style="text-align: left">2024/10/13</td>
      </tr>
      <tr>
          <td style="text-align: left">博客园 (Cnblogs)</td>
          <td style="text-align: left">ブログ</td>
          <td style="text-align: left">対応済み</td>
          <td style="text-align: left"><a href="https://cnblogs.com/">https://cnblogs.com/</a></td>
          <td style="text-align: left">HTML</td>
          <td style="text-align: left">2024/10/14</td>
      </tr>
      <tr>
          <td style="text-align: left">新浪头条 (Sina Headline)</td>
          <td style="text-align: left">主要セルフメディア</td>
          <td style="text-align: left">対応済み</td>
          <td style="text-align: left"><a href="https://weibo.com/">https://weibo.com/</a></td>
          <td style="text-align: left">HTML</td>
          <td style="text-align: left">2024/10/14</td>
      </tr>
      <tr>
          <td style="text-align: left">Emlog</td>
          <td style="text-align: left">オープンソースCMS</td>
          <td style="text-align: left">対応済み</td>
          <td style="text-align: left"><a href="https://www.emlog.net/">https://www.emlog.net/</a></td>
          <td style="text-align: left">HTML</td>
          <td style="text-align: left">2024/10/14</td>
      </tr>
      <tr>
          <td style="text-align: left">WordPress</td>
          <td style="text-align: left">オープンソースCMS</td>
          <td style="text-align: left">対応済み</td>
          <td style="text-align: left"><a href="https://cn.wordpress.org/">https://cn.wordpress.org/</a></td>
          <td style="text-align: left">HTML,Markdown</td>
          <td style="text-align: left">2024/10/14</td>
      </tr>
      <tr>
          <td style="text-align: left">Discuz!</td>
          <td style="text-align: left">オープンソースCMS</td>
          <td style="text-align: left">対応済み</td>
          <td style="text-align: left"><a href="https://www.discuz.vip/">https://www.discuz.vip/</a></td>
          <td style="text-align: left">Markdown,Text</td>
          <td style="text-align: left">2024/10/15</td>
      </tr>
  </tbody>
</table>
<h3 id="インストール手順">
<a class="header-anchor" href="#%e3%82%a4%e3%83%b3%e3%82%b9%e3%83%88%e3%83%bc%e3%83%ab%e6%89%8b%e9%a0%86"></a>
インストール手順
</h3><ol>
<li>
<p>リポジトリをローカルにクローンします：</p>
        
        <hr><p>この記事は2024-10-16に<a href='https://zh.moejue.cn/'>阿珏酱のBlog</a>で公開され、最終更新日は2024-10-17です</p>]]>
      </description>
      
        <category>折腾代码</category>
      
    </item>
    
    

    <item>
      <title>Discuz!フォーラム 個人スペースのCSSカスタマイズ</title>
      <link>https://zh.moejue.cn/ja/posts/109/</link>
      <pubDate>Tue, 24 Mar 2020 13:23:51 &#43;0000</pubDate>
      <author>xxx@example.com (MoeJue)</author>
      <guid>https://zh.moejue.cn/ja/posts/109/</guid>
      <description>
        <![CDATA[<h1>Discuz!フォーラム 個人スペースのCSSカスタマイズ</h1><p>著者: MoeJue(xxx@example.com)</p>
        
          <p>先日、暇だったのでDiscuzフォーラムの脆弱性を探してみたところ、本当に見つかりました。ついでにツールを作成し、勢いでこの記事を書いています。
以下が事の経緯です。
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2020/03/24/0072Vf1ply1gd4tebhwgwj309s0aojss.jpg" alt="">
この脆弱性はウェブサイトに大きな危害を与えるものではなく、個人スペースのCSSスタイルをカスタマイズできるだけで、サイトのデータに脅威を与えることはありませんので、ご安心ください。</p>
<p>このツールを使えば、Discuzの個人スペースのCSSスタイルをカスタマイズでき、個人スペースを豊かに美化し、単調さをなくすことができます。</p>
<ul>
<li>テストしたDiscuzのバージョンはX3.4です。他のバージョンはご自身でテストしてください。</li>
<li>全球主机交流论坛（管理人さん、お許しを）でのみテストしました。同じバージョンのDiscuzであれば理論上は共通で使えるはずです。</li>
<li>個人スペースが開設されていないフォーラムでは使用できません。</li>
<li>カスタムCSSは多すぎないようにし、失敗を避けるために一行に圧縮することをお勧めします。</li>
<li>プロトコルヘッダーは通常、変更する必要はありません。テキストボックスを設置したのは、主に拡張性を考慮したためです。</li>
<li>もしlocフォーラムで操作する場合、デフォルトで阿珏ちゃんをフォローし、友達に追加します。[#手動でニヤリ + 保身のための犬アイコン]</li>
</ul>
<p>本ソフトウェアはローカルでリクエストを送信するのみで、サーバーにデータをアップロードすることはありません。
ソフトウェアはパック（圧縮・暗号化）されているため、ウイルス対策ソフトが誤検知する可能性がありますが、安心してご使用ください<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2020/03/24/0072Vf1ply1gd46ipbb1uj30jl0drac8.jpg" alt="">
<strong>Cookieの取得</strong></p>
<hr>
<ul>
<li>ブラウザで開発者ツール（F12）を開き、対象のウェブサイトにアクセスします。ログイン状態であればどのページでも構いません。開発者ツールで「Network」タブに切り替え、ページを更新（F5）します。現在のドメインのリクエストデータを見つけてクリックし、「Headers」タブの「Request Headers」にあるcookieを探します。皆さんが私の言っていることを理解できないだろうと思ったので、特別に図を用意しました。</li>
</ul>
<blockquote>
<p><img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2020/03/24/0072Vf1ply1gd47v5klf2j30iq0hhjw1.jpg" alt=""></p>
</blockquote>
<ul>
<li>2つ目の方法はより簡単で迅速ですが、どのcookieが必要か分かっている場合に適しています。下の図のように操作します。</li>
</ul>
<blockquote>
<p><img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2020/03/24/0072Vf1ply1gd47uobcsaj30nj0ammz9.jpg" alt=""></p>
</blockquote>
<p>1つ目の方法で使う開発者ツールは、以前のブログ記事でも使用しましたが、cookieの取得方法については説明していませんでした。やはり1つ目の方法をお勧めします。cookieは多くても問題ありませんが、少ないと動作しません。
<strong>免責事項</strong></p>
<hr>
<ol>
<li>
<p>本ソフトウェアは学習と交流のみを目的としています！</p>
</li>
<li>
<p>本ソフトウェアの作者は一切の責任を負いません！</p>
</li>
<li>
<p>本ソフトウェアを使用した場合、本規約に同意したものとみなします！</p>
</li>
</ol>
<p><strong>ダウンロード</strong></p>
<hr>
<p>以下のダウンロードスタイルは何年も使っていませんでしたが、今日ついに復活させました。
.down_link{background:url(&lsquo;<a href="https://www.52ecy.cn/content/uploadfile/201707/md-bg.jpeg%27">https://www.52ecy.cn/content/uploadfile/201707/md-bg.jpeg'</a>) no-repeat 100% 0% #fffdff; border: 1px solid #faf8fb; border-radius: 2px; color: #666; font-size: 14px; margin-bottom: 10px; padding: 5px 20px;}.downbtn{background: none repeat scroll 0 0 #1BA1E2; border: 0 none; border-radius: 2px; color: #FFFFFF; cursor: pointer; font-family: &ldquo;Open Sans&rdquo;,&ldquo;Hiragino Sans GB&rdquo;,&ldquo;Microsoft YaHei&rdquo;,&ldquo;WenQuanYi Micro Hei&rdquo;,Arial,Verdana,Tahoma,sans-serif; font-size: 14px; margin: -4px 20px 0 0; padding: 8px 30px;text-transform:none;text-decoration:none;} .downlink a{text-decoration:none;} .downlink a{text-decoration:none;font-size:15px;} .downlink a:link{color: #ffffff;} .downlink a:visited{color: #ffffff;} .downlink a:hover{color: #ffffff;} .downlink a:active{color: #ffffff;} .downbtn{background: none repeat scroll 0 0 #1BA1E2; border: 0 none; border-radius: 2px; color: #FFFFFF !important; cursor: pointer; font-family: &ldquo;Open Sans&rdquo;,&ldquo;Hiragino Sans GB&rdquo;,&ldquo;Microsoft YaHei&rdquo;,&ldquo;WenQuanYi Micro Hei&rdquo;,Arial,Verdana,Tahoma,sans-serif; font-size: 14px; margin: -4px 20px 0 0; padding: 8px 30px;} .yanshibtn{background: none repeat scroll 0 0 #d33431; border: 0 none; border-radius: 2px; color: #FFFFFF!important; cursor: pointer; font-family: &ldquo;Open Sans&rdquo;,&ldquo;Hiragino Sans GB&rdquo;,&ldquo;Microsoft YaHei&rdquo;,&ldquo;WenQuanYi Micro Hei&rdquo;,Arial,Verdana,Tahoma,sans-serif; font-size: 14px; margin: -4px 20px 0 0; padding: 8px 30px;text-transform:none;text-decoration:none;} .downbtn:hover,.yanshibtn:hover{background: none repeat scroll 0 0 #9B59B6; border: 0 none; border-radius: 2px; color: #FFFFFF!important; cursor: pointer; font-family: &ldquo;Open Sans&rdquo;,&ldquo;Hiragino Sans GB&rdquo;,&ldquo;Microsoft YaHei&rdquo;,&ldquo;WenQuanYi Micro Hei&rdquo;,Arial,Verdana,Tahoma,sans-serif; font-size: 14px; margin: -4px 20px 0 0; padding: 8px 30px;} .downbtn a:hover,.yanshibtn a:hover{background: none repeat scroll 0 0 #9B59B6; border: 0 none; border-radius: 2px; color: #FFFFFF; cursor: pointer; font-family: &ldquo;Open Sans&rdquo;,&ldquo;Hiragino Sans GB&rdquo;,&ldquo;Microsoft YaHei&rdquo;,&ldquo;WenQuanYi Micro Hei&rdquo;,Arial,Verdana,Tahoma,sans-serif; font-size: 14px; margin: -4px 20px 0 0; padding: 8px 30px;}</p>
        
        <hr><p>この記事は2020-03-24に<a href='https://zh.moejue.cn/'>阿珏酱のBlog</a>で公開され、最終更新日は2020-03-24です</p>]]>
      </description>
      
        <category>折腾代码</category>
      
    </item>
    
    

    <item>
      <title>ウェブパケットキャプチャ - 私のプレイリスト</title>
      <link>https://zh.moejue.cn/ja/posts/31/</link>
      <pubDate>Tue, 05 Jun 2018 11:04:05 &#43;0000</pubDate>
      <author>xxx@example.com (MoeJue)</author>
      <guid>https://zh.moejue.cn/ja/posts/31/</guid>
      <description>
        <![CDATA[<h1>ウェブパケットキャプチャ - 私のプレイリスト</h1><p>著者: MoeJue(xxx@example.com)</p>
        
          <p>最近、多くの人のブログでウェブスクレイピング（パケットキャプチャ）のチュートリアルが公開されているのを見かけ、それが私の興(きょう)味(み)（かっこつけ）を刺激し、この記事が生まれました。</p>
<p>ちょうど先日、<a href="https://music.52ecy.cn/">私のプレイリスト</a>がKuGouのAPIとの連携が機能しなくなりました。この機会に修正し、ついでに画像付きのチュートリアルを作成することにしました。というわけで、KuGouを「メスを入れる（分析対象にする）」ことにします。</p>
<p>パケットキャプチャの概念について</p>
<blockquote>
<p>パケットキャプチャ（packet capture）とは、ネットワークで送受信されるデータパケットを傍受、再送信、編集、保存などの操作を行うことであり、ネットワークセキュリティのチェックにも使われます。また、データの傍受などにも頻繁に利用されます。</p>
<p>——ゲイ百科より</p>
</blockquote>
<p>ここで話すのは、ウェブページで送受信されるデータの傍受であり、再送信や編集など、ネットワークセキュリティに影響を与える操作は含みません。
実は<a href="https://www.52ecy.cn/tag/%E6%8A%93%E5%8C%85">パケットキャプチャ</a>に関する記事は、2016年にはすでに複数公開していましたが、記事が古くなりメンテナンスされていないため、画像は失われたり、破損したり、順序がめちゃくちゃになっています。
ウェブ開発者、特にバックエンド開発者にとって、パケットキャプチャはあまり馴染みがないかもしれません。しかし、私はデスクトップアプリケーション開発出身なので、使うのはお手の物です。</p>
<p>目的：</p>
<blockquote>
<p>KuGouの楽曲直リンクの解析 - 私のプレイリストの修正</p>
</blockquote>
<p>対象サイト：</p>
<blockquote>
<p><a href="http://t.kugou.com/1md5hf5t8V2">http://t.kugou.com/1md5hf5t8V2</a> KuGouの私のプレイリスト共有短縮URL</p>
</blockquote>
<p>使用ツール：</p>
<blockquote>
<p>Google ChromeのF12キー（または Ctrl + Shift + I、または右クリック &gt; 「検証」）開発者ツール</p>
</blockquote>
<p>（注意：以下のチュートリアルは画像と合わせてご覧ください。見えにくい場合は右クリックで新しいウィンドウで画像を開いてください）
ここではモバイル版のページをキャプチャします。なぜならPC版ではプレイリスト全体が直接ソースコードに返されるため、解析が不便だからです。モバイル版ではJSONが返されます。
Preserve Log：ページ遷移後も以前のログを保持する機能
左上隅の携帯電話アイコン：現在のブラウジングインターフェースのUAをモバイルUAに切り替える
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2018/06/05/0072Vf1pgy1fs0iyxmmr1j30nz0fl0u2.jpg" alt="">
URLを入力してEnterキーを押しアクセスすると、ウェブページがリダイレクトされます。
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2018/06/05/0072Vf1pgy1fs0iybcesaj314p0arn2j.jpg" alt="">
ステータスコード302、リダイレクトアドレスを取得（必ず画像を確認してください。テキストの説明は簡略化されています）
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2018/06/05/0072Vf1pgy1fs0iyb1qhdj30w00amjt6.jpg" alt="">
パケットキャプチャはここまでで終了です。以下、分析を開始します：
確かなのは、KuGouサイトの音楽リンクは決して固定ではないということです。
これまでの経験からすると、これらはすべて疑わしいパラメータです。
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2018/06/05/0072Vf1pgy1fs0j14h87ij30qr0bdmya.jpg" alt="">
パケットキャプチャログを丹念に探すと、プレイリスト全体の取得方法である<code>list</code>が見つかりました。そして、楽曲の基本情報も含まれています。
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2018/06/05/0072Vf1pgy1fs0iybbzb2j312a0e8afo.jpg" alt="">
<code>list</code>リンクを分析すると、ここのパラメータは以前のものと非常によく似ていることが明らかです。
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2018/06/05/0072Vf1pgy1fs0iyb4b7bj30q50adwel.jpg" alt="">
次に、各楽曲のリンクを分析します。
楽曲の直リンクの有効期限はだいたい24時間程度で、無効になります。
引き続きパケットキャプチャログを確認します。
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2018/06/05/0072Vf1pgy1fs0iyc2p8aj314a0ecn23.jpg" alt="">
楽曲のハッシュ値を含めることで、楽曲の関連情報と直リンクを取得できます（ハッシュ値は前述の楽曲リストですでに返されています）。
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2018/06/05/0072Vf1pgy1fs0iza7xskj30mg06h3yi.jpg" alt=""></p>
<p>まとめ：</p>
<blockquote>
<p>短縮URL -&gt; ウェブリンクパラメータ -&gt; プレイリストの取得 -&gt; 楽曲の取得 （段階的に、前のステップで得られたパラメータを使って次のURLにアクセスします）</p>
</blockquote>
<p>関連コードは自分で書いてくださいね&hellip;.-。-
このようなチュートリアル性の高い記事を投稿するのは久しぶりです。
最後に一言、Google開発者ツールは本当にめちゃくちゃ便利！
ちょっとした記事を書いて、逃げる〜〜</p>
<p>関連推奨記事
（1）<a href="https://mkblog.cn/492/">PHPを使ってBingの今日の画像をスクレイピングし、自分のものとして利用する</a>.孟坤ブログ.
（2）<a href="https://mkblog.cn/1273">パケットキャプチャ入門（一）</a>
関連コード
（1）<a href="https://www.youngxj.cn/507.html">KuGouプレイリストの楽曲情報取得インターフェースのソースコード</a></p>
        
        <hr><p>この記事は2018-06-05に<a href='https://zh.moejue.cn/'>阿珏酱のBlog</a>で公開され、最終更新日は2018-06-05です</p>]]>
      </description>
      
        <category>教程</category>
      
    </item>
    
    

    <item>
      <title>58都市ログイン（RSAアルゴリズム）</title>
      <link>https://zh.moejue.cn/ja/posts/16/</link>
      <pubDate>Wed, 23 Nov 2016 08:27:09 &#43;0000</pubDate>
      <author>xxx@example.com (MoeJue)</author>
      <guid>https://zh.moejue.cn/ja/posts/16/</guid>
      <description>
        <![CDATA[<h1>58都市ログイン（RSAアルゴリズム）</h1><p>著者: MoeJue(xxx@example.com)</p>
        
          <p>58都市ログイン（RSAアルゴリズム）</p>
<p>この時。もう一つの素晴らしいログインアルゴリズム分析</p>
<p>宛先アドレス:
<a href="https://passport.58.com/login">https://passport.58.com/login</a>?（同市内58件）
使用したツール:
js デバッグ ツール (私はフォーラムから改造された、比較的インテリジェントな js デバッグ ツールを使用しています)
パケットキャプチャツール（今回はキーワード検索を便利にするためにブラウザのF12を直接使用しました）</p>
<p>ヒント: この記事は 1 年前に公開され、荒廃してしまったので、画像のコンテンツは失われています。</p>
        
        <hr><p>この記事は2016-11-23に<a href='https://zh.moejue.cn/'>阿珏酱のBlog</a>で公開され、最終更新日は2016-11-23です</p>]]>
      </description>
      
        <category>教程</category>
      
    </item>
    
    

    <item>
      <title>新浪微博动态 RSA 分析图文&#43;登录</title>
      <link>https://zh.moejue.cn/ja/posts/13/</link>
      <pubDate>Wed, 12 Oct 2016 06:50:19 &#43;0000</pubDate>
      <author>xxx@example.com (MoeJue)</author>
      <guid>https://zh.moejue.cn/ja/posts/13/</guid>
      <description>
        <![CDATA[<h1>新浪微博动态 RSA 分析图文+登录</h1><p>著者: MoeJue(xxx@example.com)</p>
        
          <p>新浪微博动态 RSA 分析</p>
<p>一、使用到的工具</p>
<ol>
<li>ie ブラウザ (9 以上)</li>
<li>httpwatch (中英どちらでも可)</li>
<li>js デバッグツール</li>
</ol>
<p>対象サイト: <a href="http://weibo.com/">http://weibo.com</a> (新浪微博)</p>
<p>二、パケットキャプチャ
前回のパケットキャプチャの流れを踏襲します。良い習慣を身につけましょう。ここでは詳しく説明しません。
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/10/12/0072Vf1pgy1fqh2ixqxrdj30m808p421.jpg" alt="">
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/10/12/0072Vf1pgy1fqh2ixmpmdj30ja06r3z4.jpg" alt=""></p>
<p><img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/10/12/0072Vf1pgy1fqh2ixpef1j30m60azgn3.jpg" alt="">
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/10/12/0072Vf1pgy1fqh2ixrm8wj30k008rdgm.jpg" alt=""></p>
<p><img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/10/12/0072Vf1pgy1fqh2ixw3l7j30m806eq5d.jpg" alt="">
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/10/12/0072Vf1pgy1fqh2ixyrvuj30m80fvtfm.jpg" alt="">
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/10/12/0072Vf1pgy1fqh2iy8lk3j30jb07uwf9.jpg" alt="">
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/10/12/0072Vf1pgy1fqh2iy9zgtj30kv089aan.jpg" alt="">
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/10/12/0072Vf1pgy1fqh2iycexlj30m807w0ve.jpg" alt="">
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/10/12/0072Vf1pgy1fqh2iymkxpj30m80fkq6d.jpg" alt="">
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/10/12/0072Vf1pgy1fqh2iysq5qj30et06bwev.jpg" alt="">
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/10/12/0072Vf1pgy1fqh2iyxgegj30m80a8gnz.jpg" alt="">
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/10/12/0072Vf1pgy1fqh2iz51cqj30gc08175d.jpg" alt="">
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/10/12/0072Vf1pgy1fqh2iz6tvrj30ip0fut9z.jpg" alt="">
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/10/12/0072Vf1pgy1fqh2iz8pi3j30m807ewf0.jpg" alt="">
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/10/12/0072Vf1pgy1fqh2izftdtj30ku05yjs4.jpg" alt="">
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/10/12/0072Vf1pgy1fqh2izoqdrj30kh05cgm5.jpg" alt="">
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/10/12/0072Vf1pgy1fqh2izr82ij30hh0e5400.jpg" alt="">
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/10/12/0072Vf1pgy1fqh2izvdnzj30h403o74o.jpg" alt="">
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/10/12/0072Vf1pgy1fqh2j02n8yj30m8030mye.jpg" alt=""></p>
<p>三、パケットキャプチャデータの分析</p>
<ol>
<li>
<p>ログイン送信パケットを特定する</p>
</li>
<li>
<p>キーワード検索の柔軟な変更</p>
</li>
</ol>
<p>五、js デバッグ四、キーワードの検索</p>
<ol>
<li>
<p>HttpWatch でキーワードを検索できます。
ie の F12 で引き続き検索することもできます。</p>
</li>
<li>
<p>pwencode キーワードを検索する</p>
</li>
<li>
<p>ここは前回と異なります。まず呼び出しコードをコピーして簡単な書き換えを行います。
コピーしたコードは function() 関数ではありません。易言語のサブプログラムのようなものです。
(ここでの説明は誤っている可能性があります)
3つのパラメータがあります。p がパスワードであることはわかっています。残りの2つは開発者ツールで確認します。</p>
</li>
</ol>
<p>六、図解による分析
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/10/12/0072Vf1pgy1fqh2j0d0tpj30m80elwkm.jpg" alt="">
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/10/12/0072Vf1pgy1fqh2j05q0ej30jz0bx3zu.jpg" alt=""></p>
<p>何か間違いがあればご指摘ください。</p>
        
        <hr><p>この記事は2016-10-12に<a href='https://zh.moejue.cn/'>阿珏酱のBlog</a>で公開され、最終更新日は2016-10-12です</p>]]>
      </description>
      
        <category>教程</category>
      
    </item>
    
    

    <item>
      <title>中国電信ログインRSAアルゴリズム&#43;図解分析</title>
      <link>https://zh.moejue.cn/ja/posts/14/</link>
      <pubDate>Fri, 30 Sep 2016 01:29:10 &#43;0000</pubDate>
      <author>xxx@example.com (MoeJue)</author>
      <guid>https://zh.moejue.cn/ja/posts/14/</guid>
      <description>
        <![CDATA[<h1>中国電信ログインRSAアルゴリズム+図解分析</h1><p>著者: MoeJue(xxx@example.com)</p>
        
          <p>前置きはさておき！</p>
<p>一、使用するツール</p>
<ol>
<li>
<p>IEブラウザ（バージョン9以上）</p>
</li>
<li>
<p>httpwatch（中国語版・英語版どちらでも可）</p>
</li>
<li>
<p>JSデバッグツール</p>
</li>
</ol>
<p>ターゲットサイト：<a href="http://xz.189.cn/sso/LoginServlet">http://xz.189.cn/sso/LoginServlet</a> China Telecom 189 ログイン</p>
<p>二、パケットキャプチャ：</p>
<ol>
<li>
<p>パケットキャプチャの前に、サイトのCookieとキャッシュをクリアします<br>
<a href="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/09/30/0072Vf1pgy1fqh27cuooyj30l90cv0u6.jpg"><img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/09/30/0072Vf1pgy1fqh27cuooyj30l90cv0u6.jpg" alt=""></a></p>
</li>
<li>
<p>ページを開く前にパケットキャプチャツールを起動します（そうしないと、暗号化されたJSをキャプチャできません）</p>
</li>
<li>
<p>どれがログイン送信パケットであるかを判断します<br>
<a href="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/09/30/0072Vf1ply1fqh27p2sm7j30m80akdjt.jpg"><img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/09/30/0072Vf1ply1fqh27p2sm7j30m80akdjt.jpg" alt=""></a></p>
</li>
</ol>
<p>三、キャプチャデータの分析：</p>
<p><a href="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/09/30/0072Vf1ply1fqh282bkdxj30ls076t9g.jpg"><img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/09/30/0072Vf1ply1fqh282bkdxj30ls076t9g.jpg" alt=""></a></p>
<ol>
<li>
<p>ここでIEのF12開発者ツールを使用します</p>
</li>
<li>
<p>パスワードのキーワードである「密码」や「passWord」を検索します<br>
<a href="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/09/30/0072Vf1ply1fqh28mmahhj30m804iwfp.jpg"><img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/09/30/0072Vf1ply1fqh28mmahhj30m804iwfp.jpg" alt=""></a></p>
</li>
<li>
<p>暗号化で呼び出される関数 <code>encryptedString</code> を追跡し続けます<br>
<a href="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/09/30/0072Vf1pgy1fqh28uu87ij30ik087aaf.jpg"><img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/09/30/0072Vf1pgy1fqh28uu87ij30ik087aaf.jpg" alt=""></a></p>
</li>
<li>
<p><code>encryptedString</code> 関数の2つの引数が何であるかを知る必要もあります。引き続きkeyを探します</p>
</li>
</ol>
<p><a href="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/09/30/0072Vf1ply1fqh29aoqekj30m803zq3w.jpg"><img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/09/30/0072Vf1ply1fqh29aoqekj30m803zq3w.jpg" alt=""></a><br>
<a href="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/09/30/0072Vf1pgy1fqh29rurbtj30m80ccwi2.jpg"><img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/09/30/0072Vf1pgy1fqh29rurbtj30m80ccwi2.jpg" alt=""></a><br>
<a href="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/09/30/0072Vf1pgy1fqh29u07pgj30i50bx753.jpg"><img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/09/30/0072Vf1pgy1fqh29u07pgj30i50bx753.jpg" alt=""></a></p>
<ol start="5">
<li>
<p>これで暗号化に必要なパラメータが揃いました。次はデバッグです。ここで、「パラメータは2つあるのでは？もう一つのsは？」と疑問に思う方がいるかもしれません。関数から、sがパスワードを暗号化する際のpwdであることがわかります。関数のif文による呼び出しを判断すると、pwdが私たちのパスワードであるpassWordであることがわかります。</p>
</li>
<li>
<p>次に、関数呼び出しをコピーして、まず開発者ツールでデバッグしてみます。keyとsの2つの引数が必要です。<br>
<a href="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/09/30/0072Vf1pgy1fqh2a02ub9j30m60d440i.jpg"><img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/09/30/0072Vf1pgy1fqh2a02ub9j30m60d440i.jpg" alt=""></a></p>
</li>
<li>
<p>IEでのデバッグに問題がなければ、次にJSデバッグツールでデバッグしてみます。</p>
</li>
<li>
<p>3つのRSA暗号化JSファイルとkeyをコピーし、<code>bodyRSA()</code>関数を呼び出します。引数はパスワードです。これがオブジェクトであり、直接呼び出せないことがわかります。呼び出しを続けると、ツールがクラッシュしてしまいます。<br>
<a href="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/09/30/0072Vf1ply1fqh2a1pjyxj30fq06vaau.jpg"><img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/09/30/0072Vf1ply1fqh2a1pjyxj30fq06vaau.jpg" alt=""></a></p>
</li>
<li>
<p>ここがRSAの難点です。書き換える必要があり、そうしないと私たちの易言語（E-language）からも呼び出すことができません。</p>
</li>
<li>
<p>書き換えた関数を先ほどと同様にデバッグツールにコピーし、同じく<code>bodyrsa()</code>関数を呼び出します。<br>
<a href="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/09/30/0072Vf1pgy1fqh2acq1dwj30m808utbb.jpg"><img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/09/30/0072Vf1pgy1fqh2acq1dwj30m808utbb.jpg" alt=""></a></p>
</li>
</ol>
<p>最後に、成功したことが確認できました。<br>
<a href="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/09/30/0072Vf1pgy1fqh2ai5ee1j30hy0dggms.jpg"><img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2016/09/30/0072Vf1pgy1fqh2ai5ee1j30hy0dggms.jpg" alt=""></a></p>
<p>China Telecomの携帯電話番号を持っていないため、Cookieを操作する完全なログイン処理を記述できませんでした。次回にご期待ください！</p>
        
        <hr><p>この記事は2016-09-30に<a href='https://zh.moejue.cn/'>阿珏酱のBlog</a>で公開され、最終更新日は2016-09-30です</p>]]>
      </description>
      
        <category>教程</category>
      
    </item>
    
  </channel>
</rss>
