from electron 2 web

インターネットのリソースを無駄遣いして検索におけるUXを下げてごめんなさい

圧倒的文章力のNASAでゴミみたいなチラ裏のようなメモを量産してしまい全ての"Web開発者"にごめんなさい

あやしいネットワーク入門編2~rotate proxyについて~

こんにちは~闇のセキュリティエンジニアに入門したlevena chanです。

とある事情でグレー案件をやっていてその過程で闇の技術を多少覚えたのでそのうちの一つのrotate proxyについてoutputします。

闇の案件ください。

rotate proxyとは

proxyの一種ですが普通のproxyとの違って出口IPが一つ以上あります。通常のproxyはPCからあて先のURLに通信するときに中間にプロキシを挟み、PC→proxy→あて先のサーバー→proxy→PCという経路を辿りますが、rotate proxyはproxyの出口IPが複数あるためrotate proxyからあて先サーバーまでの通信経路をリクエストごとに違う経路で通信することが可能です。

f:id:lv7777:20190326114706p:plain

用途としてはスクレイピングでIP rate limiting base(下記URLを参照)で対策されたwebサイトをbypassしてスクレイピングを行ったり、並列アクセスによる平行処理、PV数水増しによる検索エンジンSEO不正操作、観覧数操作などが可能になります。

その中でも特にSEO系を目的としたrotate proxyはSEO proxyといいます。

hxxps://smartproxy(.)com/blog/seo-proxies-when-you-are-serious-about-your-search-ranking

SEO proxyの最近のニュースとしてはpixivのランキング操作やブックマーク操作などがありました。これもSEO proxyのような気がしますがあまり調べてないので適当なことを言っているかもしれません。

また、ゾーン(プール)を定義してそのゾーン内のIPを自由に出口ノードとして使えるproxyをbackconnect proxyといいます。後述するluminatiなどはこれにあたります。DHCPプールを定義してそれを使っていくみたいなのを想像すると分かりやすいです。

hxxps://www.geosurf(.)com/blog/what-is-a-backconnect-proxy/

ちょっと種類は違いますがsneaker proxyというものもあります。これはp2pサービスを使うときにクライアントやサーバーを匿名化することができるproxyです。geosurfのproxyではsneaker proxy用のAPIを提供したりbot(NikeShoeBot)とも連携しているようです。

hxxps://www(.)geosurf.com/proxy-use-cases/sneaker-residential-ips-proxy/

proxy serviceの種類

rotate proxyを使用する方法として主に3種類あります。ここで呼んでいる用語は僕が独自に定義したものなのでちゃんとした言い方があるのかもしれません。

  • プラットフォーム型・・・プログラムすら書かずにwebコンソールをいじるだけでスクレイピングが完了してしまう形式です。プログラムを書かずに簡単に使用できる分拡張性が無いです。apifyなどがあります。apifyはプラットフォーム型以外にもSaaS型も提供しています。

hxxps://apify(.)com/docs/scraping/web-scraper-tutorial

  • API型・・・APIベースで自動でrotateしてくれるタイプです。 hogehoge.com/scraping&url=http://anti-scraping.com のような形で使用します。

  • SaaS型・・・chromeを起動したときにproxyとして指定するタイプ。大体はこれ。luminatiやsmartproxyが有名です。

  • 自前型・・・自前でrotate proxyを建てるタイプです。当然サーバーとIPを自前で用意する必要があります。自前とは言ってもIPを複数用意するのは難しいので大抵はクラウドでやることになると思います。例えばAWSのENIを使ってec2に複数IP割り当てるとかなら比較的安価にいけるんじゃないかな。kouhei氏がよさげなブログを書いていたがdmca takedown(意味深)されてしまったので復活に期待

luminatiについて

LuminatiではproxyとしてLPMとsuper proxyによる方法が採用されています。

LPMはlocal proxy managerの略となります。LPMはsuper proxyに対してip rotateの方法(ラウンドロビンやランダム、ハイパフォーマンス、スティッキーなど)を指定したり、使用するゾーンやホワイトリストを設定したりできます。(前提事項としてluminatiではproxyのほかにログイン情報なども渡す必要があることを言わないとって感じ)

chromeスクリプト(beautifulsoupやseleniumなど)にはLPMを指定します。

使った感想としては普通に良いです。法人であれば登記証明書を出すことで7日間無料トライアルもできるようです。

使い方とか料金体系だけで別記事が書けるボリュームなので気が向いたらそのうち書くかもしれません。

luminati.io

最後に

rotate proxyについて調べたところプロキシの一種ということが分かりました!詳しいことはあまりよくわからないので今後の活躍に期待ですね!いかがでしたか?

久々にちーちゃんっぽくまともなブログを書こうとしたんですが書きたい段落についてはかけてもそれをどういう順番で紹介するかみたいな部分が非常にダメダメなのでそういう力つけたいね。

2月の勉強会行きまくったので感想とかメモとか

こんにちは。最近躁状態でいろんな勉強会に行きまくってます。ちゃんと週40時間働いてるし仕事のノルマはこなしてます(こなしてるはず)

後半から欝状態が躁状態に転換してきたので来月は6回参加とかになるかもしれん。(いやそんなに行ったら体力的に死にそうなので目標にはしないが。)

行った勉強会の一覧

  • インフラ技術カンファレンス(YahooJapan MeetUp)
  • we are javascripters!!(WeJS)
  • JAWS days

インフラ技術カンファレンス

Yahoo! JAPAN MEETUP #31 インフラ技術カンファレンス - connpass

東京のY!社で行われた。Y!社、初めて行ったけど広かった(それはそう)。あの建物迷いやすいのでY!社の勉強会行くときは注意。

地下2階あたりにエレベーターがあってそこ通って行った気がする。

そして開催地に行く途中にLODGEを通った。時間無くて寄れなかったけど。(LODGEがあるのY!社なのか…)

いつか寄って普通にコワーキングスペースとして使いたい。

感想

VIPを移行してキャッシュとかオリジンとかCDNな話やDCなNWを移行する話とかopensdsやquobyteなどのsoftware definedストレージな話やconfig自動化の話が出てきた。そこそこ範囲広くて濃い話が大量に出てきてすこ…ってなった。

BGPとかvxlanとかリーフスパインな話もあった(LT)

speakerdeck.com

LTもめっちゃ濃かったが普通に懇親しまくってたのであんま聞けなかった…普通に界隈が同じフォロワーと話しまくってた。

懇親会の飯めっちゃ旨かった(しめっちゃ量もあった)、感謝🙏 f:id:lv7777:20190223234002j:plain

年一単位であるらしいよ。次回(来年かな?)も行きたい。

we are javascripters!!(WeJS)

初心者回だったっぽい。

専門学生の頃から行きたいなぁとは思っていた。

nuxt.jsな話CDNとかreact nativeな話が出てきた。良かった。

隣のプロジェクトでnuxt.jsとかvue.jsとか普通に使ってる(まぁvueなら自分がプロマネしてるプロジェクトでも一応使ってはいるんだけど。)ので近い将来使うことになるしまた復習がてらいろいろ遊びたいなぁという感じ。

みんなvscodemacだなぁという感じだった。

SAKEが出た、感謝🙏

普通に仕事でバリバリ使うようになってきたら登壇の復習がてら登壇したい。

JAWS days 2019

OSC(やhamasec)と同日開催…

ご飯の交換チケット(AWS ALB)とか付いてきた。

1000円払ってクソ良いセッションにご飯まで付いてくるとか圧倒的感謝…🙏

カンファレンスにありがちな部屋が複数あって同時に公演してる感じで、自分はセキュリティ関係の話を多めに取った。

WAF managemed ruleな話やcognitoのpros/cons、VPCの新しいアーキテクチャのtransit GWとかそれのsec tipsとか責任共有モデルの話とかちゃんとドキュメント読もうなという話やmulti-AZみたいなアーキテクチャの話やamazon inspectorな話やIAMはしっかり設計しようなという話脆弱なlambda経由で権限昇格などいろいろ聞いてきた。

今日聞いた中で触ったこと無い技術

  • managed WAF rule
  • amazon inspector, AWS security hub
  • market place この辺は普通に聞くし触ってみたい。

  • cognito とりあえずメール送ってみたり認証作ってみたけど謎なオプションがいろいろあるので一通りわかるようになりたい。

  • amazon neptune 名前がかっこいい(小並感)

  • amazon connect 強そう(適当)

  • API GW これはマジで使えるんですよね、マジで。 そのうち触ってみたい。swaggerと連携できる。

  • AWS amplify console これはマジで使える2。

  • AWS direct connect ちらっと出てきた

AWS Direct Connect(専用線接続サービス) | AWS


終わりに

3月も参加しまくりますのでフォロワーの皆さんよろしくです!

2018年の振り返り

今年の目標の記事やtwitterを探しましたが去年の目標は立てていませんでした。

なぜなら前職の仕事が忙しくてそれどころではなかったから。

一応給料倍にすることや会社をやめないことを目標にしていたっぽいが前者は達成して後者は未達成ですね。むしろ後者を破ったからこそ達成できた。

転職は運ゲーということが良くわかった一年でした。

一月

DB2についてめちゃくちゃ調べていたり、gitもない、エディタは素のvim、ESXi上という劣悪なプログラミング環境でプログラミングをしていた。本当につらかった。そのせいで下記のような古系の技術、Redhat系の技術にめちゃくちゃ詳しくなった。

lv7777.hatenablog.com

lv7777.hatenablog.com

二月

今月も同じことをやっていた。本当につらい。終わりが見えない、同じことを4ヶ月間やらされた。とにかくつらかった。

改修は終わらせた。改修したのは絶対にミスしちゃいけないシステムですが正常稼動してるようでよかった。前職のホームページを見ると僕の仕事の成果(バージョンアップして対応してるOSが上がってる)が乗っている。そして退職。

退職前は比較的同期と仲良くやれたと思う。同期と飲んだり遊びに行ったり退職祝い?(謎)もらったりしたし、そのうちの一人とは定期的に飲んでる、同時期にやめて東京で再就職してるので。

三月

虚無。アニメを消化したり引っ越したり。転職活動も始めた。普通は転職が決まってから退職するものですね。

四月

転職活動をしていた。割と楽しみながらやれた。まだ第二新卒なので。もうこれからの転職は新卒という枠ではなくて中途になってしまったと考えると感慨深い・・・

某社の人と飯食ったり、某社のCTFをしたりした。もし記事を読んでいる中に某さんがいたら感謝します。飯誘ってくれてありがとうございました。結局落ちましたが自分のコミュ力やブランド力の結果なので来年はもっと磨いていきたいです。

五月

転職した。去年ぐらいに一度誘われて見学しに行った某社にした。図らずともtwitter転職になってしまった。某氏、現職を紹介してくれてありがとう。

六月

現職で働いて一ヶ月経った。最初はWebプログラマーとして働いた。angurarやslim、propelなどを使った。

今では当たり前だが、gitで管理されていたりCIが回っていたりレビュー文化があったり共同開発できることが最高だった。

前職での開発環境とあまりにも違う。エクセルでissue管理してたし再現手順もドキュメントもライブラリもgitもなかったし。(ちなみにgitは導入した、その後残された負の遺産はソフトウェア開発会社に投げたらしい。)

七月

現職で働いて2ヶ月経った。少し慣れてきた。この月ぐらいに社員旅行にも行った気がする。大分フランクな会社だということが分かってきた。あと自分が受け持ってる小さいプロジェクトも二つ増えた。

そして今メインで受け持ってるプロジェクトが本格的に始まる。

八月

メインで受け持ってるプロジェクト一本に切り替わった。プロマネではないがほぼプロマネ。夏休み一週間あったけど実家でもほぼリモートで作業してた。その間に実家の回線を冗長させてグローバルIPを8つブロックで落としてきた、まだ活用できてない。

九月

いろいろあり自分の主担当のプロジェクトのプロマネ(社長)からPMをやらないかと誘いが来た。責任がデカすぎるので丁重にお断りした。

十月

この月あたりに現在の自宅にもサーバーを新規で2台導入した。

ありえん良いサーバーで普通に買ったら1台50万するんですよね。

ほかにもいろいろ買ったので金が吹っ飛んだ。

十一月

主担当のプロジェクトがつらい・・・となっている。これは完全に別件ですが他で受け持ってるプロジェクトが炎上していた、やばそう。

あとDFIRチャレンジで優勝した。ありがとうございました。

十二月

主担当のプロジェクトがつらい・・・となっている2

あと少し他のプロジェクトやったりした。

新年を利用して導入したサーバーにメモリを構築したりしている。

そして来年へ

今年は対外的にはいろいろと疲れてしまって何もやれなかった、来年もがんばるぞ

lv7777.hatenablog.com

来年の目標

目標

  • 今持ってるプロジェクトを無事に終了させる
  • OSSの活動再開
  • 手取り70万超える
  • 引っ越す(いくらなんでもこの家狭すぎ)→2月までには決める

  • パソコン買う(何でもいいから早く買いたくなってきた、今年中に買いたい)→終わりそう

  • 自宅のインフラ周りを固める(毎年言ってる気がするな)

    • lga 2011-v3系をデュアルで買う(2690v4レベルのスペックが欲しい)
    • gen9用のcpukit買う(買った)
    • lga 3647系を買う(某でのxeon goldで決定かな?)
    • 実家リージョンからHDDを大量に取り寄せる(現行で運用してるの除けば20個ぐらいあると思うからそっから適当にraid組めると思う)
    • vCenterの真面目な運用
  • モダンなプロジェクトを経験する

  • 環境構築、設計などの知識も取り入れる
  • AWSを完璧なレベルにする
  • 未踏応募する(、があまりいいのが思いつかないので記念受験になると思う)
  • pixel3買う
  • remix書きまくる(週一ぐらいでリリースできるぐらい打ち込みたい)
  • 技術書書く
  • 2019年12月までに700万ためる
  • 勉強会参加しまくる(引っ越してからの勉強会参加回数はほぼ0です、今までで一番最悪)
  • 東京を完全に理解する(東京は難しい)
  • 英語上達させる
  • 趣味グラミングを始める(趣味で全くプログラミングしてない。。。)

来年もいい年にして強くなるぞ!!!

androidが吹っ飛んだので2018年世代のカスタムandroidROMを調べてみた&LineageOS 14.01を入れてみた

この記事は虚無アドベントカレンダー虚無日目の記事です。

MDN翻訳アドベントカレンダーのみなさん無限日放置してて本当にごめんなさい

androidが突然死んだ

f:id:lv7777:20181214230736p:plain

つらい、前寝ぼけてTWRPをいじってて全てのデータを消去してしまったらしい、データ全部吹っ飛んだ、つらい、虚無

事象としては無限に再起動を繰り返すよくあるやつになった、ソフトブリックですね。電源を入れると下記のような画面でTWRPが無限回再起動します。これ本格的にヤバいと思ったけどrecovery modeには入れたのでそこからTWRPが起動出来た。

f:id:lv7777:20181214232752p:plain

ただandroid入れ直すだけでは芸が無いのでカスタムROM(Androidの派生OS)をいろいろ調べてみた。ほたリストやいろいろな記事を見るとLineageOSやBlissとかRRかなぁというお気持ちになった。

カスタムROMも2014年ぐらいに比べると大分下火になっているので2014~6年とあまり情勢は変わらないことが分かった。悲しい

主要カスタムROM機能比較 (Marshmallow) - Google スプレッドシート

2017年おすすめのカスタムROMまとめ【3月12日更新】

  • LineageOS

カスタムROMと言えばこれ

  • Bliss、RR

多機能OS、suやselinux無効化等

Blissと非常に迷ったが今回は始めてなのでLineageOSを選んだ。

やったこと

TWRPはnexus5に元から入っててADB/pratform-toolsも仕事で使っているので(こちらもつらいけどそれはまた別のお話)、実質ストレージの完全消去とストレージのリカバリーとOSのインストールだけ。

  1. ストレージのerase&filesystemのrecovery

[FIXED] Unable to mount /data or /system error - YouTube

2 OSのインストール、Gappsのインストール、addonsuのインストール

全部adb sideloadでできます。あとGappsがクッソ遅いので注意。

Nexus5にLinageOS android7.1.2(root化付き)を導入する【2018年1月版】

3 再起動すると全てが完了する

f:id:lv7777:20181214233159p:plain

終わりに

あーデータ飛んだ、しかもsimもわちゃわちゃやったら認識しなくなっている&取り出し口が固まっていて取り出せない・・・ OS入れたモチベとしてはAWSの2FAを電話で解除したかったのに結局sim新しく発行してもらわないといけない・・・だるい

自宅のFortiGateを6.02に上げた感想と6系でのforticlientからのipsec vpn接続手順

自宅のサーバーのVMを使う機会があってそういえば6系出たよな~とか思いつつスルーしてたのでこの機会に上げてみた。

アップグレードパスは5.2系から5.4系をすっ飛ばしていきなり6系

ついでにvpnが物故割れててサーバーまでアクセスできなかったので6系でipsec vpnを設定してみた。

6系で追加された機能とか

  • セキュリティファブリック

下記のような写輪眼みたいなアイコンが追加されている。
fortiviewとかそういう系のやつっぽい。

f:id:lv7777:20181014154709p:plain

これに伴ってforticlientもアップデートされた。セキュリティファブリックに登録するような項目が出てきた。

f:id:lv7777:20181014155712p:plain

自動化とかの機能も追加された(セキュリティファブリックなのか?)

こんな感じにすれば簡易SOCの完成じゃん?

f:id:lv7777:20181014163958p:plain

ELKスタックっぽくなった。これまでダッシュボードは1つでトップ画面のような役割を果たしていたが、メインとかいうサブ項目ができていたので複数作れるっぽい。kibanaみたいですね。

  • ログからログの種類(メモリ&forticlient等)を選べる

これは良アプデ。今までいちいち項目を設定で変えては戻ってみたいなことをしていたので便利。

  • wan-llbの名前が変わった。

SD-WANという名前になった。software defined - wide area networkかな。 ついでにSD-WANルールとかいうのもできた。SLA関連の設定項目がいくつかできてSLA系と融合するようになった?

みなさんマルチホーミングはしていますか?僕は信頼できる人間なので当然マルチホーミングをして信頼性を高めています(は?)

  • システム→レピュテーション

今までアクセスしたドメインを入力するとレピュテーションしてくれた(完)

f:id:lv7777:20181014162416p:plain


その他OSアップデートによる新機能は下記のドキュメントで公開されている。 https://www.fortinet.co.jp/doc/FortiOS_60_DS.pdf

vpn接続方法

基本的に以前のバージョンとあまり変わらないがインターネットに公開されている6系でのvpnの接続方法が一つもなさそうなので上げておく。

大まかにはユーザー作ってグループ作ってアドレス作ってトンネル作ってトンネルIFからWANへのポリシー開けるだけでOK。

新しくワンクリックVPN設定というのができているがよくわからないので使わないほうがよさそう(既存の作り方でも結構楽だし誰得)

  1. ユーザーを作る・・・省略
  2. アドレスを作る・・・省略、ここのアドレスはよくわからないが使われなさそうなので同一サブネットで被らなさそうな値を指定しておく。
  3. トンネルを作る

IPSECウィザードから接続タイプを選ぶ、今回はl2tpv3ではなくforticlient経由。 f:id:lv7777:20181014162828p:plain

ここはお好きなように↓

f:id:lv7777:20181014163338p:plain

先ほど作成したアドレスグループを使用するがここの値は使われない(分かる人誰か教えてください・・・)

vpnアクセスするとクライアントアドレス範囲で指定したipが割り振られる

f:id:lv7777:20181014163522p:plain

  1. IFを開ける 先ほど作ったIF2wanでポリシーを開ける。

  2. forticlientで接続する

こんな感じでつなげばOK、IPsecを指定すること。

f:id:lv7777:20181014164416p:plain

M@STERPIECEのコード解析

イントロのピアノが綺麗でドハマりした曲(ちなみにイントロはクリシェを使っている)。
4つ打ちでEDM感も出ててめちゃくちゃ好き。

今回は下記のコード譜を使うことにする。
一度ピアノで弾いて違和感なかったし大丈夫なはず。(イントロのA7が気になった)
【劇場版『THE IDOLM@STER MOVIE 輝きの向こう側へ!』主題歌】M@STERPIECE コード譜: アニソン・コード帳

スケールはEメジャー、キーも基本的にはEでBメロのみGに転調してサビでEに戻る。
これは「短3度転調」と呼ばれ有名(なんだけど耳がついてないため転調を聞き取るのが超苦手)
ちなみに短3度の転調は300cents。ピッチ的には1.18倍あげたり下げればいいらしい。1200centになるとちょうど2倍。

曲のピッチ、テンポの変更の計算について - 質問です。曲のピッチを変更し曲... - Yahoo!知恵袋

ちなみにM@S系のEメジャースケールの曲としてはstar!!GO MY WAY!!がある。
当然コード進行とかも似てるし他の方がコード解析もしてるのでdiffってみると面白いかも

アイドルマスター : コード進行を分析したい!!

【解説】アイドルマスターシンデレラガールズ OP「Star!!」コード進行解説 - ボカロで学ぶコード進行

作曲者はMONACA神前暁

曲の特徴

この曲はツーファイブを多用している。
ツーファイブの説明については各自でググっていただきたいが、
注意点としてはどんなキーだろうが251になればよく、今回の場合はEだからF#BEの並びじゃなきゃダメというわけではない。

Aメロやサビの4小節目で毎回入るBm7 E7 AM7の並びや、Aメロの1ループ(8小節目)の終わりのF#m7 B7 E、サビのD#m7-5 G#7 C#m7とかも意識して聞くとかなりそれっぽい、同サビG#m7 C#7 F#mとかいろいろある。

f:id:lv7777:20180817233448p:plain

コード進行的な

Eがキーなので当然Eが1で対応は以下のようになる。

E :Ⅰ F :Ⅱ G:Ⅲ A:Ⅳ B:Ⅴ C:Ⅵ D:Ⅶ

f:id:lv7777:20180818015634p:plain

Aメロ

1 3 6 7m1
4 3 7 6

コードの形に注目してみる。7th(メジャーセブンスではなくただのセブンス)は完全4度(5半音)と相性が良い。

Aメロで7thを使っているものはB7、E7がある。

B7の5半音上はE、E7の5半音上はAで、実際B7の次はE、E7の次はAが使われている。

転調部分

key:G │Am7   │A7   │Dsus4 D │B    │  %  │ 【サビ1】 key:E │E    │D#m7-5 G#7 │C#m7  │Bm7 E7 │

BはkeyEの5でありサビの最初はEなのでディグリーは5→1となり収まりがいい(ドミナントモーション)

サビ

1 73 6 5m1
4 36 2(1/3)4- 75
1 73 6 5m1
4 36 2(1/3)4- 75

サビの最初の部分はE│D#m7-5 G#7 │C#m7となっており、数字に直すと1|73|6となる。
カノン進行は156なので5の部分をツーファイブで置き換えたツーファイブカノン進行っぽい。
同様に6|51|4の部分でカノン進行は15634145となるので634の部分の3を51で置き換えた6|51|4のツーファイブカノン進行となる。

終止(カデンツ)は偽終止

コード解析初めてなのでこのくらいしかわからんかった・・・(間違ってたら指摘ください)
もっと完璧にわかるようになりたい・・・