AI・機械学習チームブログリレー13日目の記事を三浦 (@mamo3gr) がお送りします。 Pythonで型ヒントを補足するためのサードパーティのスタブライブラリにコントリビュートしました。 それを通して入門したスタブファイルの作り方を紹介します。 便利なPythonの型ヒント 型ヒントを補助するスタブライブラリ スタブファイルの作り方入門 stubgenで下地をつくる pathlib,importlib,inspectを組み合わせたモジュール・クラスの列挙と書き換え __init__ とフィールドの追加 その他、便利そうなツール 実際どれくらい便利になるか Before After まとめ We are hiring !! エンジニア採用ページはこちら カジュアル面談もお気軽にどうぞ インターンも常時募集しています 便利なPythonの型ヒント Pythonで型ヒント、付けてますよね?
Dungeon Antiquaというゲームを2024/10/10にSteamでリリースしまして、その後も不具合修正や要望の多かった機能の追加などアップデートを重ねていたのですが、あるタイミングでのアップデートにより突然ゲームがウイルス検知されるという事案が発生し、そこから地獄を見ました。 もしかして今後同じ目に遭う人がいるかもしれないので、体験記としてまとめておきます。 問題発生〜暫定対応まで12/6アップデート以降、ウイルス検知発生のXのポストなどを見かけるようになる。調べるとPyInstallerでexe化したファイルにはありがちなことらしい(詳しくは次項)。とりあえず連絡が取れた方にウイルス検知からの除外設定を個別にお願いしたり、Steamにお知らせを掲示したりした。 12/11早朝、Steamサポートから「あなたのゲームがウイルスであるという報告が複数寄せられたため、販売を停止した
はじめに 株式会社iimonでSREエンジニアをしているhogeです。 本記事はiimonアドベントカレンダー9日目の記事となります。 今回の記事は技術的な棚卸しとして、普段大変お世話になっているWebサーバがどういった仕組みで動いているのかを実装しながら深堀りしていこうと思います。 弊社のバックエンドはDjango/FastAPI + Gunicornの構成で動作しているため、Pythonを絡めた説明が多くなるかと思います。サンプルコードもPythonで実装をしています。 途中、システムコールやファイルディスクリプタなどにも踏み込んだ話をするのですが、低レベルなプログラミングをちゃんとやったことがないため、間違えている部分があるかもしれません。今後学習して行く中で気づいたら都度修正していきたいと思います。 環境・使用ツール 言語 Python OS Ubuntu(Linuxのシステムコー
Magika is a novel AI-powered file type detection tool that relies on the recent advance of deep learning to provide accurate detection. Under the hood, Magika employs a custom, highly optimized model that only weighs about a few MBs, and enables precise file identification within milliseconds, even when running on a single CPU. Magika has been trained and evaluated on a dataset of ~100M samples ac
最初に PythonでGUIのアプリを作ろうと探した所、Tkinterという物で作成出来ることを知りました。 ただ画面サイズからプロパティまでコードベースでやらなければならないため、非常に時間が掛かります。 そこでVisual Studioの操作みたいに作れるツールが無いか探した所、発見したのでお伝えさせてさせて頂きます。 Python GUI 開発ツール「PAGE」 インストール手順 下記ぺージからダウンロードできます。 「Download Now」をクリックします。 カウントが0になるとファイルが表示されるので、ダウンロードを行います。 ダウンロードしたファイルを起動すると以下が表示されるので「はい」を選択します。 「Next」をクリックします。 配置場所を指定するのですが任意で設定します。 「はい」を選択します。 「Next」をクリックします。 「Install」をクリックします。
本書は、ポートスキャンを用いて攻撃者がネットワークを経由してどのように攻撃してくるのかを具体的な手法を交えて学び、攻撃手法を知ることでセキュリティレベルの向上を目指す書籍です。Scapyを用いてポートスキャナを自作し、ポートスキャンの仕組みや動作原理をしっかりと学びます。そのあとで、脆弱性診断やペネトレーションテストに不可欠なNmap、Nessus、Metasploit Frameworkなどのツールについて解説します。ハンズオンで学習を進めながら徐々にステップアップしていける構成となっています。攻撃者側の思考プロセスを理解し、対策を強化しましょう。付録ではペンテスターのキャリア形成、関係の築き方などにも触れ、著者の豊富な経験からのアドバイスを紹介しています。 正誤表 書籍発行後に気づいた誤植や更新された情報を掲載しています。お手持ちの書籍では、すでに修正が施されている場合がありますので、
A few months ago, I set myself the challenge of writing a C compiler in 500 lines of Python1, after writing my SDF donut post. How hard could it be? The answer was, pretty hard, even when dropping quite a few features. But it was also pretty interesting, and the result is surprisingly functional and not too hard to understand! There's too much code for me to comprehensively cover in a single blog
JPCERT/CCは、2019年6月から継続して攻撃を行っている標的型攻撃グループDangerousPassword [1][2](CryptoMimicまたは、SnatchCryptoとも呼ばれる)に関連すると思われる、暗号資産交換事業者の開発者を狙った攻撃を5月末に確認しています。この攻撃は、マシン上にPythonやNode.jsがインストールされたWindows、macOS、Linux環境をターゲットとしたものです。 今回は、JPCERT/CCが確認した攻撃および使用されたマルウェアについて解説します。 Pythonマルウェアを起点としたWindows環境における攻撃 攻撃者は、QRコードを扱うためのPythonモジュール(https://github.com/mnooner256/pyqrcode)のbuilder.pyというファイルに不正なコードを挿入したものをあらかじめ用意し、
みなさんこんにちは、電通総研コーポーレート本部システム推進部の佐藤太一です。 この記事では、VS CodeのDev Containerを使ってOSに依存しないPythonの開発環境を構築する方法をステップバイステップで丁寧に説明します。 VS Codeの利用経験があり、またPythonによるアプリケーション開発に興味のある方を想定読者として記述しています。Pythonの初心者から中級者向けを意識して書いていますので、意図して冗長な説明をしています。 すでにPythonによるアプリケーション開発に十分に詳しい方は、まずはまとめだけ読んでみてください。私自身それほどPythonのエコシステムに詳しいわけではありませんので、知識の抜け漏れは恐らくあるでしょう。そういった事に気が付いたら、XなどのSNSでこの記事のURLを付けてコメントをしていただけると幸いです。 はじめに 事前の準備 最小限のD
Pythonはシンプルな構文で読みやすいプログラミング言語ですが、コードをロバストにする機能も備わっています。本書では、Python 3.5から導入された型ヒントを使って、ロバストなPythonコードを記述する方法にアプローチします。全4部構成のうち、Ⅰ部とⅡ部ではPythonにおける型ヒントの位置づけや組み込み型について基本的な事柄をしっかりおさえ、ユーザ定義型を使う方法、部分型、プロトコル、pydanticによる実行時型チェックなど、Pythonの型システムを最大限に活用する方法を詳しく説明します。Ⅲ部は依存関係や設計手法について、Ⅳ部はセーフティネットとして高度なテスト手法を扱います。本書の内容を理解すれば、クリーンで保守しやすいPythonコードが書けるようになります。 正誤表 書籍発行後に気づいた誤植や更新された情報を掲載しています。お手持ちの書籍では、すでに修正が施されている場
こんにちは。Technicalスペシャリストの黒住です。 最近、Pythonの人気がさらに加速していますね。特に、AI開発やデータ分析においてはPythonの利用頻度が非常に高くなっています。 しかし、「Pythonプログラムを配布する」部分では問題が多いのではないでしょうか。そこで、今回は「Pythonプログラムをexe形式で配布する方法」についてご紹介します。 Pythonでexeファイルを作成する方法 C#やC/C++などのプログラミング言語では、実行可能なexe形式のプログラムファイルを作成できますが、Pythonにはexeファイルを作成する機能はありません。 そこで、Pythonのコードを実行可能な状態で配布したい場合は、他のツールを使用してexeファイルを作成する必要があります。exe化のツールはいくつか存在しますが、有名なものは以下の通りです。 PyInstaller Py2
レッドハットの杉村です。Ansible のテクニカルサポートをしています。 今回は以前のお問い合わせいただいた事例から、SSH (Secure Shell Protocol) について一つ紹介しようと思います。Ansible は Linux サーバを制御対象とするときは SSH で接続して処理を実行しますので、SSH の通信についてのトラブルは問題に直結します。 RHEL 8.6 + Ansible Core 2.13 で確認しています。 Ansible の基本的な動作原理 まずは Ansible はどうやって動いているのかというのを軽く振り返ってみます。 Ansible が動作するサーバをコントロールノード、制御対象をマネージドノードと呼びます。流れを大まかに説明しますと、この図のようになります。 ① YAMLで書かれたプレイブックからタスクごとに小さなプログラムを生成する ② ①で生成
概要 この数年間、パロアルトネットワークスは、.NETファイル分析用のPythonライブラリの内部開発に取り組んできました。現在、このライブラリは安定しており、一般公開して、リサーチコミュニティと共有するのに十分成熟したと判断しました。 本稿はdotnetfileライブラリを紹介します。dotnetfileを利用すると、.NET Portable Executable (PE)ファイルから重要情報を簡単に抽出できます。基本的な解析機能に加えて、dotnetfileによっていくつかの高度な機能も実装されるので、自動と手動の両方の分析タスクが実行しやすくなります。ここでは、このライブラリに含まれているMemberRefハッシュという新しい独自のフィンガープリント技術についても説明します。 すぐに技術的詳細を確認したい場合は、コードおよびドキュメントをご覧ください。 目次 概要 .NETの背景
はじめに Pythonはコードが汚くなりがち(個人的にそう思う) そんなPythonくんを快適に書くための設定を紹介します。 拡張機能編 ここでは Pythonを書きやすくするため の拡張機能を紹介していきます。 1. Error Lens before 「コード書いたけど、なんか波線出てるよ💦」 記述に問題があった場合、デフォルトでは波線が表示されるだけ。。。 after Error Lensくんを入れることによって 波線だけでなくエディタに直接表示される。 はい、有能〜 2. indent-rainbow before Pythonくんは インデントでスコープを認識している。 for の f から下に線が伸びてるけど、ちょっと見にくいなぁ after 色が付いてちょっと見やすくなった! 3. Trailing Space before 一見、普通に見えるコード after 末尾にある
auto-py-to-exeというpyinstallerをGUI化したソフトが便利です。書くのが煩わしいspecのadd-data等をマウス操作で簡単に追加できちゃいます。 操作のデモがこちら auto-py-to-exeのレポジトリはこちら pyinstallerのspecの書き方はこちら インストール方法
2022年5月24日(米国時間)、SANS ISCのフォーラムでPython向けライブラリの1つ(その後PHP向けライブラリでも判明)が第三者により不正なコードを含むアップデートが行われていたとして注意を呼び掛ける投稿が行われました。その後この行為に関わっていたとして実行者とみられる人物が顛末を公開しました。ここでは関連する情報をまとめます。 改ざんされた2つのライブラリ 今回影響が確認されたのPython Package Index(Pypi.org)で公開されている「ctx」、Packagist(Packagist.org)で公開されている「PHPass」の2つ。 影響を受けたライブラリ インストール実績 改ざんされたとみられる期間 概要 ctx 約75万回 2022年5月14日~5月24日頃 辞書(dict型オブジェクト)を操作するユーティリティを提供するPython向けのパッケージ
本記事は2021年9月27日に公開したPython security best practices cheat sheetを日本語化した内容です。 2019年、Snykは最初のPythonチートシートをリリースしました。それ以来、Pythonのセキュリティの多くの側面が変化しています。開発者向けセキュリティ企業として学んだこと、そしてPython特有のベストプラクティスに基づいて、Pythonのコードを安全に保つために、この最新のチートシートをまとめました。 【チートシート】2021年版Pythonセキュリティベストプラクティス 本記事では、下記に関するPythonのセキュリティに関するヒントを紹介します。 外部データを常にサニタイズする コードをスキャンする パッケージのダウンロードに注意 依存先パッケージのライセンスを確認する システム標準版のPythonを使用しない Pythonの仮
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く