皆さんこんにちは。今回は、2022年4月30発売の『良いコード/悪いコードで学ぶ設計入門』を読み終わったので、書評という形で感想と紹介を述べたいと思います。筆者はもともと技術書を読まず「ネットでいいやん」派だったのですが、このたびTypeScript入門書を出版したこともあり、それを過去の話として葬り去るべく技術書を読んでいくことにしました。せっかくなので、読んだ技術書の感想等を紹介します。 おことわり: この記事では、「筆者」とはこの書評を書いた人を指し、『良いコード/悪いコードで学ぶ設計入門』を書いた人のことは「著者」と呼びます。また、この記事の内容はすべて筆者の個人的な見解であり、本の内容や本を読んで得られる知識について何らかの保証をするものではありません。 筆者について筆者はフロントエンドエンジニアで、TypeScriptとReactを専門としています。業務では何だかんだで設計の番
Javaフレームワークを利用したソフトウェア開発は、今やすっかり当たり前の開発スタイルになった。今日では数多くのJavaフレームワークが存在するが、中でも特に国内外の数多くのJavaデベロッパーに支持されているのが「Springフレームワーク」だ。その魅力や使いこなしのポイントについて、SB C&S株式会社のDevOps推進チームでさまざまな製品・サービスの情報をデベロッパー向けに発信している佐藤梨花氏と河上珠枝氏に紹介してもらった。 SB C&S株式会社 テクニカルマーケティングセンター ビジネス開発課 佐藤梨花氏(上)、同 河上珠枝氏(下) 今、Javaフレームワークが必要とされている理由 今日のシステム開発においてJavaフレームワークが広く必要とされている背景として、佐藤氏は「ITが果たす役割の変化」を挙げる。 「2000年代にはITの役割はあくまでもビジネスのための道具、ツールの
はじめに Log4jやStruts2など、Java製ソフトウェアにおいてリモートからの任意のコード実行(RCE)の脆弱性が目立つ時代になってしまっていますが、これにさらにSpringも加わってきました。この記事では特にCVE-2022-22965に焦点を当て、技術的な視点からの解説を行ってみます。 なぜJavaアプリでRCEとなるのか? Javaの(特にウェブアプリケーションで)RCEとなるパターンはいくつか知られており、以前こちらの記事にまとめました。今回のCVE-2022-22965はこの記事の「3. クラスローダを操作できてしまうパターン」のパターンになります。 なぜクラスローダを操作できるのか? そもそも「クラスローダの操作」とは何を意味しているのでしょうか。この文脈では、Javaのプロセス内のクラスローダ系のクラスのインスタンスの、getterやsetterのメソッドを攻撃者が実
表2 Spring Core Remote Code Execution Vulnerabilityシグネチャをトリガーした接続元IP上位15 Spring Core Remote Code Execution Vulnerabilityのシグネチャをトリガーした31,953個のパケットキャプチャを解析し、エクスプロイトに成功した場合にサーバーに保存されるWebシェルのファイル名とWebシェルのコンテンツとを特定しました。多くの場合、Webシェルのファイル名には .jspという拡張子が与えられていました。これによりインストールしたWebシェルが有効に機能するようになります。ただし多くのケースではファイル名にはWebシェルには対応しない拡張子、たとえば .jsや.txtといった拡張子が与えられていました。これらはおそらく脆弱なサーバーの発見のためにファイルアップロード成功可否を示す目的で使用
April 11, 2022 update – Azure Web Application Firewall (WAF) customers with Regional WAF with Azure Application Gateway now has enhanced protection for critical Spring vulnerabilities – CVE-2022-22963, CVE-2022-22965, and CVE-2022-22947. See Detect and protect with Azure Web Application Firewall (Azure WAF) section for details. On March 31, 2022, vulnerabilities in the Spring Framework for Java we
セキュリティベンダーのCheck Point Software Technologiesのリサーチ部門であるCheck Point Researchは2022年4月5日(現地時間)、同社のブログで、先日明らかになったJavaアプリケーションフレームワーク「Spring Framework」(Spring)に関するリモートコード実行の脆弱(ぜいじゃく)性(CVE-2022-22965)を悪用したサイバー攻撃が全世界で拡大していると報じた。 Check Point ResearchはSpringの脆弱性を悪用したサイバー攻撃が全世界で拡大していると報じた。今後もサイバー攻撃に使われる危険性が高く、迅速に対策を取ることが望まれる。(出典:Check Point Software TechnologiesのWebサイト)
注意! こちらの記事は自分の解釈を多く含みます。 十分に注意し、念のため検証してから情報を利用してください! この記事の内容と対象 この記事では、以下の内容に触れます。攻撃原理をわかった範囲でまとめるので、なにかのお役に立てば幸いです。 Spring4Shellの脆弱性の全体像 なぜJDK9.0以上のみ限定なの? なぜtomcatで影響は受けているの?ほかは? 脆弱性の概要 SpringShell RCE vulnerability: Guidance for protecting against and detecting CVE-2022-22965 によると 以下の条件を満たしているときに 任意コード実行 につながると書かれています。 Running JDK 9.0 or later Spring Framework versions 5.3.0 to 5.3.17, 5.2.0 t
Update: March 31, 2022 A patch has officially been released. https://spring.io/blog/2022/03/31/spring-framework-rce-early-announcement https://tanzu.vmware.com/security/cve-2022-22965 Overview Spring Core on JDK9+ is vulnerable to remote code execution due to a bypass for CVE-2010-1622. At the time of writing, this vulnerability is unpatched in Spring Framework and there is a public proof-of-conce
Executive Summary Recently, two vulnerabilities were announced within the Spring Framework, an open-source framework for building enterprise Java applications. On March 29, 2022, the Spring Cloud Expression Resource Access Vulnerability tracked in CVE-2022-22963 was patched with the release of Spring Cloud Function 3.1.7 and 3.2.3. Two days later on March 31, 2022, Spring released version 5.3.18 a
関連キーワード Java | アプリケーション開発 | プログラミング プログラミング言語には、はやり廃りがある。その中で「Java」は、開発者に支持され続けてきた。この傾向は、2022年以降も間違いなく続くと考えられる。本連載は、2022年の今からでも開発者がJavaを習得すべき主な理由を5つ紹介する。前編は、そのうち2つを取り上げる。 理由1.根本的な有用性 登場以来、Javaの人気が衰えないのはなぜだろうか。端的に答えるなら、Javaは プログラミングの難しい問題を解決するためのライブラリ(プログラム部品群)を豊富に備える、バランスの取れたプログラミング言語 だからだ。 併せて読みたいお薦め記事 Javaを学ぶ理由 Java使いでも「R」「Python」を学びたくなる“納得の理由” 「Java」はなぜ、今も昔も開発者に愛されるのか 「Java」を学びたくなるシンプルな理由 Javaは
印刷する メールで送る テキスト HTML 電子書籍 PDF ダウンロード テキスト 電子書籍 PDF クリップした記事をMyページから読むことができます Javaアプリケーションフレームワーク「Spring」において、サーバーレス実行環境の「Spring Cloud Function」で脆弱性が報告された。これとは別に「Spring Framework」コアにも深刻だとする脆弱性の存在が指摘され、情報が交錯している。 VMwareの情報によると、Spring Cloud Functionのバージョン3.1.6および3.2.2とサポートが終了している古いバージョンでは、ルーティング機能を有効にしている場合に、細工された「SpEL」によって、ローカルリソースへのアクセスを許容してしまう脆弱性(CVE-2022-22963)が存在する。 一方のSpring Frameworkのコアには、リモー
HomeNewsSecurityNew Spring Java framework zero-day allows remote code execution A new zero-day vulnerability in the Spring Core Java framework called 'Spring4Shell' has been publicly disclosed, allowing unauthenticated remote code execution on applications. Spring is a very popular application framework that allows software developers to quickly and easily develop Java applications with enterprise
2022/3/29に行われたJJUG ナイトセミナーでの登壇資料です https://jjug.doorkeeper.jp/events/134652
元・Java専門記者がLog4j 2脆弱性に見た「複雑性と魔神のかけら」 Javaの歴史とバザールの矛盾(1/6 ページ) Javaのライブラリ「Apache Log4j 2」に深刻な脆弱性が発見されたことは記憶に新しい。1カ月以上経過した現在も、注意喚起や新たな情報提供が続いている。問題は完全に収束したとはいえない。 今回の記事の主題は脆弱性対策ではない。「Javaの歴史的経緯と、今回騒ぎになっている脆弱性の話を、うまく1本の記事にしてください」という編集部のオファーに応じて書いたものだ。記事の半分は「元・Java専門記者のナイショ話」である。現実の情報システムへの対処が必要な方は、まず下記ページから最新情報をチェックしていただきたい。 IPA Apache Log4j の脆弱性対策について(CVE-2021-44228) Apache Log4j 2公式ページ Log4j 2で今回問題
Welcome to SWIG SWIG is a software development tool that connects programs written in C and C++ with a variety of high-level programming languages. SWIG is used with different types of target languages including common scripting languages such as Javascript, Perl, PHP, Python, Tcl and Ruby. The list of supported languages also includes non-scripting languages such as C#, D, Go language, Java inclu
Static code analysis suite designed for safety-critical and security-focused software development with certification support for ISO 26262, IEC 61508, IEC 62304, EN 50128, and EN 50657. Comprehensive analysis includes coding standards compliance (MISRA C/C++, AUTOSAR, CERT, CWE), clone detection, dead code analysis, architecture verification, cycle detection, and metrics monitoring. Includes quali
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く