プログラム

WindowsServerのDHCPログをローテーションしたい

  • POSTS
目的 WindowsServerのDHCPログは一週間分しか保持されない。 仕様により曜日ごとにログが生成され、一週間経つと上書きされてしまう。 そのため一日一回前日のログを別フォルダに日付名で保存させることでログを保全する。 使い方 ログの保全先フォルダを作成(以下スクリプトではC:\Windows\System32\dhcp\を指定) WindowsServerのタスクスケジューラで一日一回実行してください。 コード Powershellで実装。 # 機能 # WindowsServerのDHCPログを別フォルダに一日一回コピーする # # 目的 # WindowsServerのDHCPログは一週間分しか保持されない。 # 曜日ごとにログが生成され、一週間経つと上書きされてしまう。 # そのため一日一回前日のログを別フォルダに日付名で保存させることでログを保全する。 # # 使い方 # タスクスケジューラにこのバッチを一日一回セットする ## 参照先・保全先 $src_file_def = "C:\Windows\System32\dhcp\" # DHCPのデフォルトログの保存先 $dst_file_def = "C:\Windows\System32\dhcp\log\" # コピー先(保全先)のディレクトリ ## 前日の日付取得 $date = (Get-Date).AddDays(-1).ToString("yyyyMMdd"); ## コピー先(保全先)のファイル名を生成 $dst_file = $dst_file_def + "$date" + ".log" ## コピー元のファイル名 $youbi = (Get-Date).AddDays(-1).DayOfWeek # 前日の曜日を取得 $youbi_3 = "$youbi".Substring(0,3) # 前日の曜日から頭3文字を抜き出す(Sunday→Sun) $src_file = $filename_def + "DhcpSrvLog-" + $youbi_3 +".

Backlogのチケット登録時に自動でテンプレートを入れる

  • POSTS
仕様 Backlogのカテゴリーを選択時に、予め設定したテンプレートを挿入する。 動作 動きを見たらどんなものかわかるはず。 ここが便利 チームで同じテンプレートが使え、自動で更新される テンプレートはURLで読み込んで都度表示させるので、 BacklogのGitで管理して、テンプレートを更新(プッシュ)すれば、自動で全員更新される。 導入方法 1. Chromeの拡張機能(ScriptAutoRunner)をインストール 特定のページで設定したJavascriptを実行してくれる拡張機能。 とっても重宝しています。 2. BacklogのGitにテンプレートをpush ## テスト 実際にインサートされる文章 ### その他 Gitに保存されたテンプレートの例 もしもGitがわからなければ、直接テンプレートをコードに書いてもOK 3. ScriptAutoRunnerに登録 ScriptAutoRunnerにコードを記入します このとき、どのURLで発火するかURLをAutoScriptRunnerに記入する。 上の図ではpepope.backlog.comの部分。 コード [https://gist.github.com/60ff5872b0820e744ac79ecfced3c0f6:embed#backlogのチケット作成時にカテゴリを選択すると自動でテンプレートが入る] 4. JavaScriptを環境に合わせて変更 サンプルではプロジェクトの追加時のパスを記載しています。 var projectName="TEST" // backlogのプロジェクト名を記入。大文字注意。 // テンプレートをbacklogのリポジトリにmarkdown形式で保存。 var template = [ ["カテゴリ1", "https://pepope.backlog.com/git/TEST/repo/raw/master/template1.md"], ["自分で設定しているカテゴリ名を記載", "https://pepope.backlog.com/git/TEST/repo/raw/master/template2.md"] ]; その他 スクリプトを作るよりも、ブログの記事にするほうが時間がかかる。 Backlogはとっても便利だけど、不便なところもあって、そこはアイディアで解決できる。 その他backlog関連で作ったもの

ksnctf #12 Hypertext Preprocessor

  • POSTS
問題 ページを開いただけではよくわからない。 解き方 とりあえずグーグル先生に出てきた数字を聞いてみる。 すると徳丸先生の脆弱性情報が出てきた。 なるほど。数字の先頭の2012:1823はCVE(脆弱性番号)で、 phpの脆弱性らしい。 試しに、URLのクエリ文字列に「?-s」をつけるとソースコードが出てきた。 [http://ctfq.sweetduet.info:10080/~q12/?-s] ソースコードを見ると丁寧に「// Flag is in this directory.」と書かれているので、 次はOSインジェクションを試してみる。 「-d」をつけると任意のPHPコードが実行できるようなので、 参考サイトみながらちょろっとコードを書いて実行してみたらフラグをゲットできた。 # bash echo "<?php system('ls -al'); exit(); ?>" | POST "http://ctfq.sweetduet.info:10080/~q12/?-d+allow_url_include%3d1+-d+auto_prepend_file%3dphp://input" その他 初めはBurpを使ってクエリを書き換えていたが、bashから実行する方法がネットに載っていたので最終的にbashで答えを見つけた。 burpの使い方は慣れていないので練習が必要。 PHPの知識がなくても簡単にOSインジェクションができてしまったが、 PHPの勉強もしたい。 参考 https://blog.tokumaru.org/2012/05/php-cgi-remote-scripting-cve-2012-1823.htmlhttps://blog.tokumaru.org/2013/11/apache-magica-attack.html[https://pentesterlab.com/exercises/cve-2012-1823/course] [asin:B00E5TJ120:detail]