Open onihusube opened 2 years ago
とりあえずEn2chを使ってアルゴリズムはわかった
板名<>dat番号<>UinxTime<>名前<>メール<>本文<>空<>ユーザーエージェント<>MonaKey<>空<>Nonce(UnixTime + ".000")
っていう文字列をEn2chから取り出した秘密鍵でHmacSHA256でハッシュすれば署名通って書き込めた MonaKeyは専ブラを再インストールしたり1週間で変わるとか言われてるやつで署名なしで書き込もうとするとレスポンスヘッダに付いてくる 空のところはEn2chにはないお絵描きとかBe番号とかかなのかもしれない
ChMateの秘密鍵も探してみる
F7vFm WCGd5 Gzs8hc03 NpRvw4 bPwMz3
◆UserAgent(例) Monazilla/1.00 2chMate/0.8.10.153 Dalvik/2.1.0 (Linux; U; Android 10; Pixel Build/QP1A.191005.007.A3)
◆X-2ch-UA 2chMate/0.8.10.153
◆X-ApiKey 8yoeAcaLXiEY1FjEuJBKgkPxirkDqn
◆HMKey >>111-115
書き込みのApiKey, HMKeyは DAT読み込みのAppKey, HMKey としても使えるっぽいな
大変参考にした🙏
C#版はだいたいこんな感じ?
実際には
そういえば、新仕様の専ブラは定期的に書き込み前の警告を5秒ほど強制表示するようになったから MonaKey発行の時はその秒数ぐらい待たないといけないとかあるかも(あてずっぽ
X-Chx-Error
ヘッダはないらしい0000 Set cookies; 1000 Post date is invalid; 1011 Thread is not alive; 6990 MultiPost1; 9804 Banned by Oven; 6970 Landfill1; 9911 Banned; 9999 Not yet;
(そんな前からあったのか
そのほか見たやつ
X-Chx-Error:0001 Confirmation phase;
X-Chx-Error:6200 Invalid RONIN SID;
X-Chx-Error:6902 CoPiPe;
X-Chx-Error:8853 Detect invalid proxy.
X-Chx-Error:8903 Rejected;
X-Chx-Error:9801 Posting is so fast.
X-Chx-Error:E3000 Broken request header.;
X-Chx-Error:E3304 Invalid API key.;
X-Chx-Error:E3331 Invalid signature.
X-Chx-Error:E3310 Invalid key.
X-Chx-Error:E3324 Expired key.;
X-Chx-Error:E3390 Unavailable key.;
スレで見かけたやつ(真偽は不明、一応)
X-Chx-Error : 9100 Banned. Go news4vip;
X-Chx-Error : 6202 Can not get RONIN SID: NoUnpad;
X-Chx-Error : 1030 Thread is stopped;
X-Chx-Error : E3381 No key has been issued.;
X-Chx-Error : E3392 Key has been lost.;
X-Chx-Error : E3391 Key has expired.;
正常に得られたMonakeyを改変(最下位桁を+1)して送ったところX-Chx-Error:E3310 Invalid key.
が得られた。
初期値は000のやつじゃないとだめっぽい?
同じ板でもスレによって書き込めたり署名が一致しません。って出たりするな
昨日以前の取得したスレではエラーでるけど その場合はスレのログ削除して新たに取得したらエラー一切でないわ
他のブラウザでそのスレに書き込んでたり、キーを変えて書き込むとそうなるみたい
あーもしかして、一度新仕様で書き込みを試みていた(書き込めなかった)状態でUAとかを設定し直すとこうなる?
なんか状態あったっけ・・・
名前欄に全角文字使うと書けないらしい
○専ブラ「名前」欄に文字を入れた際の挙動 ・「浪人+slip」は失敗する ・半角英数と「-」「_」はOK ・「#」「&」を含むと失敗する ・全角文字を含むと失敗する
名前のところエンコード解除してない疑惑
未確認(少なくともSID取得は問題なかった、一部はdat取得もできた)
これってほんもの?
UA: Monazilla/1.00 JaneStyle_Android/2.3.1 Dalvik/2.1.0 (Linux; U; Android 10; Pixel Build/QP1A.191005.007.A3) AppKey: vIyNd18OvKKeRkMmBUqqtEsdLuA8hh HMKey: EowMzHCOOQVJ3xQCfU9iyLu6MwRCN1
UA: Monazilla/1.00 2chGear/1.1.3 Dalvik/2.1.0 (Linux; U; Android 10; Pixel Build/QP1A.191005.007.A3) AppKey: hmCELmps15cHN8mL7viOH23nH24EwP HMKey: fOOxqHdfCactc639EMjCF1mUAkG1Lx
UA: Monazilla/1.00 En2ch/1.4.21 Dalvik/2.1.0 (Linux; U; Android 10; Pixel Build/QP1A.191005.007.A3) AppKey: CD59oXlsHKztxozKg3m33RsIvCwghQ HMKey: ZqFSgmJt3GXBVoa90QTVftqwODjR0E
UA: Monazilla/1.00 Ciisaa/1.71 Dalvik/2.1.0 (Linux; U; Android 10; Pixel Build/QP1A.191005.007.A3) AppKey: 1n0gDnwQE6st8KPj1qD7dKEWubpp1N HMKey: 3Op2jFmeYpcMfuDwnV8OtXmKu6n8oL
今来た人用 書き込みの1回目で「制限を設けております」、2回目で「鍵が無効です」となるのは、UserAgentが規制されたから 2chMateのUAの末尾が(Linux; U; Android 10; Pixel Build/QP1A.191005.007.A3)となっているものが規制された あまりに多くの人が使いすぎたから
UAの末尾の部分を適当に変えるだけで回避できる。実在しないものでもよい。実在するものの例は>>634 一つのものを大勢の人が使うとまた規制される可能性があるので適当にでっち上げたものを使うのがよい
書き込めない理由はわかったで 書き込み時に本家のChMateはX-2ch-UAがリクエストヘッダに設定されるけどこのソフトでは設定されないからや
取り敢えず本家はこんな感じ https://pastebin.com/UjCyrwPJ
それがこのプロキシで
こういう設定をしたときは https://pastebin.com/69uVF6VW
こうなってる https://pastebin.com/R1zsBqbJ
本家のリクエスト文に完全に成りすませばプロキシにたいする規制は理論上不可能
署名が一致しません。はまったやつ原因メモ
書き込みUA等のPostSig計算にかかわるものをUAから設定する(コピペしてくる)時、末尾にホワイトスペースがついてる。
ヘッダで送るときは末尾のホワイトスペースは消されるため、PostSig計算時と文字列が変わる。
Torにあったけど使える? https://pastebin.com/9VHdefF2
AppKey: a6kwZ1FHfwlxIKJWCq4XQQnUTqiA1P
HMKey: ZDzsNQ7PcOOGE2mXo145X6bt39WMz6
X2chUA(SID): JaneStyle/4.23
X2chUA(Get): (None)
X2chUA(Post): (None)
UA(SID): Monazilla/1.00 JaneStyle/4.23 Windows/10.0.22000
UA(Get): Monazilla/1.00 JaneStyle/4.23 Windows/10.0.22000
UA(Post): Monazilla/1.00 JaneStyle/4.23 Windows/10.0.22000
AppKey: vIyNd18OvKKeRkMmBUqqtEsdLuA8hh
HMKey: EowMzHCOOQVJ3xQCfU9iyLu6MwRCN1
X2chUA(SID): (None)
X2chUA(Get): (None)
X2chUA(Post): (None)
UA(SID): Dalvik/2.1.0 (Linux; U; Android 10; Pixel 5 Build/SP2A.220305.012)
UA(Get): Monazilla/1.00 JaneStyle_Android/2.3.1 Dalvik/2.1.0 (Linux; U; Android 10; Pixel 5 Build/SP2A.220305.012)
UA(Post): Monazilla/1.00 JaneStyle_Android/2.3.1 Dalvik/2.1.0 (Linux; U; Android 10; Pixel 5 Build/SP2A.220305.012)
AppKey: 8yoeAcaLXiEY1FjEuJBKgkPxirkDqn
HMKey: F7vFmWCGd5Gzs8hc03NpRvw4bPwMz3
X2chUA(SID): 2chMate/0.8.10.153
X2chUA(Get): 2chMate/0.8.10.153
X2chUA(Post): 2chMate/0.8.10.153
UA(SID): Monazilla/1.00 2chMate/0.8.10.153 Dalvik/2.1.0 (Linux; U; Android 10; Pixel 5 Build/SP2A.220305.012)
UA(Get): Monazilla/1.00 2chMate/0.8.10.153 Dalvik/2.1.0 (Linux; U; Android 10; Pixel 5 Build/SP2A.220305.012)
UA(Post): Monazilla/1.00 2chMate/0.8.10.153 Dalvik/2.1.0 (Linux; U; Android 10; Pixel 5 Build/SP2A.220305.012)
AppKey: hmCELmps15cHN8mL7viOH23nH24EwP
HMKey: fOOxqHdfCactc639EMjCF1mUAkG1Lx
X2chUA(SID): Monazilla/1.00 2chGear/1.1.3 Dalvik/2.1.0 (Linux; U; Android 10; Pixel 5 Build/SP2A.220305.012)
X2chUA(Get): (None)
X2chUA(Post): (None)
UA(SID): DOLIB/1.00
UA(Get): Monazilla/1.00 2chGear/1.1.3 Dalvik/2.1.0 (Linux; U; Android 10; Pixel 5 Build/SP2A.220305.012)
UA(Post): Monazilla/1.00 2chGear/1.1.3 Dalvik/2.1.0 (Linux; U; Android 10; Pixel 5 Build/SP2A.220305.012)
AppKey: 1n0gDnwQE6st8KPj1qD7dKEWubpp1N
HMKey: 3Op2jFmeYpcMfuDwnV8OtXmKu6n8oL
X2chUA(SID): Ciisaa/1.71 (A)
X2chUA(Get): (None)
X2chUA(Post): (None)
UA(SID): DOLIB/1.00
UA(Get): Monazilla/1.00 (Ciisaa/1.71 (A))
UA(Post): Monazilla/1.00 Ciisaa/1.71 Dalvik/2.1.0 (Linux; U; Android 10; Pixel 5 Build/SP2A.220305.012)
AppKey: CD59oXlsHKztxozKg3m33RsIvCwghQ
HMKey: ZqFSgmJt3GXBVoa90QTVftqwODjR0E
X2chUA(SID): En2ch/1.4.21
X2chUA(Get): (None)
X2chUA(Post): (None)
UA(SID): Monazilla/1.00 En2ch/1.4.21 Dalvik/2.1.0 (Linux; U; Android 10; Pixel 5 Build/SP2A.220305.012)
UA(Get): Monazilla/1.00 En2ch/1.4.21 Dalvik/2.1.0 (Linux; U; Android 10; Pixel 5 Build/SP2A.220305.012)
UA(Post): Monazilla/1.00 En2ch/1.4.21 Dalvik/2.1.0 (Linux; U; Android 10; Pixel 5 Build/SP2A.220305.012)
自分で解析した JaneStyle/4.22 のリクエスト文を上げておきます また書けなくなったときの参考にどうぞ
これってほんもの?
Live5ch 1.59 AppKey: HnNrwoBmZhuS2Iy7XcfKcNjXWbStay HMKey: Mw1lAicafV2JFefaoBURwgMJ7IqfvM
取り敢えずJaneStyleのUAで書けないのはリクエストボディのURLエンコードが小文字になってたのを本家に合わせて大文字にしたら書き込めるな。 ヘッダーもまだ本家と差があるから合わせていかないとな AcceptヘッダがないのとかAccept-Encodingがgzip, indentityじゃなくてgzipだけになってるのとか
ヘッダに関してはBoardSettings.yaml
で何とか出来るはずなのでとりあえず特殊対応はしない・・・
URLエンコード結果は大文字になるのが正しいけど、HttpUtility.UrlEncode
は小文字でエンコードする。今回のはこれが原因?(他の串で問題が起きてないように見えることからもそうっぽい??)
HttpUtility.UrlEncode
以外の方法はエンコーディングを指定して変換できないので好ましくない(UTF-8決め打ちする)。
ここに提示されているように、正規表現で置換するのが良いかな・・・
Shift-JISのパーセントエンコーディング、めも
ウィキペディア あいうえお
が
%83E%83B%83L%83y%83f%83B%83A+%82%A0%82%A2%82%A4%82%A6%82%A8
になる(スペースは+
)。
つまり
ウ : %83E
ィ : %83B
キ : %83L
ペ : %83y
デ : %83f
ィ : %83B
ア : %83A
あ : %82%A0
い : %82%A2
う : %82%A4
え : %82%A6
お : %82%A8
に対応する。
通常のパーセントエンコーディングのデコード方法に従ってデコード(%
を取り除いた文字列2文字を16進数値として読む)すると、例えば%83E -> 0x83 E
となる。この時のエンコーディングは何かを仮定する(この場合shift-jisだと思ってデコードする)。
0x83
はshift-jisとして有効な文字ではないので、その次の文字と結合する。その次の文字をAsciiコードで数値に直して結合すると、0x83 E -> 0x83 0x45 -> 0x8345
となり、0x8345
はshift-jisでのウ
に対応する。
このとき次の文字も%始まりならまた同様にデコードする、たとえば%82%A0 -> 0x82 0xA0 -> 0x82A0
、0x82A0
はshift-jis
であ
に対応する。
つまりは、Shift-JISのパーセントエンコーディングにおいても%xx
は%
+2文字(半角英数)となるはず。
C#実装テスト
この変更で設定そのままでかけたので確定。
トランスポートのコネクションは一致させれないの?
BoardSettings.yamlのKeep-AliveをfalseにするとConnectionの行自体が消えるな
これとかヘッダ順序とか、HTTPWebRequest
を使わないようにしないとダメそう
Fiddlerにリクエストをやってもらうのがよさそうだけど、今は何でそうしてないんだっけ・・・
20連投すると 鍵が失効しています IP変えたら書ける もしくは串ではないJaneからIP変えなくても書き込める
20連投じゃなくて5回Monaキー再取得のほうかな 5連投でUA替えてるから5回目でアウト
俺の見立て 短時間に連投もしくはMonaキー取得を繰り返し行うとIPアドレスが要注意リストに載り 5回目の再取得で鍵が失効
その目をつけられてしまったIPからのMonaキー取得は JaneStyleで1回目の取得であっても5回目扱いとなり鍵が失効する
IPアドレスがブラックリスト(≠BBX)に載らない程度のもっさり連投だったんだろう 45秒で5連投して4分以内に5回目のMonaキー再取得を行うくらいの連投じゃないと
IPアドレスがブラックリスト(≠BBX)に載るレベルの(45秒で5連投)書き込みを行い Monaキー取得を繰り返し行うとIPアドレスが要注意リストに載り 5回目の再取得で鍵が失効
その目をつけられてしまったIPからのMonaキー取得は JaneStyleで(クッキー削除して)1回目の取得であっても5回目扱いとなり鍵が失効する
VPN探してて既に他の人によってこれにされてしまっているIPを使った時、 串が原因かといろいろ設定変える無駄が減る
前スレでpovo2.0で再現できなって言ったけどさっき書き込んだスレを確認したら勝手にIDがコロコロしてた
今はコロコロしなくなったからまた試したら、確かに短時間に何回も鍵を更新すると、そのIPには5回目からは失効した鍵しか渡されなくなった
色々と実験をして「ERROR: 不正取得を検出しました」を出す事に成功した IPを変えれば回避できる
>>639 多分6時間くらいで解除される気がする
>>186 俺も今PCから書き込むと串規制(101)が出て書けないんだよね 有志がpastebinに貼ってくれた例のUAとKEYだと書けなくなってるんだろうけど代わりのが見つからんから詰んでるわ どうしたら良いんだ
AppKeyとHMKeyそのままで書き込み用UAを実在のものに変えてもダメだね 参ったわ 8853 Detect invalid proxy.; って出る
PCから来たID:QNOehZwI0だけど書けたわ、原因が分かった 恐らく運営側は今「独自のUserAgent」を持ってる書き込みを規制してるんじゃないか? みんな↓みたいなUA設定してるでしょ?
Monazilla/1.00 BROWSER_NAME/BROWSER_VERSION Dalvik/2.1.0 (Linux; U; Android 10; XXX/YYY)
これのXXX/YYY部分だけ変えてCookie削除したら書き込めた、それ以外は一切弄ってない 逆に言うとこのXXX/YYY部分で汎用的な機種名の入ったUA使ってない場合、悪目立ちして規制されることがあるっぽい 俺は「Chinko Build/454545.191919」とかにしてたから不興を買ったのかも知れん
なるほど(ちょっと笑ったw
Monakey再取得し過ぎによる「ERROR: 不正取得を検出しました」への対策は 書き込める設定+Monakeyが記載されたバックアップしておくべきsetting.xmlをまだ所持したことが無い者にとってはIP変えるしかないのが現状なのかな
既に「ERROR: 不正取得を検出しました」が出されたIPで 有効なMonakeyを新たに5chから発行してもらえるようになる条件が そのIPに対する既存の有効なMonakeyの自然失効だとしたら実質2週間規制?
2日待ったら解除されたよ
■鍵(MonaKey)について
5chは2022年3月から専ブラ用にAPI経由の新しい書き込み方式(以下、新方式)が導入され、JaneStyleはv4.20以降で対応した 従来の書き込み方式(以下、旧方式)は移行期間を経て2022年4月未明に停止された模様
新方式では専ブラがインストールされた各クライアント環境毎にユニークな鍵(MonaKey)が5chから発行され、書き込み時の認証に使用される 鍵(MonaKey)には有効期限(現状で1~2週間)があり、定期的に更新の為の同意が求められる 5ch側は規制として鍵(MonaKey)をBANする事が出来、BANされた鍵(MonaKey)では書き込みが拒否される
■鍵(MonaKey)関係の主なエラーメッセージ
・「ERROR: 鍵の有効期限が切れています。」 →1~2週間で発生。[同意]をすれば鍵が更新される。
・「ERROR: 鍵が失効しています。」 →何らかの理由で鍵が失効している。[同意]をすれば鍵が更新される。
・「ERROR: 鍵が一致しません。 」 →何らかの理由で鍵が合わず使えない。[同意]をすれば鍵が更新される。
・「ERROR: 鍵が無効です。 」 →鍵が規制でBANされている。規制解除を待つか鍵の削除が必要。
・「ERROR: 不正な取得を検出しました。」 →鍵の取得を同じIPで短時間に繰り返すと発生。IPが規制されている。規制解除を待つかIPの変更が必要。
ソフトウェア板でRock54 Mango板で確認しようとしたら ERROR: 不正取得を検出しました nonceの設定間違ってたがそれまでは普通に書けてた IP変更とnonceの設定正したら復帰出来た NGWordとか他の何かの規制に引っ掛かると不正な串判定をチェックされるのか或いは板に依るのか 全てで厳密なチェックはしていないみたいね
En2chだと不正な串。色々試してみた https://pastebin.com/Y8uLnhmf コレによると Accept-Encoding ヘッダが無い yamlでは消してあるのに付加されてしまってる gzip nonce ミリ秒有り無しも試してみたけどダメ ミリ秒 .000 固定なら専用対応が必要なのかも どちらが要因なのかは分からないけどログから見れる違いはその2つくらい
>>837 スレ立て出来無いっぽいですね~^^; でも本家で出来無いスレ立て出来たら面白そう
とりあえずiOS版のjanestyleの通信キャプチャしたけどAPIKeyしかわからないし、できる人いるならHMKey解析して
Connection:keep-alive Host:agree.5ch.net Accept-Language:ja-JP;q=1 Content-Type:application/x-www-form-urlencoded Accept-Encoding:gzip, deflate, br X-MonaKey:省略 Accept:*/* User-Agent:Monazilla/1.00 JaneStyle_iOS/2.7.7.1 iOS15.4.1 iPhone10,1 X-APIKey:3VR1n0X53THKErNL07ex5bL3Hm33dt X-PostNonce:1654262422.471 Content-Length:129 Referer: http://agree.5ch.net/test/read.cgi/operate/1652610044/ X-PostSig:c15fec69e9dc171b81b9e59b6e13027f30f6f4e91795c23e1ac666592f200f34
これが>>930のフィールド
FROM=&MESSAGE=test&bbs=operate&feature=confirmed&key=1652610044&mail=&submit=%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%82%80&time=1654262422
https://egg.5ch.net/test/read.cgi/software/1651990538/976
最新バージョンはリクエストボディにfeature=confimedが追加されるようになってるからこれが本家にはなくて検知される 取り敢えず一個前のバージョンに戻せば書ける
鍵を捨てて書き込みボタンを押して確認画面を通過して書き込みするとfeatureが付いたリクエストが送られるのでブロックされる そこからもう一回書き込むと鍵が無効になってるのでそもそも書き込めない
そこでまた鍵を捨てて今度は確認画面を通過したあとの再書込みのリクエストをfiddlerのリクエスト書き換えるとfeatureを消して書き込むともちろん書き込める
そして2回目以降は最初からfeatureが入ってないリクエストがapi串で生成されるようになるので何も書き換えずに書き込める
これは最新バージョンでも前のバージョンでも同じだった
これxeroの生リクエスト自体が状況に応じてfeatureついたり付かなかったりしててそれが串のリクエストにも反映されてるっぽい あとviewだと更新からの初書き込みフィーチャー付かなかないな
>>46 かも知れない ただ前スレのやり取りを見てるとxenoとか特定のブラウザが付けるパラメーターに問題があるかもという事なので使っている専ブラによっては起こらないかも ちなみにこの書き込みはdetourで作ったmonakeyを2chproxyのsetting.xmlに設定して書き込んでいる 最初のmonakey取得プロセスさえクリアすれば使える
試してみてください🙏
なおりました
>>52 使ってみたけど駄目だったね
>>53で駄目だったって書いたけど 「不正取得を~」ってエラーが出た後に串を再起動させたら書き込めました
現在の状況まとめ 0528でGUIの設定とyamlを正しく設定すればEn2ch以外の全てのKeyで書ける (ソフトウェア板のテストスレで確認) Xenoは0528にissueの「書き込み仕様変更について」で公開されてるtest版zipの中のexeを上書きすれば書けるようになる それ以外の「書けない」は正しく設定出来ていないか以下の規制に巻き込まれている 【速報】5ch全板、AndroidとiPhoneから書き込めなくなる「鍵が無効です」 http://hayabusa9.2ch.net/test/read.cgi/news/1654419782/
BANの種類にも依るが、UAの機種やOSのバージョン部分を有効なモノに変えてMonakeyを更新すれば書けるようになるはず 不正取得に掛かっていたらipの変更も必要 Monakeyのリセットは自動でやってくれるので設定ファイルから手作業で消したりする必要は無い ip変えられない人は規制解除まで大人しく待つしかない
荒らした板でUA規制
書き込むと ↓ 制限されています ↓ 鍵無効 ↓ 別の板で書き込んで再取得 ↓ 別の板で書ける ↓ 荒らし板 ↓ 制限されています ↓ 鍵無効
IPは一切変えず
4/1 新仕様に対応しない専ブラのUAが死亡 ↓ 4/3 新仕様に対応する専ブラの最後の旧仕様バージョン以外のUAが死亡 ↓ 4/6 全ての専ブラの旧仕様のUAが死亡 ↓ 4/8 新仕様への対応が間に合ってないBB2CのUA(旧仕様)が特例で復活 ↓ 4/13 新仕様に対応した全ての専ブラの旧仕様のUAが復活 ↓ 4/16 全ての専ブラの旧仕様のUAが再び死亡 ↓ 7/26 新仕様に対応した全ての専ブラの最新バージョン以外のUAが死亡 [New]
Live5ch/1.59 (スレ立て)
POST http://egg.5ch.net/test/bbs.cgi HTTP/1.1 Proxy-Connection: Keep-Alive Content-Type: application/x-www-form-urlencoded; Charset=shift_jis Accept: */* Cookie: NAME=; MAIL=sage Referer: http://egg.5ch.net/software/ User-Agent: Monazilla/1.00 Live5ch/1.59 Windows/10.0.22000 X-PostSig: 71539a5e85f21a30958fb45a1379abcd**** X-APIKey: HnNrwoBmZhuS2Iy7XcfKcNjXWbStay X-PostNonce: 1659596387.489 X-MonaKey: 1c232433ec64dadfadf6d944e12b32fg**** Content-Length: 132 Host: egg.5ch.net
subject=test&submit=%90%56%8B%4B%83%58%83%8C%83%62%83%68%8D%EC%90%AC&FROM=&mail=sage&MESSAGE=test&bbs=software&time=1659596387&sid=
色々と修正して取得し直したので上げ直し
HOST /test/bbs.cgi HTTP/1.1 Connection: Keep-Alive Content-Type: application/x-www-form-urlencoded; Charset=UTF-8 Accept: */* Cookie: NAME=; MAIL= Referer: http://egg.5ch.net/test/read.cgi/software/16595*/ User-Agent: Monazilla/1.00 Live5ch/1.59 Windows/10.0.22000 X-PostSig: 81539a5e85f21a30958fb45a1379abcd**** X-APIKey: HnNrwoBmZhuS2Iy7XcfKcNjXWbStay X-PostNonce: 1659596387.489 X-MonaKey: 0c232433ec64dadfadf6d944e12b32fg**** Content-Length: 132 Host: egg.5ch.net
subject=test&submit=%90%56%8B%4B%83%58%83%8C%83%62%83%68%8D%EC%90%AC&FROM=&mail=sage&MESSAGE=test&bbs=software&time=1659596387&sid=
■書き込みOK Monazilla/1.00 JaneStyle/4.23 Windows/10.0.22000 Monazilla/1.00 JaneStyle/4.24 Windows/10.0.22000 Monazilla/1.00 2chMate/0.8.10.153 Dalvik/0 (Linux; U Android 0) Monazilla/1.00 2chMate/0.8.10.154 Dalvik/0 (Linux; U Android 0) Monazilla/1.00 2chMate/0.8.10.155 Dalvik/0 (Linux; U Android 0) Monazilla/1.00 Ciisaa/1.71 Dalvic/0 Monazilla/2.00 JaneStyle/4.23 Windows/10.0.22000 Monazilla/1.00 JaneStyle/4.23 (^o^) Windows/10.0.22000 Monazilla/1.00 2chMate/0.8.10.153 Dalvik/0 (Linux; U Android 0) (^o^)
■■未登録のバージョンです。 Monazilla/1.00 JaneStyle/4.22 Windows/10.0.22000 Monazilla/1.00 JaneStyle/4.25 Windows/10.0.22000 Monazilla/1.00 2chMate/0.8.10.152 Dalvik/0 (Linux; U Android 0) Monazilla/1.00 2chMate/0.8.10.156 Dalvik/0 (Linux; U Android 0)
■もっと古いのにしましょうね。 Monazilla/1.00 2chMate/0.8.10.153 Dalvik/0 (Linux; N Android 0) Monazilla/1.00 2chMate/0.8.10.153 Dalvik/0 (Linux; I Android 0)
■もう新しいのにしましょうね。 Monazilla/1.00 JaneStyle/4.23 Windows/5.1.2600
■■新仕様に対応した専用ブラウザをご利用ください。 Monazilla/1.00 JaneStyle/4.23 Monazilla/1.00 2chMate/0.8.10.154 Dalvik/0 (Linux; U) Monazilla/1.00 JaneStyle/4.23 (^o^)
■不正なPROXYを検出しました。 Monazilla/1.00 JaneStyle/4.23 Windows/10.0.22001 Monazilla/1.00 JaneStyle/4.23 Windows/10.0.22000 (^o^)
■■APIキーが一致しません。4 Monazilla/1.01 JaneStyle/4.23 Windows/10.0.22000 Monazilla/1.00 JaneStyle 4.23 Windows/10.0.22000
■署名が一致しません。 Monazilla/1.00 JaneStyle/4.23 Windows/10.0.22000
■403 Forbidden Monazilla/0.00 JaneStyle/4.23 Windows/10.0.22000 Monazilla/1,00 JaneStyle/4.23 Windows/10.0.22000 Monazilla/3.00 JaneStyle/4.23 Windows/10.0.22000 Monazilla 1.00 JaneStyle/4.23 Windows/10.0.22000 onazilla/1.00 JaneStyle/4.23 Windows/10.0.22000
■400 Bad Request Monazilla/1.00 janeStyle/4?23 Windows/10.0.22000 ※?は$20~$7E以外の文字コード
>>282のこれは先頭に空白が入ってるパターンね >■署名が一致しません。 > Monazilla/1.00 JaneStyle/4.23 Windows/10.0.22000
泥Spyleは出回ってたリクエスト文とは違いが在るようだ 専用ブラウザを助けるプロクシ作らね?26.1串目 http://egg.2ch.net/test/read.cgi/software/1661687123/45 2chAPI串のフィールド順に'oekaki_thread1', 'oekaki'とか設定して反映されるのだろうか?
case 'JaneStyle_Android': new_query.seed_time = new_query.time
function create_nonce( let nonce = query.seed_time ? query.seed_time + '000' : String(new Date().getTime())
コレって泥Spyleがミリ秒'000'固定になってて En2chの方では000で無くても書けるから"new_query.seed_time"は設定されてないけど 泥Spyleではそこを判断されてるってことかな?
Jane Android2.3.3
POST http://egg.5ch.net/test/bbs.cgi HTTP/1.1
X-PostNonce: 1662002761.061
Accept: */*
X-MonaKey: 176e015c4dc17b3bb0a07ecc0f9e1e7d********************************
Referer: http://egg.5ch.net/test/read.cgi/software/16612*****/
Connection: close
User-Agent: Monazilla/1.00 JaneStyle_Android/2.3.3 Dalvik/2.1.0 (Linux; U; Android 12; ***** Build/*****)
Host: egg.5ch.net
Accept-Encoding: gzip
Accept-Language: ja
X-PostSig: 5456d9bb5dc4dc4b23e1bf8377e4edbd********************************
X-APIKey: vIyNd18OvKKeRkMmBUqqtEsdLuA8hh
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
Content-Length: 125
MESSAGE=test&bbs=software&mail=sage&submit=%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%82%80&subject=&FROM=&time==1662002658&key=16612*****
>>117ありがとうございます 2.3.2 からの変更点は ・nonce がミリ秒付加 ・ボディのフィールドからfeature削除 みたいですね
nonce が偽装元と違っていると 「不正なPROXY 403」
Ciisaaが不正なPROXY
本家との差異 ・Accept-Encoding : gzip 偽装に在って 本家には無い ・Referer: http://egg.5ch.net/software/ が本家はspyle形式 ・nonce スレ立てはミリ秒なのに投稿はセンチ秒??? コピペミスだと思うが 投稿: https://pastebin.com/mkWR7NGx スレ立て: https://pastebin.com/ibpppvBB ・Connection: close 偽装ではyamlのheaderに書いても反映されないけど Keep-Alive しとけばConnection:ヘッダは付加されるので良いはず
試せる人は Accept-Encoding : gzip を削除してPOSTしてみて欲しい
>>178 >試せる人は Accept-Encoding : gzip を削除してPOSTしてみて欲しい やってもダメ
検証結果 CiisaaのUAに「Build/」が含まれていると不正なPROXYエラーになる
なんだそれ
Jane Style (Windows版) Part208 http://egg.5ch.net/test/read.cgi/software/1662203433/554 > ChromeとCiisaaだけは素でもBuild/~を吐かない
だそうだ nutsも\sBuild/以下を)に置き換えて削除してる
ブルスタにCiisaa入れてのテストだけど「Build/」~が付いてないのが正しいみたい
>>219,220 制限、余所、もう書けません、この手のエラーは、 UAだけ、回線だけ、UAと回線の組み合わせ、どれもあり得て一概には言えないな
>>223,229 こちらでも確認した 何種か試したが eonet で Monazilla/~ が制限規制されてるっぽいな Mozilla/~ で余所規制を回避すれば eonet でも書ける
>>121 不正なPROXY 201 は 2chMate 関係のエラーとまでしかわからない 例えば X-2ch-UA がないとか
泥のUAチェックが厳密になって機種名や機種ビルドまで見るようになり出したけど 泥の最新ビルドまでそんなタイムリーに漏れなく更新出来るものなんだろうか いばらの道を突き進むなぁ
>>430 JaneStyle_Android/2.4.0のUAを試してみるといい バージョンアップ前は Monazilla/1.00 JaneStyle_Android/2.3.3 Dalvik/0 <好きの文字列> みたいなレベルのがOKだったけど 最新版は Monazilla/1.00 JaneStyle_Android/2.4.0 Dalvik/2.1.0 (Linux; U; Android **; <機種名> Build/機種ビルド番号) のフォーマットで実在する組合せじゃないと不正なPROXY扱いになる (少なくとも自分が確認した範囲では)
ちなみにJaneStyle_Androidの予約バージョンだけは2.4.1から2.4.9まで全部通る なんだそれ
いま改めて確認したらめちゃめちゃ緩くなってた なんか問題が発生したのかな
>>438 書けなかった UAに戻してら書けた 運営がなんかやらかしたみたいだね
>>493 spyleやLiveならこういうので分かる 【test】投稿テスト【ワッチョイ】 part5 http://egg.5ch.net/test/read.cgi/software/1660099053/
20220917-20220923
-Mc42 … Monazilla/1.00 JaneStyle.4.23 Windows/6.0.6000 -TQyE … Monazilla/1.00 JaneStyle.4.23 Windows/6.1.7600 -rZTD … Monazilla/1.00 JaneStyle.4.23 Windows/6.1.7601 Service Pack 1 -QNcw … Monazilla/1.00 JaneStyle.4.23 Windows/6.2.9200 -+HgJ … Monazilla/1.00 JaneStyle.4.23 Windows/6.3.9600 -4wF4 … Monazilla/1.00 JaneStyle.4.23 Windows/10.0.10240 -MhoU … Monazilla/1.00 JaneStyle.4.23 Windows/10.0.18363 -eAa0 … Monazilla/1.00 JaneStyle.4.23 Windows/10.0.19041 -91vb … Monazilla/1.00 JaneStyle.4.23 Windows/10.0.19042 -okD4 … Monazilla/1.00 JaneStyle.4.23 Windows/10.0.19043 -E+l9 … Monazilla/1.00 JaneStyle.4.23 Windows/10.0.19044 -aM1M … Monazilla/1.00 JaneStyle.4.23 Windows/10.0.19045 -epGT … Monazilla/1.00 JaneStyle.4.23 Windows/10.0.20270 -PPqk … Monazilla/1.00 JaneStyle.4.23 Windows/10.0.21390 -ldZd … Monazilla/1.00 JaneStyle.4.23 Windows/10.0.22000 -6Po3 … Monazilla/1.00 JaneStyle.4.23 Windows/10.0.22449 -xH4D … Monazilla/1.00 JaneStyle.4.23 Windows/10.0.22622 -9gzz … Monazilla/1.00 JaneStyle.4.23 Windows/10.0.25115 ****-t/ch … Monazilla/1.00 JaneStyle.4.23 Windows/10.0.25188
20220917-20220923
-YO1K … Monazilla/1.00 Live5ch/1.59 Windows/6.0.6000 -nMbm … Monazilla/1.00 Live5ch/1.59 Windows/6.1.7600 -AZvI … Monazilla/1.00 Live5ch/1.59 Windows/6.1.7601 (Service Pack 1) -bI3p … Monazilla/1.00 Live5ch/1.59 Windows/6.2.9200 -bPEN … Monazilla/1.00 Live5ch/1.59 Windows/6.3.9600 -+BtO … Monazilla/1.00 Live5ch/1.59 Windows/10.0.10240 -6Hnt … Monazilla/1.00 Live5ch/1.59 Windows/10.0.18363 -vqHb … Monazilla/1.00 Live5ch/1.59 Windows/10.0.19041 -uMuI … Monazilla/1.00 Live5ch/1.59 Windows/10.0.19042 -UC+/ … Monazilla/1.00 Live5ch/1.59 Windows/10.0.19043 -cETI … Monazilla/1.00 Live5ch/1.59 Windows/10.0.19044 -HdVQ … Monazilla/1.00 Live5ch/1.59 Windows/10.0.19045 -85zq … Monazilla/1.00 Live5ch/1.59 Windows/10.0.20270 -z0sj … Monazilla/1.00 Live5ch/1.59 Windows/10.0.21390 -/PCR … Monazilla/1.00 Live5ch/1.59 Windows/10.0.22000 -nN9E … Monazilla/1.00 Live5ch/1.59 Windows/10.0.22449 -zja0 … Monazilla/1.00 Live5ch/1.59 Windows/10.0.22622 -49sq … Monazilla/1.00 Live5ch/1.59 Windows/10.0.25115 ****-O3CH … Monazilla/1.00 Live5ch/1.59 Windows/10.0.25188
pinkには新仕様での書き込みを旧と区別することなく受け入れる板と スクリプト被害に遭ったので新を受け入れずにはじく設定になってる板がある
棲息域が違えばどっちもあることに気付かないけどね