My online notes – Section 0003

Note 1: Check if current user is administrator

WindowsPrincipal principal = new WindowsPrincipal(WindowsIdentity.GetCurrent());
Console.WriteLine("Programm wird unter dem Usercontext ausgeführt: {0}", principal.Identity.Name);
Console.WriteLine("Adminrechte vorhanden: {0}", principal.IsInRole(WindowsBuiltInRole.Administrator) ? "Ja" : "Nein");

Note 2: ContextMenuStrip at selected row open and Index in DataTable localize.

private void dgv_MouseUp(object sender, MouseEventArgs e)
{
  DataGridView.HitTestInfo hitTest = ((DataGridView)sender).HitTest(e.X, e.Y);

  if (hitTest .Type == DataGridViewHitTestType.Cell)
  {
     dgv.CurrentCell = dgv.Rows[hTest.RowIndex].Cells[hTest.ColumnIndex];
  }
}

Continue reading My online notes – Section 0003

My online notes – Section 0001

Note 1:

MongoDB Applied Design Patterns
https://www.dropbox.com/s/5nksr6e8z09mu83/Oreilly.MongoDB.Applied.Design.Patterns.Mar.2013.epub?dl=0

Peopleware
https://www.dropbox.com/s/4v3j51mkt13yusc/Peopleware.epub?dl=0

Note 2:

1. List all properties and their values

static void Main(string[] args)
{
	string fileName = Path.Combine(Directory.GetCurrentDirectory(), "All Polished.mp4");
	ShellObject shellObject= ShellObject.FromParsingName(fileName);
	PropertyInfo[] propertyInfos = shellObject.Properties.System.GetType().GetProperties();
	foreach (var propertyInfo in propertyInfos)
	{
		object value = propertyInfo.GetValue(shellObject.Properties.System, null);

		if (value is ShellProperty<int?>)
		{
			var nullableIntValue = (value as ShellProperty<int?>).Value;
			Console.WriteLine($"{propertyInfo.Name} - {nullableIntValue}");
		}
		else if (value is ShellProperty<ulong?>)
		{
			var nullableLongValue =
				(value as ShellProperty<ulong?>).Value;
			Console.WriteLine($"{propertyInfo.Name} - {nullableLongValue}");
		}
		else if (value is ShellProperty<string>)
		{
			var stringValue =
				(value as ShellProperty<string>).Value;
			Console.WriteLine($"{propertyInfo.Name} - {stringValue}");
		}
		else if (value is ShellProperty<object>)
		{
			var objectValue =
				(value as ShellProperty<object>).Value;
			Console.WriteLine($"{propertyInfo.Name} - {objectValue}");
		}
		else
		{
			Console.WriteLine($"{propertyInfo.Name} - Dummy value");
		}
	}
	Console.ReadLine();
}

FluentValidation

https://github.com/JeremySkinner/FluentValidation

NodaTime

http://nodatime.org/

Quartz.net

http://www.quartz-scheduler.net/

Continue reading My online notes – Section 0001

Schlangengrube – Hố rắn

v1.0 Untertitel: WDR mediagroup GmbH im Auftrag des WDR
Tatort-Titelmusik
Frank Thiel Prof. Karl-Friedrich Boerne Nadeshda Krusenstern
Nachdem Sie Zeuge werden durften, wie es mir gelang, jegliche Fremdeinwirkung auszuschließen, und feststeht, dass die junge Frau ihren viel zu frühen Tod durch Ertrinken selbst herbeigeführt hat, möchte ich zum kulinarischen Teil der heutigen Sendung übergehen.
*jeglich: bất kỳ, tiếng Anh: any
*ausschließen: loại trừ
*feststehen: chắc chắn
*herbeiführen: gây ra
*kulinarisch: ẩm thực
*übergehen: đi đến
Continue reading Schlangengrube – Hố rắn

Reverse .Net Software

Dot Net, a new trend, a new look, a new structure and a new … challenge. Completely different with what we have known, no machine code, no asm, there are only IL and VS.NET….

These articles were written in VIETNAMESE (NOT ENGLISH). Sorry for this inconvenience I wrote these articles long time ago for my team REA, all of members of this team are Vietnamese and at that time I don’t think that I will publish it to public. If you don’t know Vietnamese then take a look at this section http://hintdesk.com/category/computer-security/ . There are some articles about reversing .net there. They are all in English. Hope they will help you.

Regards.

Continue reading Reverse .Net Software

Create Patcher

Hiện nay patcher đã không còn là một thuật ngữ xa lạ với các Cracker cũng như các Reverser trên thế giới. Và ngay cả người dùng bình thường cũng đã nhiều lần nghe đến thuật ngữ này khi phải down các bản patch vá lỗi của Windows.
• Như vậy, patch có thể hiểu là các gói phần mềm nhỏ để sửa đổi, bổ sung một phần mềm lớn đã được phát hành. Thế mạnh của các bản patch chính là sử nhỏ gọn và tính tức thời. Lấy Windows làm ví dụ, khi Microsoft phát hiện ra một lỗi bảo mật của Windows, họ sẽ tung ra các bản vá lỗi. Thực chất các bản vá lỗi này chính là các bản patch. Sau khi người dùng cuối down các bản patch này về, các bản patch sẽ tự động sửa chữa các tập tin, các config gây nên lỗi bảo mật đó.
• Tuy nhiên, cùng với sự phát triển nhanh chóng của IT thì “nghĩa” của từ patch, cũng như mục đích của nó đã dần thay đổi, nhất là trong lĩnh vực Reverse. Trong lĩnh vực này, patch đồng nghĩa với việc thay đổi thuộc tính của một chương trình theo ý muốn của một Cracker. Và đặc biệt patch được sử dụng rất nhiều trong việc bẻ khóa phần mềm (Lưu ý: Cracker = Criminal Hacker có nghĩa không chỉ là những người bẻ khóa phần mềm).

Continue reading Create Patcher

Introduction to Reverse Engineering

Reverse Engineering is a technique which man use to find and fix bug and improve the function of a programm. Learning this technique will help us to understand more and more about the operating system.
These are my tuts but they were written in Vietnamese.

  • Bài 1 : Hướng dẫn sử dụng OllyDebug I. Download
  • Bài 2 : Hướng dẫn sử dụng OllyDebug II. Download
  • Bài 3 : Thực tập với CrackMe . Download

Nowaday there is a popular series of tut for newbie which written by Lena151. According to me newbie should begin with this series. I’m sure that when you understand all of tuts in this series, your technique must be at least as same as admin REA’s. The tuts are in format of video. Very easy to understand.

Thank you ilit, P.E Onimusha for your work in translating these tut in Vietnamese.

Continue reading Introduction to Reverse Engineering