from electron 2 web

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

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

kaliにxrdpを入れる、esxi6.0にowaspbwaを入れる

kali

kaliは2017.1

apt-get update && apt-get upgrade

apt-get install vnc4server

apt-get install xrdp

ここまで終わったら/etc/groupを開いてxrdpグループにrootを追加した後反映させる(grpconv)

そしたらwinからxrdpする

なんかreactみたいなマークのログイン画面出てくるはず(水色)

sessionはxvncを選ぶ。

そしたら普通に繋げるはず。終わり!w

これが出来るまで12時間+12時間で24時間かかった・・・めちゃくちゃ辛かった・・・

owaspbwa esxi6.0

OWASPBWAをESX(i)にデプロイ | 勉強の軌跡とか。。

こり!w

ovaファイルはtar形式になっている。linux環境ならzオプション無しの展開で展開できる。

展開した後、ovfを書き換えて再度圧縮。

tar cvf owaspbwa.ova OWASP_Broken_Web_Apps_VM_1.2.ovf OWASP_Broken_Web_Apps_VM_1.2.mf OWASP_Broken_Web_Apps_VM_1.2-disk1.vmdk

注意する点としてはこの順番(ovf,mf,vmdk)じゃないと受け付けてくれない。

こっちもかなり時間掛かった。。。つらい。

かなりいろいろいじったのでesxiがいろいろ分かった。 esxiでsshする方法(構成->セキュリティプロファイル)やovfテンプレートでovaもデプロイできることが分かった。

gen7系のサーバーでraidコントローラーいじる画面出す方法(難易度:激ムズ)

今日業務でgen7いじっててリーダーから教えてもらった。

えぇ・・・クソ難易度高いじゃんこんなんヒントないと絶対見つからんわ・・・って思った。

まずRBSUに入ってraidコントローラの順序をsataより高くする。あとraidコントローラー有効にするのも忘れずに。

f:id:lv7777:20170612221012j:plain

f:id:lv7777:20170612221028j:plain

この後Option ROM Configuration for Array (ORCA) に入る方法として2種類あるっぽい。

一つ目はPOSTでF8押してiLO3の設定画面入った後exitしてf8…ってとこでf8押してORCAに入る方法。

もう一つはPOSTでpress any keyしてctrl+Sみたいなのをおもむろにスルーしてさらにpress f8って言われてるとこもおもむろにスルーしてなんかまわり始めたらF8する方法。

どちらにしろ罠。さらにその前のところも罠。さらにググれない。罠。

追記

さいきんn分ぐらい置いておくとヤバい音してめちゃくちゃ轟音でファンが回り始めるようになったんですがどうしよう・・・めちゃヤバい音する。

追記:biosのオプションでファンをOS制御からCPU制御?みたいなやつにすれば通常に戻りました。よかった・・・

あ、あとdl 380G7ってSPPとか落とせる保守契約みたいなのって追加で契約できないんでしたっけ?だれか教えて

bgp peer3本め~自分が親の62gre4~

imanaraさんと張った。いい感じに行けた!heなどで一度貰ったv6ブロックは複数のgre tunnelのipv6エンドポイントとして使いまわせるっぽい。 もちろん自分と相手の2つをかぶらないように払い出す。

プレフィックスも考える必要があるのかな?この辺良く分からん。

手順

  1. どっかからipv6ブロックを貰ってくる。

heの場合、ログイン->tunnel broker(もしかしたら再度ログイン必要かも)->下の方のConfigured Tunnelsのドメインみたいなのクリックで情報が出てくる。

ルーターipv6部分のaddressやroutering tableを見て被って無さそうなipv6を決める。prefixは被っててもおkだと思う。

routerboardは最長一致でルーティング&&神なので適当にいい感じのプレフィックスにしたらルーティングテーブルが出来ていた。

つまりやっぱprefixまで考える必要があるね。今回はサブネットマスク的なのを126にしたのかな?いや実際はheから64ブロックで貰ってるんだけど。

  1. 以下省略

自分のブログをbgpで検索すれば出てくる。1本目のやつ。

懺悔と後悔

弊社はOJT(大嘘)で放置プレイが多いのだが今日はその中でもかなりキツいのが来た。内容としてはpostfixdovecotを入れてsmtppop3を使って社内メールサーバーを3時間で作れというもの。背景としてはお客様のメール鯖がいきなり死んだらしい。

まぁpostfixdovecotも触ったことないしかなりキッツイというか普通に無理だったし技術リーダーにつまった所を手伝って貰ったりした。

まぁそんな感じで自分の技術力のNASAで全然できなかった。

さらに最悪なのが自分と同期の二人でやっていたが自分では全然出来なくてもう一人がほとんどやってくれた。一応自分新卒の技術リーダーなのに・・・

とっさにifconfig-eth0とかいじるのかなり無理だしとっさにやるには本当にガチプロじゃないと無理だなぁと感じた。はぁ・・・

smtpとかpop3のNWレベルの知識も自分より彼の方があるなぁと感じた。自分がここまで雑魚だとは思わなかった。本当に悔しい

まぁでもギリギリ3時間で

  • 物理サーバーの問題の特定(ECCregメモリが飛んでた)
  • raidの構築(raidコントローラーが見つからなかった)
  • centos6.7のインストール(ソフトウェアraidを組んだ)
  • NW回り(proxy,デフォゲ、ipaddr、ルーティングを勿論cuiで設定した)
  • postfix&&dovecotのインストールとその設定
  • 実際にメールが飛ぶかの検証
  • メーリングリストの作成と検証

を終わらせた。

その後お客様の所にHDDを持っていきラック鯖にセットして相手の元あった環境に直して以前と同じようになるようにした。(新卒2人だけで!)

まぁ検証用のipを本番用に変えてデフォゲやproxy変えて上手く8.8.8.8に通るようになったりは1時間30分くらいでできた。その後pop3の受信の検証なども無事クライアントから取れたのでホッとした。その後上流の鯖からメールを取れるようにdovecotを受信設定をした(まぁ実際にはメール間の転送をsmtpではなくpop3でやるものだと勘違いしていてそのことに現地に行ってから気づいてだいぶ焦ったんですが) /var/log/mailog見るとメールは送られてきていてgmailからそのドメインに送ったメールを見るとちゃんとテストユーザーには送信が確認できたが特定のユーザーや特定のメール(広告メール)は来なかった。

その後4時間ぐらいデバッグしていたが全然問題が分からず非常に辛い思いをした。

デバッグログの見方は分からず、/var/log/maillogを見ても全然見方が分からず・・・postfixとdacovotのどちらで、どこで問題が発生しているかも分からず、、、サーバー上でのメールの見方も分からず・・・

時間だけが刻一刻と過ぎて行ったし焦りと無力感で最悪という感じだった。

結局今日はこれ以上やっても分からなかったので90%ぐらいの状態だが帰ってきた。はぁ・・・あとちょっとだったのに・・・

技術力がないから障害の切り分けも出来ずログの見方も分からずデバッグの方法も分からず。本当に辛かった。。。

後ちょっとだったのに・・・技術力があればこんなことにはならなかったのに・・・同期に技術力で負けたというのは本当に悔しいし期待に答えられなくて悔しい。

追記と後日談

技術リーダーに引き継いで貰ったんだがなんと自分たちはちゃんと出来ていたっぽい。

言い訳をすると自分も出来ていたのは確認していて、出来なかったユーザーはGmailに転送設定をしていたのだが元々のメールサーバーにその処理が入っておりそれが設定されていないので出来なかった。そりゃ出来るわけないだろ。言えよクソ。(いや、正確には相手は素人で何も分からないので自分が「なぜGMailで開いているのでしょうか?それってグーグルのメールサーバーにメールを飛ばす設定必要ですよね?」と確認するべきだった)(「この時もし気づいてたら金を取るフェーズまで持っていって上の方に引き継いだら100点だったね」と言われた。)

せっかく出来ていたのに時間を潰してしまった上に本当は成功だったのに結果的に失敗になってしまった。

同期で一緒に作業した奴はもう出来てるって言ってたけど自分は誇張だと思っていた。本当に申し訳ない。

とは言え技術力で負けたのは確かなのでもっと勉強していきたい。

ハニーポットいろいろ(dionaea,cowrie)

知見

  • cowrieはcowrieユーザーで起動させる

  • dionaeaはrootで起動させる。

rootじゃないとknownport開かない。ftpとか。

  • cowrieはデフォルトだとどんなユーザーでも許可してしまうのでvarだかにあるuserDB.txtをいじる。

内容は擬態する内容による。自分の場合はrouterboardに化けたのでデフォルトパスワードのadmin/nullやらadmin/admin、root/pass,root/passwordなどを追加した。

このくらいあれば大抵のスクリプトキディは入ってきてくれる。

  • cowrieのホスト名をいじる

cowrieは有名なのでなるべくデフォルトをいじったほうがいい。自分の場合はrouterboardにしたのでMikroTikとか。(まぁコマンド全然違うから少し触ればバレるんだけど。

  • setでコピっていろいろ

setoolkitで自分のルーターのアクセス画面をcloneしてハニーポットにする。dionaeaとフィッシングツールの相性は良さそう。

setは1232で~/.set/www_root/index.html(呪文)

あとはdionaeaにぶち込んだらおk。

nmap -sS -sVするとバレる奴の回避。

ftpのバナーいじるだけで全てのポートがdionaeaと判定されず?になった。

  • cowrieのuserDB.txt見たいな感じでdionaeaはユーザー制限をすることができない。

cowrieのuserDB.txt見たいな感じでdionaeaはユーザー制限をすることができない。

正直これはかなり微妙ポイントだと思うのでpythonの練習もかねてプルリクを投げていきます。進捗あったらそのうちブログ書く。

  • dionaeaFRを入れた後いろいろなapt-getでソフトウェアを入れられなくなった件

意味分からんマジで辛い。これのせいでかなり時間溶かした。辛すぎる。

ということでcowrieを入れた後はdionaea入れる前にkippo-graphを入れると良さそう。

それかcowrieのログをdionaeaFRで見れるようにしてほしい。

あるサイトだけ接続できなかったり、tcpの再送がめっちゃ起こっているとき

こんなパターン。私はこれを赤黒サンドと名付けた。ドメイン解決は出来ているものとする。

f:id:lv7777:20170514164649p:plain

fix

routerboardのport80をdst-natでポートフォワーディングしているとこんな風になった。閉じたら治る。 なんで特定のサイトだけこうなるのか気になる。MTUじゃあるまいし。

42番がdst-natでポートフォワーディングしている

任意のサイトに接続出来ない(キャッシュがあればいけるかも)

ということで80番や42番を外部に公開するときはセキュリティだけじゃなくてNW障害に気をつけようね。

ついでに25番なんかを開けるのはやめようね!(OP25B)

dionaeaFRをraspiに入れる(ImportError: cannot import name patternsやDBが無い等のfix)

インストー

これとかめっちゃわかりやすい。感謝。

nodejsのbuildがめちゃ重い以外の感情が亡くなるので2日に分けてnodejsのbuildしながら寝るといい。

www.vincentina.net

ただし前提条件としてraspiならインストールの前にapt-get install sqlite3を実行しておく必要がある。

ImportError: cannot import name patterns

1.8以降だとdjangoの記法が変わったっぽい。

stackoverflow.com

djangoのバージョンも今はだいぶ新しくてdionaeafrは古いバージョン要求するのでちゃんとpip install django==1.8みたいな感じでバージョンしていしましょうね。

django.db.utils.OperationalError: unable to open database file

これも良く見たら上のブログに書いてあった。

起動するとこんな感じになる。まだ日が浅いのでぜんぜん面白いグラフになってないけどね。

f:id:lv7777:20170513121033p:plain