並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 217件

新着順 人気順

Fuzzingの検索結果1 - 40 件 / 217件

  • 同期エンジンの心臓部を書き換える

    0 0 719 0 この 4 年間、Dropbox では、デスクトップ クライアントの同期エンジンを白紙の状態から再構築しようと懸命に取り組んできました。同期エンジンは、デスクトップ パソコン上の Dropbox フォルダの陰に隠れた魔法です。これは、Dropbox で最も長く使われているコード部分であり、最も重要なコード部分の 1 つでもあります。今回、新しい同期エンジン(コードネーム「Nucleus」)をすべての Dropbox ユーザー向けにリリースさせていただくことを、ここに発表いたします。 同期エンジンの書き換えは本当に大変な作業で、多くの環境でマイナスともなりうる構想であったことに鑑みると、手放しで祝う気持ちにはなれません。結果的には Dropbox にとって素晴らしいアイデアであったわけですが、それは、私たちがこのプロセスにどのように取り組むべきかを熟考したからこそ、たどり着

      同期エンジンの心臓部を書き換える
    • セキュリティエンジニアを目指す人に知っておいてほしい制度やガイドライン・サービスのまとめ - FFRIエンジニアブログ

      はじめに 研究開発第二部リードセキュリティエンジニアの一瀬です。先日は「セキュリティエンジニアを目指す人に知っておいてほしい組織」を公開しました。今回は、セキュリティエンジニアを目指す人に知っておいてほしい制度やガイドライン、サービスについてまとめました。こちらも、セキュリティエンジニアとして働いていると日常的に会話に出てくるものばかりです。これからセキュリティを学ぼうという方の参考になれば幸いです。なお、記載した情報はすべて執筆時点 (2023 年 7 月) のものです。 はじめに 制度・ガイドライン セキュリティ設定共通化手順 (SCAP) 共通脆弱性識別子 (CVE) 共通脆弱性評価システム (CVSS) ISMS適合性評価制度 政府情報システムのためのセキュリティ評価制度 (ISMAP) CSIRT Services Framework PSIRT Services Framewo

        セキュリティエンジニアを目指す人に知っておいてほしい制度やガイドライン・サービスのまとめ - FFRIエンジニアブログ
      • Go言語プログラミングエッセンス

        この本の概要 Go言語ユーザーとして,「もう一段レベルアップしたい」「開発に使いたい」と思っている方に向けた,Go言語の解説本です。関数やパッケージの使い方,並行処理,テストといった基本的なトピックにおいて,「こう書くと綺麗になる」「こう書くとパフォーマンスが上がる」といったエッセンスを紹介します。後半ではCLIアプリ/Webアプリの開発手順や,現場で使われている便利なパッケージなど,著者が業務やOSSの開発で培った技術をふんだんに紹介します。 こんな方におすすめ Go言語の入門を終え,さらに深く学びたい人 第1章 プログラミング言語Goとは 1.1 Goの簡単な歴史 1.2 Goの立ち位置 1.3 Goが利用される場面 標準でUTF-8をサポート マルチプラットフォーム 並行処理の扱いやすさ ストリーム指向 シングルバイナリ 1.4 教育用途としてのGo 1.5 なぜGoが使われるのか

          Go言語プログラミングエッセンス
        • Google、オープンソースソフトウェアの脆弱性をバージョンごとにデータベース化する「OSV」(Open Source Vulnerabilities)プロジェクトを開始

          Googleは、オープンソースで開発されているソフトウェアの脆弱性がどのバージョンで生じ、どのバージョンで修正されたかなどの詳細をデータベース化する「OSV」(Open Source Vulnerabilities)プロジェクトの開始を発表しました。 オープンソースはクラウド基盤からアプリケーションまで、さまざまな場所で重要な役割を果たすようになってきています。そのため、正確な脆弱性情報の管理もまた重要さを増しています。 OSVにより、オープンソースソフトウェアの開発者やメンテナは手間がかかっていた脆弱性の報告が容易になります。 利用者はオープンソフトウェアの脆弱性がいつ修正されたのかなどの正確な情報を簡単かつ一貫した方法で得られるようになり、利用するソフトウェアの脆弱性の管理と対応を迅速かつ容易にできるようになります。 バグの再現手順を提供すればOSVが自動的にバージョン情報などを探索

            Google、オープンソースソフトウェアの脆弱性をバージョンごとにデータベース化する「OSV」(Open Source Vulnerabilities)プロジェクトを開始
          • GitHub Actions のワークフローをチェックする actionlint をつくった - はやくプログラムになりたい

            GitHub Actions のワークフローを静的にチェックする actionlint というコマンドラインツールを最近つくっていて,概ね欲しい機能が揃って実装も安定してきたので紹介します. github.com なぜワークフローファイルの lint をすべきなのか GitHub Actions が正式リリースされてからだいぶ経ち,GitHub 上での CI は GitHub Actions が第一候補となってきているように感じます.僕も新規にリポジトリを作成して CI をセットアップする場合はほぼ GitHub Actions を使っています. ですが,GitHub Actions には下記のような問題があり,actionlint でそれらを解決・緩和したいというのが理由です. ワークフローを実装する時は,GitHub に push して CI が実行されるのを待って結果を確認するという

              GitHub Actions のワークフローをチェックする actionlint をつくった - はやくプログラムになりたい
            • 【JavaScript】Idle Detection APIとかいう悪用以外の使い道がないAPI - Qiita

              Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 2024/09/10にIdle Detection APIというAPIが更新されていました。 ステータスはDraft Community Group Reportです。 これはコミュニティによる提案であり、W3Cによる正式な勧告ではありません。 個人や団体レベルでも、とりあえずRFCを作ってみたり検討したりできる段階ということです。 以下はこの提案を管理しているGitHubから、このRFCの意義を解説したReadmeの紹介です。 User Idle Detection API このAPIでは、開発者はユーザがアイドル状態になったとき(キ

                【JavaScript】Idle Detection APIとかいう悪用以外の使い道がないAPI - Qiita
              • rust.tokyo のまとめ・感想 - mizchi's blog

                このブログを書いてる経緯 rust.tokyo 楽しみ!絶対行く!といってたのに申込みを忘れたところ、じゃあスタッフとしてブログを書けという話になったので、ブロガー枠?らしく感想を書きます。とはいえ書けるのは見たやつだけです。 https://rust.tokyo/sessions# 前提 自分は低レベルプログラミングは詳しくないです。年に3日ぐらい思い出したように Rust 勉強することがある。 wasm 周りのエコシステムはずっと追ってる。 会場の雰囲気 組み込み勢とブロックチェーン勢が多そうな気配を感じた。 Visualization of mechanical CAD drawings using WebAssembly and WebGL Aki / CADDi (発表資料見つからず) 概要 Computer aided design (CAD) models used in m

                  rust.tokyo のまとめ・感想 - mizchi's blog
                • Content-Disposition の filename という地雷。 (1個の観点で17個の脆弱性を見つけた話) - ぶるーたるごぶりん

                  English ver: https://gist.github.com/motoyasu-saburi/1b19ef18e96776fe90ba1b9f910fa714#file-lack_escape_content-disposition_filename-md TL;DR 1つのブラウザ、1つのプログラミング言語、15個の { Web Framework, HTTP Client ライブラリ, Email ライブラリ / Web Service 等} で脆弱性を見つけました。 見つけた脆弱性は、全て 1つの観点で発見した (多分 50-80 くらいのプロダクトの調査をした)。 RFC の記載では、(かなりわかりにくく)この問題に対する要件が記載されており、WHATWG > HTML Spec の方はしっかりと書かれているといった状況にある。 この問題は、 Content-Dispo

                    Content-Disposition の filename という地雷。 (1個の観点で17個の脆弱性を見つけた話) - ぶるーたるごぶりん
                  • Everything I know about the XZ backdoor

                    Democracy is on the ballot. For her future, vote.Everything I know about the XZ backdoor stateevergreeninblogtagsopen-sourcedate3/29/2024This publication was last updated at 12:49 PM EST on April 8th Recently, a backdoor was discovered in XZ, a popular library for lossless data compression. Initial research efforts were predominantly concentrated on unpacking the well-disguised attack vector, whil

                    • Big Sky :: Go に Fuzz testing が入った。

                      みなさん Fuzz testing ってご存じでしょうか。 人間が作る物は必ずといっていいほどバグが存在します。そしてそのコードをテストする人間も必ずバグを見逃します。 想定していなかった境界値テスト等、人間には先入観という物があり、それが邪魔をして簡単にバグを見逃します。昨今、この様な誰も気付かなかったバグの隙間を突く様な脆弱性が沢山見つかっています。 物によっては重大インシデントに発展する物まであります。 こういった人間では想定できない様なバグを見付けてくれるのが Fuzz testing です。Fuzz testing を実施する事で、ソフトウェアは頑丈になり安全にもなりえます。 本日、Go の master ブランチに Fuzz testing の機能が入りました。 [dev.fuzz] Merge remote-tracking branch 'origin/dev.fuzz'

                        Big Sky :: Go に Fuzz testing が入った。
                      • マイクロソフト、バグや脆弱性の検出を自動化する「Project OneFuzz」をオープンソース公開。すでに同社内でWindowsやMicorosoft Edgeのデバッグに利用中

                        マイクロソフトは、ソフトウェアのバグや脆弱性の検出をファジング(Fuzzing)と呼ばれる手法を用いて自動化するためのフレームワーク「Project OneFuzz」をオープンソースで公開することを発表しました。 Project OneFuzzは、すでにマイクロソフト社内でWindowsやMicrosoft Edgeなどの開発チームによりバグや脆弱性の検出に実際に使われていると説明されています。 「Microsoft announces new Project OneFuzz framework, an open source developer tool to find and fix bugs at scale」から引用します。 Project OneFuzz has already enabled continuous developer-driven fuzzing of Wind

                          マイクロソフト、バグや脆弱性の検出を自動化する「Project OneFuzz」をオープンソース公開。すでに同社内でWindowsやMicorosoft Edgeのデバッグに利用中
                        • テストケースの名前には条件と結果を含めた方が良い - 感情を込める

                          という考えにたどり着いたので、考えのスナップショットをとっておく。 Go言語における、テスト関数名とサブテストのname引数の値を「テストケースの名前」・「テスト名」と呼ぶことにしている。 (*testing.T).Run(name string, f func(t *testing.T)) bool テスト名に近いものとして、(*testing.T).Errorや(*testing.T).Logの引数がある。これらはテスト実行時の出力に含まれるが、テストケースを分かつものではない。あくまで、特定のテストケース内の情報を増やすものだ。対するテスト名は、(通常は)テストケースを分割できる最小単位である。 テストケースがテスト名の単位で存在するということは、テスト名はそのテストケースを十分に表現できていたほうがよいということだ。さもなくば、検証・変更しようとする仕様に対応するテストケースや、実

                            テストケースの名前には条件と結果を含めた方が良い - 感情を込める
                          • Go言語がGenericsを導入、過去最大の変更となる「Go 1.18」正式版リリース

                            Googleが中心となってオープンソースで開発されているGo言語の最新版となる「Go 1.18」正式版がリリースされました。 Go go1.18 is released! Release notes: https://t.co/UFumhMjcOL Download: https://t.co/fnDCVVhJXK#golang pic.twitter.com/uWNSy5V7nv — Go (@golang) March 15, 2022 ブログ「Go 1.18 is released!」によると、Go 1.18は、「massive release that includes new features, performance improvements, and our biggest change ever to the language.」(新機能、性能改善、そして過去最大の変更の変

                              Go言語がGenericsを導入、過去最大の変更となる「Go 1.18」正式版リリース
                            • GoogleがPython用ファジーテストツールAtherisをオープンソースとして公開

                              Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。この本では、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

                                GoogleがPython用ファジーテストツールAtherisをオープンソースとして公開
                              • GitLab、バグや脆弱性の検出ツール「GitLab Protocol Fuzzer Community Edition」をオープンソースで公開。APIやHTTP経由などでファジングを実行

                                GitLab、バグや脆弱性の検出ツール「GitLab Protocol Fuzzer Community Edition」をオープンソースで公開。APIやHTTP経由などでファジングを実行 ファジングとは、検査対象のソフトウェアに「ファズ(fuzz)」と呼ばれる問題を引き起こしそうなデータを大量に送り込み、その応答や挙動を監視することでバグや脆弱性を検出する検査手法です。 GitLab Protocol Fuzzer Community Editionは、GitLabが2020年6月に買収したPeach Techが提供する商用のファジングツール「Peach Fuzzer Professional」をベースにしたもの。 「Peach Fuzzer Professional」と、それをベースにオープンソース化されたGitLab Protocol Fuzzer Community Edition

                                  GitLab、バグや脆弱性の検出ツール「GitLab Protocol Fuzzer Community Edition」をオープンソースで公開。APIやHTTP経由などでファジングを実行
                                • 無理なく始めるGoでのユニットテスト並行化 - カンムテックブログ

                                  KanmuでPoolを開発しているhataです。最近、ロボット掃除機を買いました。ロボと猫がじゃれている景色はいいですね。 今回はGoのユニットテストの並行化についての記事です。 TL;DR Goのテストは、並行化することでテスト実行時間の短縮やテスト対象の脆弱性の発見などのメリットがある 基本的にはそのままでも最適化されているが、テストコードにt.parallelを記述することでよりきめ細やかな最適化を施すことができる ただし、一定規模以上のアプリケーションへの導入・運用は大変 テストコードを一気に並行化するtparagenというツールや、並行化忘れを防ぐ静的解析ツールがあり、これらを使うことで無理なくテスト並行化の導入・運用ができる はじめに ユニットテスト並行化とは 本記事では、「並行」「並列」という用語を使用します。本記事におけるこれらの用語を定義します。 並行:複数の処理を独立に

                                    無理なく始めるGoでのユニットテスト並行化 - カンムテックブログ
                                  • Goのリリースプロセスとブランチ戦略 - YAMAGUCHI::weblog

                                    はじめに こんにちは!Google Cloudでオブザーバビリティの担当をしているものです。CVE-2021-44228のおかげでバタバタしていますがみなさんはお元気ですか? このエントリーはpyspa Advent Calendar 2021の15日目の記事です。昨日は @moriyoshit さんの「Goのロギングライブラリ 2021年冬」でした。めちゃめちゃ調べてあって良い記事でした。Goでログライブラリの選定をする際にはこちらをまず読むと良さそうです。 2021.12.21 追記: 穴が空いていたのでGo Advent Calendar 2021 その1の14日目の記事にもしました。 さて、今日は本当は「Goならわかる確定申告第三表」という記事を書こうと思ったのですが、まだ確定申告の時期ではないのでそれは辞めにします。そのかわり、今日はGo 1.18がめでたくベータ版リリースとなっ

                                      Goのリリースプロセスとブランチ戦略 - YAMAGUCHI::weblog
                                    • Leaving Google

                                      Last Friday was my last day at Google. Of course, when you leave Google you have to write some kind of letter or rant. Seriously it's a rule: they won't remove your neural implant until you hit publish. Jokes aside, this is more of a memoir than a polemic. Of course I have opinions, but now's not the time. This is more about reflecting on the last seven years of my life, thinking about what was im

                                        Leaving Google
                                      • Goでは○○envが不要になった理由(バージョンアップを怠ると損する理由)

                                        Goでは○○env系のツールは不要 複数バージョンの処理系を混在させるために、○○env系のツールが広く普及している言語はたくさんあります。しかし、すべての言語で必ずしも必要であるわけではないと筆者は考えています。いままで使っていた言語で○○env系のツールを使っていたため、特に深く考えずに他の言語でも利用しているということはあるでしょう。 Goでも○○env系のツールはいくつか存在します。しかし、筆者はGoにおいて複数バージョンのツールチェイン(コンパイラや標準ライブラリ)を混在させる必要があるのは稀でしょう。また、混在させる必要あったとしても公式で方法を提供しているため○○env系のツールは不要です。 むしろ、goenvを使っていてうまく動かない。PATHの設定がうまくいかないなどのトラブルをよく見かけます。(そんな方が検索に引っ掛けてくれることを祈っています)。 Goの後方互換性 G

                                          Goでは○○envが不要になった理由(バージョンアップを怠ると損する理由)
                                        • Go: A Documentary

                                          Go: A Documentary by Changkun Ou <changkun.de> (and many inputs from contributors) This document collects many interesting (publicly observable) issues, discussions, proposals, CLs, and talks from the Go development process, which intends to offer a comprehensive reference of the Go history. Disclaimer Most of the texts are written as subjective understanding based on public sources Factual and ty

                                          • Go製のネットワーククライアントに対する継続的 / Fuzzing for network client in Go

                                            Go Conference 2021 Spring

                                              Go製のネットワーククライアントに対する継続的 / Fuzzing for network client in Go
                                            • JSONパーサにファジングしたら収拾がつかなくなりました

                                              ファジング(Fuzzing)が便利 コンピュータにランダムに生成させたデータを入力とし、ソフトウェアの予期せぬ挙動を観測・発見する手法がファジングです。脆弱性発見の文脈で使われることが多いですが、一般的なごく普通のソフトウェア開発でも便利に使うことができます。私もこれまでに何度か、開発中の関数にファジングを行うことで、想定できていなかったバグを見つけたことがあります。 ファジングの大きな魅力の1つは、個人の想像力を超えることができる点です。開発をテスト駆動で進めているとしても、必要となるテストをすべて網羅できていない場合が多々あります。テスト駆動開発はあくまでも個人(あるいはチームメンバー)が見つけることができたテストしか実行できないので、その人の能力や想像力を超えることができません。しかしファジングであれば、人が考えもつかないようなパターンを試してくれます。もちろんファジングもブルートフ

                                                JSONパーサにファジングしたら収拾がつかなくなりました
                                              • RustConfメモ - Don't Repeat Yourself

                                                さすがに時差の関係で全部は見られませんでしたが、出席していたのとアーカイブが残っていたので、いくつか気になったものを見てみました。ただ、家事などの合間に聞き流ししていた内容を思い出して書いているので、記憶が曖昧なところがあります。ご了承ください。すべてのセッションの動画リストはこちらにあります。 字幕はいくつか見てみましたが、自動生成でしょうか。second が segment 、toml が thermal になっていたりと少し間違っている箇所はありました。ただ、だいたいあってるので大丈夫そうです。もしよかったら、動画も見てみてください。 Whoops! I Rewrote It in Rust by Brian Martin Supercharging Your Code With Five Little-Known Attributes by Jackson Lewis Fuzz D

                                                  RustConfメモ - Don't Repeat Yourself
                                                • Googleがオープンソース脆弱性のデータベースをPythonやGoにまで拡大

                                                  オープンソースプロジェクトにまつわる脆弱性の問題を解決するため、Googleは脆弱性データベース「Open Source Vulnerabilities(OSV)」を構築しています。2021年6月24日付けの発表で、OSVが扱うオープンソースプロジェクトの範囲がPython、Rust、Go、DWFにまで拡大することが明らかになりました。 Google Online Security Blog: Announcing a unified vulnerability schema for open source https://security.googleblog.com/2021/06/announcing-unified-vulnerability-schema.html GitHub - google/oss-fuzz: OSS-Fuzz - continuous fuzzing fo

                                                    Googleがオープンソース脆弱性のデータベースをPythonやGoにまで拡大
                                                  • Twelve Years of Go - The Go Programming Language

                                                    Russ Cox, for the Go team 10 November 2021 Today we celebrate the twelfth birthday of the Go open source release. We have had an eventful year and have a lot to look forward to next year. The most visible change here on the blog is our new home on go.dev, part of consolidating all our Go web sites into a single, coherent site. Another part of that consolidation was replacing godoc.org with pkg.go.

                                                      Twelve Years of Go - The Go Programming Language
                                                    • ロシアのGoogleこと「Yandex」の40GB超のGitリポジトリが漏えい

                                                      大規模データベースのリーク情報やハッキングツールなどを提供する場として人気のサイバー犯罪フォーラムBreachForums上で、borderline2023というユーザーがYandexの40GB超のGitリポジトリをリークしたと主張しています。 yandex git sources | BreachForums https://breached.vc/Thread-yandex-git-sources?pid=1200126 YandexのGitリポジトリをリークしたのはborderline2023というユーザーで、「リポジトリのみ、データなし、44.71GB。スパム対策ルールを除いてほぼ完全にコピーしました。2022年7月に私がダウンロードしたものです」と投稿しています。この投稿に対して、BreachForumsユーザーからは「かなり素敵に見える」「多くの興味深いツールがある」などのコメ

                                                        ロシアのGoogleこと「Yandex」の40GB超のGitリポジトリが漏えい
                                                      • Strykerを使ってTypeScriptでMutation Testingする

                                                        概要 JavaScript/TypeScript向けのMutation Testing FrameworkであるStryker-jsがいい感じになってきたので紹介してみます。簡単な紹介のみです。 対象読者 Strykerの概要を知りたい人 Mutation Testingよく知らないJSer/TSer Mutation Testing導入したいけどJS/TS用のツールが見つからなかった人 Mutation Testingとは テスト対象のコードを変更(Mutate)するミュータントを仕込み、Unit Testが正しくそれらのミュータントを退治できるか測定するものです。 一般的には退治できた割合が高いほど意味のあるUnit Testを書いていると言えます。 Wikipediaの項目にもある通りFuzzingの一種とも言えます。 Mutation Testing自体はGoogleが論文出してた

                                                          Strykerを使ってTypeScriptでMutation Testingする
                                                        • 2023年セキュリティトレンド大予想と2022年の総括【9社の開発・セキュリティエンジニアに聞く(後編)】 - #FlattSecurityMagazine

                                                          9社のSaaS・OSS開発の現場で活躍する開発エンジニア・セキュリティエンジニアの方々に、2022年のセキュリティ分野での取り組みや2023年に取り組みたいことなどを聞いた2週連続企画の後編です。後編では、5社からのコメントをご紹介します。 今回コメントをいただいた方々(社名五十音順・順不同) 後編(本記事) サイボウズ 開発本部 PSIRT SmartHR セキュリティグループ 岩田季之さん メルカリ Security Engineering Team Manager  Simon Girouxさん Ubie 水谷正慶さん LayerX 鈴木研吾さん 前編 Aqua Security Open Source Team 福田鉄平さん カンム 金澤康道さん グラファー 森田浩平さん Finatextホールディングス 取締役CTO/CISO 田島悟史さん ▼前編記事 flatt.tech 今回

                                                            2023年セキュリティトレンド大予想と2022年の総括【9社の開発・セキュリティエンジニアに聞く(後編)】 - #FlattSecurityMagazine
                                                          • プロダクト開発を行いながらOSS活動も緩くやる - ANDPAD Tech Blog

                                                            ANDPADボード プロダクトテックリードの土屋(tomtwinkle)です 先日CHIYODA Tech #3 にLT枠で参加してきました! CHIYODA Techとは、千代田区にオフィスを構える企業が運営・登壇するLTイベントです。 今回は弊社9Fのイベントスペースで開催させていただきました! アンドパッド以外にKINTOテクノロジーズさん、日本経済新聞社さん、スタディストさんがLTで参加されていました。 他社さんのLTも拝見させてもらって皆さんそれぞれOSSに対する様々な想いや課題を感じているんだなと勉強になりました。 LT後みんなでスナックミーさんから提供頂いたスナックをつまみに飲みながらテーブル毎に思い思いに喋るアンカンファレンスも非常に楽しかったです。 LT内容について 今回私が発表させてもらったLTについて少しだけ解説させていただきます。 speakerdeck.com ア

                                                              プロダクト開発を行いながらOSS活動も緩くやる - ANDPAD Tech Blog
                                                            • OSV - Open Source Vulnerabilities

                                                              AlmaLinux 2722 View AlmaLinux vulnerabilities Alpine 3398 View Alpine vulnerabilities Android 881 View Android vulnerabilities Bitnami 3898 View Bitnami vulnerabilities crates.io 1348 View crates.io vulnerabilities Debian 9859 View Debian vulnerabilities GIT 32996 View GIT vulnerabilities Go 2151 View Go vulnerabilities Linux 13573 View Linux vulnerabilities Maven 4873 View Maven vulnerabilities n

                                                              • JavaScript ASTを使ったツール(自作、ESLint、Babel、jscodeshift)を実装する話

                                                                JavaScript ASTを使ったツール(自作、ESLint、Babel、jscodeshift)を実装する話 Dive into ASTというJavaScriptのASTを使ったツールの作り方を見ていく話を書きました。 自作の正規表現、ASTチェックツール、ESLint、Babel、jscodeshiftでそれぞれ動くツールを実装してるので、リポジトリにまとめてあります。 スライドではCode Surferを使ってASTや書き方をインタラクティブに解説しています。 スライド: Dive into AST リポジトリ: azu/dive-into-ast: JavaScriptを中心にしたAST(Abstract Syntax Tree)を使ったツールの作り方についての資料です! 自作ASTツール、ESLint、Babel、jscodeshift それぞれでASTを使ったツールをどう実装

                                                                  JavaScript ASTを使ったツール(自作、ESLint、Babel、jscodeshift)を実装する話
                                                                • 形式手法のこれまでとこれから - ヾノ*>ㅅ<)ノシ帳

                                                                  2019年が終わろうとしています あけおめ~さて2020年になりました。歴史が長い形式手法の今後を占うため、過去と直近の出来事を振り返りたいと思います。 ツッコミやタレコミは私のTwitter宛かあなたのブログかその他経路でお願いします~ シンボリック実行は形式的であるため本稿では形式手法に含めることにします。 Fuzzing関連はサーベイが甘いので漏れが多いかもしれません。 形式手法・形式検証とは 形式検証とは、厳密に定義された意味論の下で仕様やプログラムが所定の性質を満たすことを形式的に検証するための手法をいいます。「形式的に」とは、検証が事前に定義された知識だけに基づいており、検証手順が決定的であることをいうと私は理解しています。 形式手法は、形式検証に加えて、形式的にプログラムの仕様を厳密に定義するための手法を包含します。 本記事では形式手法を以下の通り大きく3つに独自に分類します

                                                                    形式手法のこれまでとこれから - ヾノ*>ㅅ<)ノシ帳
                                                                  • twadaさんによる2023年度版TDDワークショップを開催しました - Pepabo Tech Portal

                                                                    挨拶 こんにちは。2023年04月に入社した、minne事業部エンジニアの@kazuです。 この度、弊社GMO ペパボ(以下、ペパボ)では2022年に引き続き、今年も日本のTest-Driven Development(TDD) の第一人者である @t_wada さんをお招きしてTDDワークショップを開催しました。前回:『t_wadaさんによるTDDワークショップを開催しました』 なぜTDDワークショップを開催しているのかについては、こちらの記事『ふつうの開発と TDD ワークショップ』で詳しく説明していますのでご覧ください。 さて、それでは今回のTDDワークショップで何をしたのか、どんな気づきがあったのかなどについて、参加パートナーからそれぞれお話ししてまいります。 具体的な研修内容 概要 ワークショップは、事前に各参加パートナーが基調講演/ライブコーディングの動画を予習し、動画内でのラ

                                                                      twadaさんによる2023年度版TDDワークショップを開催しました - Pepabo Tech Portal
                                                                    • ChatGPTのセキュリティへの影響 | Cloud Security Alliance Japan

                                                                      © Copyright 2023, Cloud Security Alliance.All rights reserved. 1 Acknowledgements Authors: Kurt Seifried Sean Heide Bogdan Filip Vishwa Manral Lars Ruddigkeit Walter Dula Eric E. Cohen Billy Toney Supro Ghose Marina Bregkou Additional Staff: Stephen Lumpe (Cover illustration, with assistance from Midjourney) This is a Release Candidate version and is subject to change. © 2023 Cloud Security Allian

                                                                      • How we built Pingora, the proxy that connects Cloudflare to the Internet

                                                                        How we built Pingora, the proxy that connects Cloudflare to the Internet2022-09-14 This post is also available in 简体中文 and 繁體中文. IntroductionToday we are excited to talk about Pingora, a new HTTP proxy we’ve built in-house using Rust that serves over 1 trillion requests a day, boosts our performance, and enables many new features for Cloudflare customers, all while requiring only a third of the CP

                                                                          How we built Pingora, the proxy that connects Cloudflare to the Internet
                                                                        • SSH Pentesting Guide

                                                                          What are SSH and SFTP? SSH is a secure remote shell protocol used for operating network services securely over an unsecured network. The default SSH port is 22, it’s common to see it open on servers on Internet or Intranets. SFTP is the SSH File Transfer Protocol, a protocol used to transfer files over an SSH connection. Most SSH implementations are also supporting SFTP. SSH servers/libs The most

                                                                            SSH Pentesting Guide
                                                                          • Linuxカーネルのファジングツールsyzkaller / Linux kernel fuzzing tool syzkaller - Speaker Deck

                                                                            syzkaller/syzbot は、2 年で 1500 件以上の Linux カーネルの不具合修正に貢献しています。自らが生成した複数の仮想マシンに対して問題の起きそうな入力を送り続けることで未発見の不具合を発見します。最小限の入力で不具合を再現させるための再試行を繰り返し、最終的には不具合を再現する…

                                                                              Linuxカーネルのファジングツールsyzkaller / Linux kernel fuzzing tool syzkaller - Speaker Deck
                                                                            • GitHub - candy-lang/candy: 🍭 A sweet, functional programming language that is robust, minimalistic, and expressive.

                                                                              🚧 Work in Progress! Candy is still in its early stages. We are actively working on it, but it's not ready for production use yet. If you want to help, please join our Discord server. See also: The current state. A sweet, functional programming language that is robust, minimalistic, and expressive. Many programming languages have a strict separation between compile-time and runtime errors. Sometim

                                                                                GitHub - candy-lang/candy: 🍭 A sweet, functional programming language that is robust, minimalistic, and expressive.
                                                                              • bpftrace 2020 - 睡分不足

                                                                                (この記事はLinux Advent Calendar 2020 - Qiitaの2日目の記事です.前日はmasami256さんのTiny Core LinuxでLinuxのinitプロセスが実行されるあたりを調べるでした.) みなさんこんにちはこんばんは.bpftraceを使っていますか? (e)BPFといえば最近は専らCiliumなどネットワークが話題ですが,bpftraceはBPF*1を利用したトレーシングツールです.私は昨年からぼちぼち使い始めて,機能追加やバグ修正のパッチをいろいろと投げていた(130+)ら気づいたらコミッタになっていました.ということでbpftraceについては比較的よく知っていると思うので,今年にbpftraceに追加された主要な機能や変更点を紹介したいと思います. bpftrace知らないなぁという方はこちら(拙文です)を,bpftrace使ってないなぁとい

                                                                                  bpftrace 2020 - 睡分不足
                                                                                • Google、脆弱性検出ツール「OSS-Fuzz」のJavaVM対応を発表。Java/Kotlin/Scalaなどの脆弱性を検出可能に

                                                                                  Google、脆弱性検出ツール「OSS-Fuzz」のJavaVM対応を発表。Java/Kotlin/Scalaなどの脆弱性を検出可能に Googleは、脆弱性検出ツールとしてオープンソースで公開している「OSS-Fuzz」をJavaVM言語にも対応させたことを明らかにしました。 OSS-FuzzはGoogleが2016年にオープンソースとして公開しました。 参考:Google、脆弱性検出のためのファジング(Fuzzing)を機械的に実行する「OSS-Fuzz」、ベータ公開 OSS-Fuzzは、ファジング(Fuzzing)と呼ばれる、「検査対象のソフトウェアに『ファズ(英名:fuzz)』と呼ばれる問題を引き起こしそうなデータを大量に送り込み、その応答や挙動を監視することで脆弱性を検出する検査手法」を実行してくれるツールです。 今回、ドイツのCode Intelligence社のファジングツー

                                                                                    Google、脆弱性検出ツール「OSS-Fuzz」のJavaVM対応を発表。Java/Kotlin/Scalaなどの脆弱性を検出可能に