セキュリティ

evalを使わずに任意のJavaScriptコードが実行できちゃう小ネタ

良いか悪いかで言ったら、明らかに良くないんだろうけど、できてしまうんですねこれ。 よくない.js var script = document.createElement( 'script' ); script.type = 'text/javascript'; script.innerHTML = "for(var i=0; i< 10; i++){console.log(i);}"; document.querySelector( 'body' ).appendChild(script); セキュリティは詳しくないからよく知らないんだけど、WebSocketとか使ってるアプリでエスケープが甘いと悪いことされそうな予感。 追記 CSPを使うと、ちゃんとブロッ...

【AWS】参照専用のIAMユーザを作成する手順

この手順は、AWSに関するトラブル発生時などに第3者に確認頂くために、一時的な参照専用のユーザを作成することを想定しています。 また、第3者による確認が完了した後は、一時ユーザを削除することによりセキュリティを確保できます。 この手順ではEC2に関する読み取り権限のみを付与しているため、請求書情報等に関する情報にアクセスできないようになっています。 安全のため確認作業完了後は、必ず削除手順を実施ください。 EC2に関する参照専用のユーザを作成する ※事前にAWSに...

jsでfullscreen表示時させるもwindow枠が消えない問題対応

IEのインターネットオプション -> セキュリティ -> レベルのカスタマイズ -> サイズや位置の制限なしにスクリプトでウィンドウを開くことを許可する -> 有効にする レジストリ ; サイズや位置の制限なしにスクリプトでウィンドウを開くことを許可する (信頼済みサイト) [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\2] -"2102"=dword:00000000 ;無効(デフォルト) +"2102"=dword:00000000 ;有効

AppleScriptでスクリーンセーバを呼び出す

AppleScriptでスクリーンセーバを呼び出すには、 下記のようにスクリプトエディタで書きます。 screensaver.scpt tell application "System Events" set ss to screen saver "Flurry" start ss end tell Automaterにサービスとして登録すれば、 キーボードショートカットに登録できるので簡単に呼び出せます。 また、システム環境設定のセキュリティとプライバシーにある 「スリープとスクリーンセーバの解除にパスワードを要求」を設定すれば 画面のロックもすることができる...

Co-EdoでCOEDOを。小粋なVAddyミートアップvol.4

IDCFクラウドのアドベントカレンダー、今年もスタートしました!コーディネートいただいたユーザー会の皆様ありがとうございます♪ つまり季節は12月!家の戸締まりも、Webサイトの戸締まりも気になる時期ですね。ということで昨日11/30(水)にコワーキングスペース「Co-Edo」で開催された「VAddyミートアップ vol.4」にお邪魔してきました。VAddy*はCI連携できるユニークなセキュリティテスト(脆弱性検査)サービスです。本エントリーでは、IT勉強会好きの非エンジニアの立場から本会...

window.openしてPOST

form要素のtarget属性にwindow名指定でいけるっぽい。 ただセキュリティ的にはどうなんだろう。 とりあえずメモ。 参考リンク http://d.hatena.ne.jp/ujiujise/20081218/p1

Lambdaの環境変数をKMSで暗号化して、Pythonで複合化する

今回のお題 IAMの暗号化キーを生成し、その暗号キーを用いてLambdaの環境変数を暗号化する。 暗号化したものをPythonで複合化して、表示してみる。 暗号化キーを作成する IAM > 暗号化キーを選択する。 リージョンを東京に変更する 画面上部のキーの作成を押下する エイリアスを入力し、KMSを選択する。 今回はテストなので「test/key」としました。 入力・選択を終えたら、画面下部の「次のステップ」押下 タグキーを入力 入力したら画面下部の「次のステップ」押下 キー管理者を...

EC2インスタンス上にインストールしたMySQLにSequelProで接続する。

メモです。 DBを同じ場所に置くのは本来はセキュリティ上好ましくないそうですが、某学校のカリキュラムです。 書いておきます。 攻略法 この画面を開いてください。 名前 なんでもいいです MySQL Elastic IPを入力 ユーザ名 root パスワード mysqlのパスワード データベース 空欄 ポート 空欄 SSHホスト 上のElastic IPに同じ SSHユーザ ec2-user SSH鍵 隠しファイルを解除して、秘密鍵を選ぶ SSHポート 空欄 こんな感じでいけます! 隠しファイルを選べるようにするには? 僕が実...

EC2でNATインスタンスを作成する

NAT GatewayよりNATインスタンスの方が安いのでステージング環境ではこちらを使います。 amzn-ami-vpc-natでAMIを検索 最新のAMIからNATインスタンスをpublic subnetに作成 NATインスタンスにElastic IPを設定 NATインスタンスの送信元/送信先の変更チェックを無効化 NATインスタンスのセキュリティグループを設定 private subnetのrouting tableの0.0.0.0/0にNATインスタンスを設定

【Androidアプリ開発者向け】Important reminder about Android targetSdkVersion requirement について調べてみた

Googleから送られてきたメール 2011年~2013年ごろにAndroidアプリをいくつか作っていて、2015年1月のアップデートを最後に放置していたのですが、先日(2018年8月2日)、Google Play Teamからこんなメールが送られてきました。 Hello Google Play Developer, This is a reminder that starting November 1, 2018, updates to apps and games on Google Play will be required to target Android Oreo (API level 26) or higher. After this date, the Play Console will prevent you...

【20分でデプロイ】AWS EC2にDjango+PostgreSQL+Nginx環境を構築してササッと公開

はじめに ササッと公開することが目的なので、SECRET_KEYなど一切そのままでデプロイしてます。 production環境では必ず環境変数の設定をしてgitignoreに追加するなどの対策をしてください。 あくまで環境構築→公開の流れの確認だと思ってください。 EC2上でDjango2 + Python3 + PostgreSQLが動作する環境を構築します。 APサーバはGunicornでWebサーバはNginxです。 前提として、ローカル開発環境で構築したDjangoによるWebアプリケーションがGitHubなどのホスティングサービスのリポ...

at coder beginner 013

A 高橋君はとても英語が苦手で、アルファベットもまだ覚えきれていません。 そこで、高橋君のために、入力として与えられたアルファベットが A から数えて何番目のアルファベットかを求めるプログラムを作成してください。 ただし、高橋君は 5 より大きい数を知らないので、与えられるアルファベットは A, B, C, D, E のいずれかです。また、A 自身は A から数えて 1 番目であるとします(0 番目ではありません)。 A-64で1になる。あとは(int)(X-'A')+1 B セキュリティ意識の高い...

徳丸本 安全なWEBアプリケーションの作り方 第2版の公式勉強会のメモ

はじめに  SIerでWEBアプリケーションの開発を行っているエンジニアです。(Windows Formsでデスクトップアプリも作成してます)  ここ数年、会社でスクラッチでWEBアプリを開発しました。(言語はC#、ASP.NETのWEBフォームを使用)  その際、先輩プログラマーがセキュリティ対策の実装をして下さったのですが、自分もセキュアPGの知識を習得したい!ということで、今年の6月に発売された「安全なWebアプリケーションの作り方 第2版」を購入・読んでいます。ただ個人で読破するには...

AWS WAFのマネージドルールを試す

初めに こんにちは。CYBIRDエンジニア Advent Calendar 13日目の@daisuke-senmyouです。12日目は@yurika_fukaiさんの【恐怖】サイバードの企画職の実態でした。『Planter』導入後、企画職のメンバーが「トピックブランチをマスターにマージましたー」とか「あーコンフリクトした。少々お待ち下さい。」とかいう会話をしいてるのを聞いて自分の専門外のことも積極的に取り組む姿にいたく感動しておりました。エンジニアも負けてられませんね! AWS WAFとこれまでの課題 AWSが提供するWA...

Railsにおけるパスワードの扱い方(BCrypt)

Rails開発においてbcryptを使用するため少し調べてみました。 筆者の環境はこんな感じです。 Ruby '2.4.1' Rails '5.1.4' bcrypt '3.1.11' BCryptとは bcrypt(ビークリプト)とはBlowfish暗号に基づいて作られたパスワードハッシュ関数。 bcryptはsaltと呼ばれる短いランダムな文字列を末尾に加えて暗号化するため、レインボーテーブル(ハッシュ値に対して総当たりで平文を得ようとするもの)に対して強いという特徴があります。 インストール方法 Gemfileに記述し、$ bundle installで...

Docker で ubuntu の lamp をつくる

Docker の イメージを作ってみたい Docker のイメージを使うのはいたって簡単だった。WordPress を使うまでを blog にまとめてみた。 Docker + WordPress 試してみた ちょっと欲が出て、Docker のオレのイメージを作りたくなった。tutum/wordpress はよくできているのだが、パーミッションがよくない。postfix も入っていない。 tutum/lamp をパクる パクっても訴えられたリ、涙の記者会見をする必要がないところがオープンソースのいいところ。 おおもとの tutum/lamp 今気が付いた...

RSA暗号の全体像

RSA暗号とは 公開鍵暗号と電子署名の基礎知識で解説したように、RSAというのは公開鍵暗号の具体的な仕様です。 RSAという名前は発明者の3人の名前の頭文字からつけられています。歴史的なところはRSA暗号に関するWikipediaのエントリを参照してください。 RSA暗号の仕様 RSA暗号の仕様を管理している人は誰? RSA暗号は1983年にアメリカで特許が取られていて、RSAセキュリティという会社(現在はEMCコーポレーションに買収されている)がその権利を持っていましたが2000年に特許が切れ...

AWSトレーニング(Developing on AWS)受講記録

AWSトレーニング(Developing on AWS)を受講しました。 受講するかどうかの判断の助けとなるように内容を記録しておきます。 参加者 講師(ソリューションアーキテクト):1名 受講者:8名 AWS歴は数ヶ月〜2年 Architecting on AWSも受講されていた方数人 受講概要 AWSでのアプリ開発のための知識習得を3日間で行いました。 1日目 AWSとは:グローバルインフラやセキュリティモデルなどのAWSの基本 IAM:AWSの基本であるIAMの説明 S3/DynamoDB:アプリのデータ保管先としてのS3とDyanamo...

みんな大好きiptablesの使い方

CentOS6を基準に記載しております。 iptablesの使い方で、よく解説されているコマンドの例は引数が -A になっている記事をよく見かけます。 しかし! このままではよくありません! みんなでiptables大好きっ子になりましょう! というわけで下記のコマンドを例にiptablesに追加します 下記はmuninやnagiosからデータを受け取った時のiptablesの設定例です。 sudo iptables -I RH-Firewall-1-INPUT 6 -m state --state NEW -p tcp --dport 4949 -j ACCEPT -s 192.168.0.2 sudo iptable...

〜Cross2014 機械学習〜

機械学習 (前半) 【導入:機械学習を用いているもの】 ①レコメンド ・人 →似たアイテムを見た人が見たアイテム ・アイテム →似た人の集団が見たアイテム ②クラス分類 ・正解をもつデータを大量に渡すと、未知数yに対してのxを求める →迷惑メールを判断する際に使われたりしている ③異常検知 ・大量のデータと異なる性質を持ったものを検出 →セキュリティシステム 【Q&A】 Q1.機械学習は人手でも代替できるか? →YES ただし、データ数や種類にもよるが。 Q2.レコメンドには人手(ア...