プログラムのデータ形式・実行形式のひとつ。プログラムを実行するランタイム(インタープリタ)での実行速度を向上するために、数値や命令のバイナリ化を行ったもの。バイトコードにすることで、1つのバイナリ(ファイル)でアーキテクチャの異なるコンピュータでも実行できる、個人がスクリプト言語を作る際に、インタープリタと比べ高速な実行が可能で、機械語コンパイラほどの手間をかけずに済むという利点がある。
前回 は、「詳解セキュリティコンテスト: CTFで学ぶ脆弱性攻略の技術 Compass Booksシリーズ」という書籍を、引き続き読み進めていて、シェルコードの章を読みました。 今後も、「詳解セキュリティコンテスト」を、引き続き読み進めるつもりなのですが、今回は、「ゼロからマスター!Colab×Pythonでバイナリファイル解析実践ガイド (エンジニア入門シリーズ)」という書籍を入手したので、こちらをざっと読んで、概要だけでも、まとめておこうと思います。 目次を見ると、だいたいの内容は予想ができると思いますが、メインは、Python を使って、バイナリファイルを解析するということです。対象のバ…
Gemini 2.0とClaudeの比較レビュー DNSの基礎知識と負荷分散 アーキテクチャ設計とADR Raspberry Pi AI Cameraレビュー OpenAIの経営状況と生成AIの規制 2024年のデータベース業界動向 LocalStackを使ったAWSサーバレス開発ワークショップ ドメイン駆動設計入門書の感想 新型Mac mini (2024)レビュー browser-useライブラリの使い方と注意点 Go言語ジェネリクス徹底解説 大規模ハッキングと2段階認証の危険性 神社経営の現状と課題 ダークパターンに関する書籍レビュー みずほ銀行システム一時不具合とサイバー攻撃の可能性 …
今日は主に parser や irb の修正がありました。 [e4ec2128ae] Nobuyoshi Nakada 2024-12-28 09:40:37 UTC parser が Ctrl や Meta キーで修飾されたマルチバイト文字を SyntaxError として拒絶するようにしています。 ripper 利用時に tokenize で誤った分割したバイト列を返してしまっていたようです。 [ruby-core:120435] [Bug #20990] [609a555ee0] Stan Lo 2024-12-28 15:55:20 UTC 標準添付ライブラリ irb の組み込みコマン…
こんにちは!SmartHRでプロダクト横断基盤開発チームにて開発をしている rock_san です。 2024/12/20に開催された第9回SmartHR LT大会の様子を、スキル管理・学習管理の開発をしているtnagatomiさんと共にお伝えしたいと思います! 今回は忘年会も兼ねており、昨年12/15に第1回が開催されてから記念すべき1周年の回でもありました。 ちなみに過去のLT大会についてはLTカテゴリーからたどれるので、よかったらご覧になってください。 SmartHR LT大会について SmartHR LT大会は有志のプロダクトエンジニアがDevRelとともに企画・運営している社内イベン…
mrubyファミリ (組み込み向け軽量Ruby) Advent Calendar 2024、23日目の記事です。メリークリスマス! qiita.com mrubyファミリAdvent Calendar、今年は1日目からyharaさんによる衝撃的な記事がありました。 yhara.jp なぜ衝撃的だったかというと、僕も全く同じことをしてた(mrubyをRubyで実装しようとしていた)ので...。 で、その実装の下準備のために mruby/c 1.2 のコードリーディングをしていたわけです。今日はそのメモの内容を整理して、最低限のmruby VMの実装を理解する手助けとしようと思います。 ちなみに今…
改めて、TSG CTF 2024へのご参加ありがとうございました。writeupとは別に、作問した問題について所感を(日本語でカジュアルに)メモ書きしておこうと思います。 僕が関係した問題のwriteupは、こちらにまとめてあります github.com 結局作問をしてしまった 昨年でTSG CTFでの作問は最後にしようと思っていました。 *1 そういえば、TSG CTFで僕が作問するのは最後にする予定(LIVE CTF含め)— mora (@moratorium08) November 6, 2023 実際もうTSGにいる時間も長くないと思っているので、適切な移行は行われるべきでそれが去年の…
GILとは Pythonの世界から抜け出してみよう(PythonからC言語関数を呼び出す) C言語関数とPython関数を比較してみる(GIL有効) C言語関数とPython関数を比較してみる(GIL無効) (おまけ)トップレベルの並列化とローレベルな並列化を比較してみる 最後に We Are Hiring! こちらはABEJAアドベントカレンダー2024 20日目の記事です。 プラットフォームアプリケショングループの平原です。 Python 3.13からGILを無効にすることができるようになりました。 ですが、GILがどのように影響するかを理解していないと、 GILを無効にすることで得られる…
この記事は BBSakura Networks Advent Calendar 2024 の 12/14(土)の記事です。 こんにちは BBSakura Networks 3年目の金井 (@masu-mi.bsky.social, @masu-mi) です。 ここ数年 eBPF は注目され続けてますね。先日 BBSakura Networks もスポンサーとして eBPF Japan Meetup #2 に携わりました。 これについては、16日の記事として松下さんが参加報告をしてくれたようです。 そこで eBPF の個人的なおもしろトピックを紹介したいと思います。 はじめに断っておきますが、概…
TSG CTF 2024へ参加しました。そのwrite-up記事です。
ブラックフライデーセールで昇降式デスク買いました 汚いお部屋をさらしてしまい申し訳ないですが、下記の昇降式デスクが届きました。 結論、コスパの割には良い感じです。 どでかいウルトラワイドディスプレイを乗っけているので、タイピングしてると多少揺れは出ますが、気にならない範囲だと思います。 ですが、もっと安定感がほしいなら、5万円以上するものを使用したほうが良いかもしれません。 私が今回買ったのはコレです。 FEZIBO 電動 昇降式デスク スタンディングデスク 幅120cm 奥行60cm 高さ72-118cm 上下昇降デスク 高さメモリー機能 静音 衝突検知 収納フック付き pc オフィスデスク…
今年もTrinoへのコントリビューションをまとめてみました。 去年は仕事の関係もあってバグ修正のPRなどもあったのですが、今年はIcebergコネクタなどのコードを読んでいて気付いた細かいコードの修正が多く、去年と比べて数は多いけど内容はしょぼいものが多かったです。 Trino本体 Treat error in cast to varchar(x) as USER_ERROR サイズ指定付きVARCHARへのキャストがサイズ制限で失敗した場合のエラーをINTERNAL ERRORからUSER ERRORに修正 Include addresses in retainedSize of Icebe…
2024年12月14日をもって20歳になります。振り返りとして、10代を簡潔にまとめます。なお、予定だと誕生日当日は東京にいるはずです。 概要 この文章は駄文です。校正もあんまりしていません。「しお」の表の顔がどのようなものかを知れるとは思います。 小学時代 日本宇宙少年団という、少年少女のためのJAXA後援の組織の高知分団や、高知県芸西村にある天文台の勉強会に所属していました。前者では、水ロケットや火薬ロケットを打ち上げたり、浦戸湾のほうに出かけて地質調査をしたりとフィードワークがかなり多かったように思えます。後者では、小惑星を探したりしていました。私の代では結局見つからなかったものの、小学…
はじめに 執筆時の各種ツールのバージョン 前提知識: 生成したObjective-Cコードでプロパティ名の末尾にアンダースコアがつく条件 今回解決したい課題 デバッグの準備 Kotlinのリポジトリを手元にcloneする gradle.propertiesの書き換え(Kotlin/Nativeのみ) IntelliJ IDEAでデバッグの準備をする Debuggerの準備をする デバッグする 目的の処理を探してブレークポイントを貼る ビルドプロセスに対してDebuggerを接続する Remote JVM Debugを実行する Debuggerで値を確認する プロパティ名の末尾にアンダースコアが…
こんにちは! STORES 決済 のバックエンドエンジニアをしているしまだ(mii)です。 10月27日に開催された JJUG CCC 2024 Fall に参加してきました。STORES からは2名がセッション登壇、1名がLTをしました。 このブログでは、参加したメンバーの感想や印象に残ったセッションを紹介します。 ccc2024fall.java-users.jp 登壇セッション・登壇者コメント Content Security Policy入門: セキュリティ設定と違反レポートのはじめ方 / Yusuke Uehara 資料:https://speakerdeck.com/uskey51…
今回は、スクリプトについてまとめます。 [先に知っておくべき単語] 高水準言語:人間が理解できるレベルのコードのこと。 バイナリ:コンピュータが理解できる0と1の組み合わせで表現されたデータのこと。 スクリプトとは 特定のタスクや操作を自動化するための、一連の流れを順序に沿って書いたプログラムコードのこと。 スクリプトを書くためには、スクリプト言語を使う。 スクリプト言語とは 特定の環境で簡単にプログラムを書いてすぐ実行できることを重視して設計されたプログラミング言語。 スクリプト言語の特徴: 主に、ブラウザやシェル、ゲームエンジンなどの特定の環境で動作する。 簡単な記述で目的を達成できる。 …