Skip to content

Instantly share code, notes, and snippets.

View kekyo's full-sized avatar
📡
I'm looking for a job

Kouji Matsui kekyo

📡
I'm looking for a job
View GitHub Profile
@kekyo
kekyo / cuda-on-ubuntu-container.md
Last active April 20, 2025 12:22
Ubuntu podmanでCUDAを有効化する方法

CUDA on Ubuntu podman container

Ubuntu host configuration

podmanでCUDAをコンテナ実行するためのホストマシンを0からセットアップする。筆者はCI/CD環境を整えるために物理サーバーマシンを用意して作業した。 これで ga_runner でGitHub ActionsでCUDAがお手軽に使えるようになる(はず。今後確認したら追記)

ホスト環境は: Intel(R) Core(TM) i7-10700T CPU, 64GB mem, NVIDIA GeForce RTX 4060 Ti 16GB

  • Ubuntu 24.04.2では、インストール時に3rd party driversを有効化してしまうと、NVIDIA driver 550がインストールされる。これは非常に不安定であり、クリーンインストール直後であってもWaylandがクラッシュして復帰が難しい問題がある(将来的に改善される可能性はある)。
@kekyo
kekyo / YouTubeRecommendations.md
Last active April 21, 2025 10:25
YouTube recommendations.

YouTube recommendations

随時更新します。

注意: 一部、センシティブな内容を取り扱うチャンネルがありますが、ここでは特定の団体や情勢を持ち上げたりする意図はなく、むしろ出来るだけ中立性・公平性・事実確認の容易さ・有用性などの独自の基準にしています。


コンピューター

@kekyo
kekyo / howtofix.md
Created September 12, 2024 03:58
jest on vscode/codium cause: "SyntaxError: Unexpected token '.'"
# Terminate vscode/codium

$ npm uninstall jest
$ npm install --save-dev jest
$ npx jest --clearCache

# Re-open vscode/codium
@kekyo
kekyo / opcodegen.cs
Last active June 2, 2024 09:13
Extract CIL opcodes and makes relation chibias-cil opcode naming both Reflection.Emit and Cecil.
using System;
using System.Linq;
namespace ConsoleApp1;
class Program
{
static void GenerateReflectionEmit()
{
var emitOpCodes =
@kekyo
kekyo / cecilandhash.cs
Created May 14, 2024 01:08
Performance test for Cecil loader and hashing.
using Mono.Cecil;
using System;
using System.Diagnostics;
using System.IO;
using System.Linq;
using System.Security.Cryptography;
namespace ConsoleApp1;
public static class Program
@kekyo
kekyo / ubuntu2204fix.md
Last active March 20, 2025 01:40
Ubuntu 22.04: Fixes for GNOME related issues.
@kekyo
kekyo / README.md
Last active September 7, 2023 03:18
libvirtでIPv6を有効化する(NAT6)
@kekyo
kekyo / csrf.md
Last active May 14, 2024 15:54
CSRF攻撃のまとめ

CSRF(Cross-Site Request Forgery)攻撃について: https://zenn.dev/yktakaha4/articles/study_csrf_attack

要するに、(セッション)トークンをCookieに格納して、これで認証する運用の場合、

  • フォームのPOST先のエンドポイントやWebAPIに対してのHTTPリクエストに、勝手にセッショントークンが送られてしまう(Cookieに入っていて、なおかつ同一のURLだから)。正規のアクセスではこの挙動を想定しているので、受信したトークンで認証が成立して問題ないが...
  • 攻撃者はとにかくブラウザ経由で、フォームのPOST先のエンドポイントやWebAPIに対して要求を投げさせれば、アクセスが受け付けられてしまう(Cookieに格納されているので、勝手にセッショントークンが送られてしまうから)。

だから、Cookieによるトークンの送信に頼らずに、別の方法でリクエストにトークンを含ませる必要がある。

  • HTMLのform hidden valueにトークンを入れておくと、form postでその値が一緒に送信される。これはハイジャック犯がこのトークン値を知ることが出来ないので、トークンなしまたは不正トークンで弾ける。
@kekyo
kekyo / Option.cs
Last active July 21, 2023 08:28
Hacked Option<T> enabling pattern matching on C#
// Copyright (c) Kouji Matsui (@[email protected])
// License under MIT.
using System.ComponentModel;
namespace TestApp;
public static class Option
{
public static readonly NoneOption None =
@kekyo
kekyo / chibicc-cil-todo.md
Last active May 14, 2024 01:45
chibicc-cil残件