shinobe179の日記

@shinobe179 の技術メモ・やらかし録

【Python】ファイルを作らずにデータをGzip圧縮する

はじめに コード中で生成したデータを、Gzip圧縮してAWSのS3バケットにアップロードする必要がありました。ローカルにファイルを作ってそれを送るのが手っ取り早いんですが、ファイルを作らずに済むスマートな方法を模索していたら、こんな時間になってしま…

【Hack The Box二十五番勝負 Advent Calendar 2020】10日目 vs Tabby(●)

はじめに これは、Hack The Box二十五番勝負 Advent Calendar 2020 10日目の記事です。 adventar.org サマリ 対戦相手:Tabby 対戦日時:2020年12月12日 18:00 - 23:59 結果:敗北 主な敗因: Tomcatについて無知であったがために、LFIを有効に使えなかった …

【Hack The Box二十五番勝負 Advent Calendar 2020】9日目 vs Help(●)

はじめに これは、Hack The Box二十五番勝負 Advent Calendar 2020 9日目の記事です。 adventar.org サマリ 対戦相手:Help 対戦日時:2020年12月10日 18:00 - 23:59 結果:敗北 主な敗因: GraphQLのエッセンスを時間中に習得できなかった エクスプロイトの…

【Hack The Box二十五番勝負 Advent Calendar 2020】8日目 vs Bank(●)

はじめに これは、Hack The Box二十五番勝負 Advent Calendar 2020 8日目の記事です。 adventar.org サマリ 対戦相手:Bank 対戦日時:2020年12月9日 18:00 - 23:59 結果:敗北 主な敗因: ディレクトリ列挙…… 通算成績:8戦1勝7敗 対戦相手 今回の対戦相手…

【Hack The Box二十五番勝負 Advent Calendar 2020】7日目 vs Teacher(●)

はじめに これは、Hack The Box二十五番勝負 Advent Calendar 2020 7日目の記事です。 adventar.org サマリ 対戦相手:Blocky 対戦日時:2020年12月8日 20:50 - 23:59 結果:敗北 主な敗因: 不自然だと感じたことの確認を放置した MySQLの出力結果をちゃん…

【Hack The Box二十五番勝負 Advent Calendar 2020】6日目 vs Blocky(●)

はじめに これは、Hack The Box二十五番勝負 Advent Calendar 2020 6日目の記事です。 adventar.org サマリ 対戦相手:Blocky 対戦日時:2020年12月6日 18:00 - 23:59 結果:敗北 主な敗因: ディレクトリブルートフォースのやり方がヘタクソだった 通算成績…

【Hack The Box二十五番勝負 Advent Calendar 2020】5日目 vs Valentine(●)

はじめに これは、Hack The Box二十五番勝負 Advent Calendar 2020 5日目の記事です。 adventar.org サマリ 対戦相手:Valentine 対戦日時:2020年12月4日 21:00 - 22:45 結果:敗北 主な敗因: Heartbleedに固執し過ぎた ディレクトリブルートフォースをや…

【Hack The Box二十五番勝負 Advent Calendar 2020】4日目 vs Lame(○)

はじめに これは、Hack The Box二十五番勝負 Advent Calendar 2020 4日目の記事です。 adventar.org サマリ 対戦相手:Lame 対戦日時:2020年12月3日 22:00 - 22:45 結果:勝利 主な勝因: ていねいに情報収集をやった ぶっちゃけめちゃ簡単なBoxだった 通算…

【Hack The Box二十五番勝負 Advent Calendar 2020】3日目 vs Shocker(●)

これは、Hack The Box二十五番勝負 Advent Calendar 2020 3日目の記事です。 adventar.org サマリ 対戦相手:Shocker 対戦日時:2020年12月2日 22:45 - 23:30 結果:敗北 主な敗因: Shellshockが題材だろうということに気づいていながらも、 /cgi-bin/ 以下…

【Hack The Box二十五番勝負 Advent Calendar 2020】2日目 vs Traceback(●)

はじめに これは、Hack The Box二十五番勝負 Advent Calendar 2020 2日目の記事です。 adventar.org サマリ 対戦相手:Traceback 対戦日時:2020年12月1日 20:30 - 23:00 結果:敗北(Own userまで到達) 主な敗因: luvitを使うときのオペレーションにもた…

【Hack The Box二十五番勝負 Advent Calendar 2020】1日目 vs Time(●)

はじめに これは、Hack The Box二十五番勝負 Advent Calendar 2020 1日目の記事です。 adventar.org 本日の記録 23:00過ぎから、Timeというマシンと戦いました。開始が遅かったことを差っ引いても、ほぼなすすべなく敗北。 というか、Writeupに相当するもの…

XMLHttpRequestを使ってリクエストを送信する

はじめに フロントエンド周りでちょっとした頼まれごとをした時に必要になったので調べました。<script> タグ内で使うことももちろんできるし、ブラウザのコンソールから実行することもできます。 本題 // オブジェクト生成 var xhr = new XMLHttpRequest // メソッ…

タスク管理弱者なりの、タスク管理ツールとの向き合い方

はじめに 私はタスク管理弱者です。弱者なりに色々勉強・工夫してきたので、自分なりのタスク管理の考え方をまとめます。あまり特別なことはありません。 タスク管理の目的 以下のような具合です。総じて「真っ当な社会人としてふるまうため」「期限ギリギリ…

『Fearless Change』を読んで、エンジニア的なモチベーションで社内営業に取り組めそうって話

はじめに 『Fearless Change アジャイルに効く アイデアを組織に広めるための48のパターン』の読書メモです。 www.amazon.co.jp 営業のスキルシート 私はエンジニアリングを仕事にしていることを結構気に入っています。エンジニアリングをやる理由としては邪…

【ISUCON】ISUCON10本選出場した話 #ISUCON

はじめに ISUCON10本選に某チームインフラ担当として出場しまして、賞金はおろか特別賞ももらえないという地味な結果に終わりました。本選でのshinobe179の働きと課題をまとめます。 今回の働き EnvoyのNginx化 sudo lsof -i:443でHTTPSをEnvoyが捌いてるこ…

【ISUCON】ISUCON10予選突破した話と、インフラ担当としての振り返り

はじめに 先日開催されたISUCON10で、私が所属する某チームは予選を突破しました。:tada: なぜかチームメンバーの誰もブログを書かないので、決勝に備えて某チームのインフラ担当たる自分のことだけでも振り返っておこうと思います。 拙者、ISUCON10予選通過…

【インフラ】ISUCON用Netdataダッシュボードを自作したので公開する

はじめに もうすぐISUCON10予選ですね。私もとあるチームの一員として出場します。今回の開催が最後ということでチーム一同気合が入っておりまして、特訓の日々です。 さて、競技中のモニタリングというのは言うまでもなく重要なポイントでありまして、今回I…

ここ最近のトピックまとめ(2020/07/01 - 07)

はじめに 2020年7月1日〜7日のもろもろをまとめました。1ヶ月はちょっと貯め過ぎて、1週間分見るのに30分以上かかったのでやむを得ず小分けに……。 トピック 技術 MVP なるほどなと思った。 MVPはここじゃなくて、ここ! pic.twitter.com/Wz74rKUOcs— ken@旅…

ここ最近のいいねまとめ(2020/06/30)

はじめに ここ最近のいいねまとめました。 セキュリティ業界に就職したいなら MVP。全ての某書読者は朝晩声に出して読むべき。 セキュリティ業界に就職したいという動機でKali Linuxのペネトレーションツールの使い方を勉強している人をたまに見かけますが、…

【VirtualBox】ゲスト OS を放置してたら DHCP で割り当てられる IP アドレスが消えていたときの対処

はじめに ゲスト OS の Linux を放置しているといつの間にかインターネットに接続できなくなっていて、 ip a や ip r すると NAT インターフェイスがなくなってデフォゲがなくなっていることがあります。 sudo systemctl restart network-manager とか sudo …

【Python】テキストファイルを開いて for で読み込むときは改行コードに注意しましょう(自戒

はじめに あまりに初歩的過ぎて書くまでもないと思ったけど、そういうのだからこそ(自分のために)残しておく価値があると言い聞かせて書く。とは言え初歩的過ぎて凹んでいるので Twitter に流すのはやめておこうと思う。 結論 テキストファイルを for 文で 1…

【プログラミング】AtCoder ABC164-D の解法に関するメモ

はじめに 1 年以上ぶりの ABC は C 完でした。 D の理解にすごく苦労したので、メモを残します。 アプローチ たくさんの解説記事を拝読しましたが、皆さん editorial と同じアプローチのようで、それを踏襲しました。大まかには以下のような感じです。 1つ目…

【プログラミング】複数キー、異順ソート(AtCoder ABC128-B)

はじめに 目から鱗だったのでメモします。異順ソートという言葉はないと思いますが便宜上名付けました。 問題 市名 点数 が複数個渡されるので、市名は昇順、かつ同じ市名なら点数は降順にして、番号(渡された順に1から採番)を出力する。 atcoder.jp ポイン…

『実践 bashによるサイバーセキュリティ対策』はセキュリティに興味があってbashに慣れていない人にすすめたい

はじめに 『実践 bashによるサイバーセキュリティ対策』を読みました。 『実践 bashによるサイバーセキュリティ対策』買って読んだ。表紙ほど毒気はない。— shinobe (@shinobe179) 2020年4月24日 公式: www.oreilly.co.jp 内容 第Ⅰ部では、bash や正規表現の…

【Python】リストや辞書を複製するときは copy() しなきゃいけないし、それらに値として更にリストや辞書が含まれているなら copy.deepcopy() しましょう(自戒

はじめに はまったのでメモします。 リストや辞書を代入で複製しようとするとハマる a_dict の構造をそのまま b_dict でも流用して、値だけ b に変えたれ~と思ったとき、代入によってそれをしようとすると、 a_dict['id'] まで b に変わってしまいます。調…

【PowerShell】あのLinuxコマンドのPowerShell版が知りたいなら、とりあえずLinuxコマンドのまま実行しとけ(自戒)

はじめに 私用PCとしてしばらくUbuntuを使っていたんですが、ディスプレイとの接続など細かなところで問題が起きるので、Windowsに戻ってきました。Linux恋しさにWSLを常用しているんですが、WindowsとWSLとの行き来が完全に透過的とは言えずめんどくさいと…

【AWS】AWS WAF と他リソースの紐づけ方が、紐づけ先リソースによって違うって話

はじめに オンプレだと値段も高くて運用もたいへんな WAF が、 AWS だとお手軽に入れられるってんで重宝されている AWS WAF。リージョナルリソース (ALB/API Gateway) と CloudFront に紐づけて使うことができます。 WAF では、これら紐づけ先のリソースをリ…

【AWS】AWS SAM(Serverless Application Model)が手軽にサーバーレス環境作れて便利で感動したって話

AWS

はじめに サーバーレスアプリケーションを作りたいときのとっかかりとして、 AWS SAM が非常に便利だったのでメモしておきます。ダラダラしてたら2020年はじめての記事になってしまいました。 AWS SAMとは 公式の解釈は公式を見てもらうとして、触った印象と…

【ネットワーク】 netdiscover でサブネット内のノードを把握する

はじめに 我が家の インターネット はマンション標準装備のものなんですが、ルーターの管理画面を見られないので、 Wi-Fi にどんな機器が繋がっているのかが分かりません。そこで、 netdiscover を使って同サブネット上に存在するホストを確認してみます。 …

ネットワーク機器のインターフェイス名をいい感じにソートする

はじめに ネットワーク機器のインターフェイス名って、だいたい以下のような感じです。 >>> interfaces = ['GigabitEthernet1/0/' + str(i) for i in range(1, 21)] >>> for interface in interfaces: ... print(interface) ... GigabitEthernet1/0/1 Gigabi…